メインコンテンツまでスキップ

MCPサーバー

MBC CQRS Serverlessフレームワーク用のMCP(Model Context Protocol)サーバーです。このパッケージにより、Claude Code、Cursorなどのツールからフレームワークと対話できます。

MCPとは?

Model Context Protocol(MCP)は、AIツールがアプリケーションやフレームワークと標準化された方法で対話するためのプロトコルです。リソース、ツール、プロンプトの3つの主要な概念を提供します。

機能

リソース

フレームワークのドキュメントとプロジェクト情報にアクセスできます。

リソースURI説明
mbc://docs/overview完全なフレームワークドキュメント
mbc://docs/llms-short簡潔なフレームワーク概要
mbc://docs/architectureCQRSアーキテクチャガイド
mbc://docs/errorsソリューション付きエラーカタログ
mbc://docs/faqよくある質問
mbc://docs/troubleshootingトラブルシューティングガイド
mbc://docs/securityセキュリティベストプラクティス
mbc://project/entitiesプロジェクトエンティティ一覧
mbc://project/modulesプロジェクトモジュール一覧
mbc://project/structureプロジェクトディレクトリ構造

ツール

コード生成とプロジェクト分析ツールを提供します。

ツール説明
mbc_generate_module完全なCQRSモジュールを生成
mbc_generate_controllerコントローラーを生成
mbc_generate_serviceサービスを生成
mbc_generate_entityエンティティを生成
mbc_generate_dtoDTOを生成
mbc_validate_cqrsCQRSパターン実装を検証
mbc_analyze_projectプロジェクト構造を分析
mbc_lookup_errorエラー解決策を検索
mbc_check_anti_patternsコードの一般的なアンチパターンをチェック
mbc_health_checkプロジェクトの健全性チェックを実行
mbc_explain_codeMBCコンテキストでコードを説明

プロンプト

ガイド付きアシスタンスを提供します。

プロンプト説明
cqrs_implementation_guideステップバイステップのCQRS実装
debug_command_errorコマンド関連エラーのデバッグ
migration_guideバージョン移行ガイダンス

インストール

npm install @mbc-cqrs-serverless/mcp-server

または npx で直接使用:

npx @mbc-cqrs-serverless/mcp-server

設定

Claude Code

以下の設定を追加してください ~/.claude/claude_desktop_config.json:

{
"mcpServers": {
"mbc-cqrs-serverless": {
"command": "npx",
"args": ["@mbc-cqrs-serverless/mcp-server"],
"env": {
"MBC_PROJECT_PATH": "/path/to/your/project"
}
}
}
}

Cursor

CursorのMCP設定に追加:

{
"mbc-cqrs-serverless": {
"command": "npx",
"args": ["@mbc-cqrs-serverless/mcp-server"],
"env": {
"MBC_PROJECT_PATH": "/path/to/your/project"
}
}
}

環境変数

変数説明デフォルト
MBC_PROJECT_PATHプロジェクトディレクトリへのパス現在の作業ディレクトリ

使用例

モジュール生成

Claude Codeに以下のように依頼できます:

"Generate a new Order module with async command handling"

プロジェクト分析

プロジェクト構造を分析します。

"Analyze my project structure"

デバッグ支援

エラーのデバッグを支援します。

"I'm getting a version mismatch error, help me debug"

コード分析ツール

バージョン情報

コード分析ツール(mbc_check_anti_patternsmbc_health_checkmbc_explain_code)はバージョン1.0.22で追加されました。

アンチパターン検出

バージョン情報

AP011〜AP015 は v1.2.x(publishSync の null チェック、非推奨API、TaskModule 重複)で追加されました。AP016〜AP020 は v1.2.5 で追加。AP021(publishAsync 後のイベント発行)は v1.2.6 で追加。AP022〜AP025(eval、シェルインジェクション、HTTPタイムアウト、機密情報ロギング)は v1.2.7 で追加されました。

mbc_check_anti_patterns ツールは一般的なコード問題を検出します。検出器が出力するのは 検出器AP番号(この表)で、/mbc-review スキルの skill-doc AP番号 とは別の番号体系です。検出器の出力には対応する skill-doc 番号が併記されます(例: AP005: Hardcoded Tenant (skill-doc: AP002))。両者で同じ番号を共有するのは AP016〜AP019 と AP021 のみです。

検出器番号名前重大度skill-doc 番号
AP001直接DynamoDB書き込み重大AP012
AP002バージョン不一致の無視AP005
AP003N+1クエリパターン
AP004フルテーブルスキャン
AP005ハードコードされたテナント重大AP002
AP006テナント検証の欠如重大AP002
AP007同期ハンドラーでのスロー
AP008ハードコードされたシークレット重大
AP009手動JWTパース重大
AP010重いモジュールインポート
AP011非推奨メソッドの使用(publish()AP010
AP012大文字 COMMON テナントキー(v1.1.0以前)重大
AP013publishSync の null 戻り値の未チェック(v1.2.0以降)AP001
AP014非推奨の genNewSequence(v1.2.0)AP010
AP015TaskModule.register() の重複登録(v1.2.4)
AP016リスロー前のエラーロギング欠落AP016
AP017部分更新時の属性マージ誤りAP017
AP018Swaggerドキュメントの欠落AP018
AP019リストクエリでのページネーション欠落AP019
AP020トレース用 getCommandSource の欠落AP011
AP021CommandService 内で publishAsync 直後にイベントをemitAP021
AP022eval() または Function() コンストラクタの使用重大
AP023文字列連結で構築されたシェルコマンド重大
AP024タイムアウト未設定のHTTPリクエスト
AP025process.env やリクエストオブジェクト全体のロギング

ヘルスチェック

mbc_health_checkツールはプロジェクト設定を検証します:

  • MBCフレームワークパッケージのインストール
  • NestJS依存関係
  • TypeScript設定
  • 環境ファイルのセットアップ
  • ソースディレクトリ構造
  • Serverless設定

コード説明

mbc_explain_codeツールはコードを分析して説明します:

  • NestJSモジュール構造とインポート
  • RESTコントローラーエンドポイント
  • サービスパターンと依存関係
  • エンティティ定義とDynamoDBキー
  • CQRSコマンド発行パターン
  • データ同期ハンドラーの動作

Claude Code Skills

バージョン情報

Claude Code Skillsはバージョン1.0.24で追加されました。

Claude Code Skillsは、MBC CQRS Serverless開発のためのガイド付きアシスタンスを提供します。Skillsは、開発者が一般的なタスクを行うための特化したプロンプトです。

利用可能なSkills

Skill説明
/mbc-generateボイラープレートコードを生成(モジュール、サービス、コントローラー、DTO、ハンドラー)
/mbc-reviewベストプラクティスとアンチパターン(21パターン)に基づくコードレビュー
/mbc-migrateバージョン移行と破壊的変更のガイド
/mbc-debug一般的な問題のデバッグとトラブルシューティング

Skillsのインストール

CLIを使用(推奨)

最も簡単なインストール方法はMBC CLIを使用することです:

# 個人skillsディレクトリにインストール(すべてのプロジェクトで利用可能)
mbc install-skills

# プロジェクトディレクトリにインストール(gitでチームと共有)
mbc install-skills --project

# 利用可能なskillsを一覧表示
mbc install-skills --list

# 既存のskillsを強制上書き
mbc install-skills --force

手動インストール

または、Claude Codeのskillsディレクトリに手動でコピーできます:

# 個人skillsにコピー(すべてのプロジェクトで利用可能)
cp -r node_modules/@mbc-cqrs-serverless/mcp-server/skills/* ~/.claude/skills/

# またはプロジェクトskillsにコピー(チームで共有)
cp -r node_modules/@mbc-cqrs-serverless/mcp-server/skills/* .claude/skills/

/mbc-generate Skill

MBC CQRS Serverlessのベストプラクティスに従ってボイラープレートコードを生成します。

コアテンプレート:

  • モジュール、コントローラー、サービス、DTO、DataSyncHandler

追加テンプレート:

  • カスタムイベント処理用のイベントハンドラー
  • 複雑な検索用のクエリハンドラー
  • Elasticsearch同期ハンドラー
  • GraphQLリゾルバー

使用例:

/mbc-generate
Create an Order module with RDS synchronization

/mbc-review Skill

MBC CQRS Serverlessのベストプラクティスに基づいてコードをレビューし、アンチパターンを特定します。

検出されるアンチパターン(21パターン):

これらは /mbc-review のレビューおよび人向けドキュメントで使用される skill-doc AP番号 です。mbc_check_anti_patterns ツールが出力する 検出器AP番号 とは別の番号体系です。検出器→skill-doc のマッピングは上記のアンチパターン検出表を参照してください。AP021 は v1.2.6 で追加されました。

コード説明重大度
AP001publishAsyncの代わりにpublishSyncを使用警告
AP002マルチテナント操作でtenantCodeが欠落エラー
AP003ハードコードされたバージョン番号エラー
AP004DataSyncHandlerの登録漏れエラー
AP005ConditionalCheckFailedExceptionを処理していない警告
AP006誤ったPK/SK形式の使用エラー
AP007サービスメソッドでinvokeContextが欠落エラー
AP008エンティティIDにgenerateIdを使用していない警告
AP009DTOバリデーションデコレーターが欠落警告
AP010非推奨メソッドの使用警告
AP011トレーシング用のgetCommandSourceが欠落警告
AP012DataServiceの代わりに直接DynamoDBアクセス警告
AP013DataSyncHandlerでtype宣言が欠落エラー
AP014DetailKey型を使用していない情報
AP015ハードコードされたテーブル名警告
AP016エラーログが欠落警告
AP017不正な属性マージエラー
AP018Swaggerドキュメントが欠落情報
AP019ページネーションを正しく処理していない警告
AP020モジュールの循環依存エラー
AP021CommandService 内で publishAsync 直後にイベントをemitエラー

使用例:

/mbc-review
Review the code in src/order/order.service.ts

/mbc-migrate Skill

MBC CQRS Serverlessフレームワークのバージョン移行をガイドします。

機能:

  • バージョン移行マトリックス(v1.0.16からv1.0.23)
  • 各バージョンの詳細な移行ガイド
  • 非推奨APIの移行手順
  • 移行チェックリスト(移行前、移行中、移行後)
  • バージョン互換性マトリックス

使用例:

/mbc-migrate
I need to upgrade from v1.0.20 to v1.0.23

/mbc-debug Skill

MBC CQRS Serverlessアプリケーションの問題のデバッグとトラブルシューティングを支援します。

機能:

  • エラーコードクイックルックアップ
  • 6つのデバッグワークフロー(コマンド、ConditionalCheckFailedException、DataSyncHandler、テナント、インポート、パフォーマンス)
  • CloudWatchログクエリ
  • ローカル開発デバッグ(LocalStack、Serverless Offline)
  • トラブルシューティング決定木

使用例:

/mbc-debug
I'm getting ConditionalCheckFailedException errors

関連パッケージ