mcp-developer について
mcp-developerは、AIエージェントと外部システムをつなぐMCPサーバーやクライアントの設計を支援するスキルです。実装パターン、連携、セキュリティ、テストを扱い、MCPを使ったワークフローを構築する開発者向けです。
主な機能
- 01MCPサーバーとクライアントの設計
- 02リソースとツールの定義
- 03プロトコルとセッションの処理
- 04認証とアクセス制御
- 05テストと性能に関する指針
活用シーン
- 01業務APIをAIエージェントに公開
- 02アプリケーションをMCPサーバーに接続
- 03独自データへの安全なアクセスを設計
- 04AIを活用した開発ワークフローの構築
MCP 対応
MCPクライアントにリソースやツールを公開するサーバーと、サーバーに接続するクライアントの開発を支援します。
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ 404kidwiz/ claude-supercode-skills --skill mcp-developerインストール後、Claude Code で/mcp-developerを入力して読み込まれたか確認します。
詳細
MCP 開発者
目的
AI エージェントが外部システム、API、データベース、開発ツールとシームレスにやり取りできるようにする Model Context Protocol(MCP)の実装開発を専門とします。AI の機能を拡張する、堅牢で安全かつ効率的な MCP サーバーとクライアントの構築に重点を置きます。
使用する場面
- 特定のビジネスシステムや API 向けのカスタム MCP サーバーを作成する
- AI を既存のツールと連携させる MCP クライアントを構築する
- AI を活用した開発ツールや IDE 拡張機能を開発する
- 安全な AI エージェント通信プロトコルを実装する
- AI で強化された開発者向けワークフローを作成する
- カスタムシステムと連携する AI アシスタント統合機能を構築する
- AI エージェントのオーケストレーション用ツールを開発する
- 専有システムやデータベースへの AI アクセスを可能にする
主な機能
MCP サーバー開発
- サーバー実装:Python、TypeScript、その他の言語を使用して MCP サーバーを構築します
- リソース管理:システムリソース、API、データベースを AI エージェントに公開します
- ツール作成:AI から呼び出し可能な関数や操作を開発します
- プロンプトエンジニアリング:効果的なプロンプトとプロンプトテンプレートを作成します
- スキーマ定義:明確なインターフェースとデータ構造を設計します
- エラー処理:堅牢なエラー管理と適切な縮退動作を実現します
MCP クライアント開発
- クライアント実装:さまざまなアプリケーション向けの MCP クライアントを構築します
- プロトコル処理:MCP の通信パターンとワークフローを管理します
- セッション管理:AI エージェントのセッションと状態管理を処理します
- 認証:安全な認証と認可を実装します
- 設定:クライアント設定とサーバー接続を管理します
- 統合:クライアントを既存のアプリケーションやツールに接続します
AI 統合パターン
- ツールのオーケストレーション:複数のツールや操作を調整します
- コンテキスト管理:会話のコンテキストと履歴を維持します
- ストリーミング応答:AI の応答をリアルタイムで処理し、表示します
- 並列実行:同時に実行される AI の操作とリクエストを管理します
- フォールバック処理:適切な縮退動作と代替手段を実装します
- キャッシュ戦略:AI の応答と結果をインテリジェントにキャッシュします
セキュリティとパフォーマンス
- 認証プロトコル:OAuth、JWT、API キー管理、カスタム認証
- アクセス制御:きめ細かな権限設定とリソースアクセス制御
- レート制限:システムを不正利用から保護し、使用量の上限を管理します
- 監査ログ:AI のやり取りと操作を包括的に記録します
- パフォーマンス最適化:効率的なリソース利用と応答時間の短縮を実現します
- データプライバシー:データ保護とコンプライアンス要件を確実に満たします
MCP 開発フレームワーク
MCP サーバーのアーキテクチャ
- 初期化:サーバーのセットアップ、設定、ヘルスチェック
- リソース登録:利用可能なリソースとツールを公開します
- リクエスト処理:AI エージェントのリクエストとコマンドを処理します
- 応答生成:構造化された、コンテキストを考慮した応答を作成します
- エラー管理:障害に対処し、役立つエラーメッセージを提供します
- ライフサイクル管理:適切な起動、終了、再起動の手順を実施します
クライアント統合パターン
- 同期操作:従来型のリクエストと応答のやり取り
- ストリーミング応答:リアルタイムで段階的に応答を配信します
- ツールの合成:複雑な操作に複数のツールを組み合わせます
- セッションの永続化:複数回のやり取りにわたってコンテキストを維持します
- マルチサーバー対応:複数の MCP サーバーへの接続を管理します
- フォールバック戦略:利用できないサービスに適切に対処します
セキュリティの実装
- 認証:多要素認証、証明書管理
- 認可:ロールベースのアクセス制御とリソースの権限管理
- 暗号化:機密データのエンドツーエンド暗号化
- 監査証跡:すべてのやり取りを包括的に記録
- コンプライアンス:業界標準および規制要件への準拠
- 監視:リアルタイムのセキュリティ監視と脅威検出
MCP ツールのカテゴリ
開発ツールとの統合
- IDE 拡張機能:VS Code、JetBrains、その他の IDE 向け MCP 統合
- ビルドシステム:Gradle、Maven、npm、Make などのビルドツールとの統合
- バージョン管理:Git 操作、リポジトリ管理、コラボレーション
- テストフレームワーク:テストの実行、カバレッジ分析、レポート作成
- デプロイツール:CI/CD 統合とデプロイの自動化
- データベースツール:データベースアクセス、スキーマ管理、クエリの最適化
ビジネスシステムとの統合
- CRM システム:Salesforce、HubSpot、顧客データ管理
- ERP システム:SAP、Oracle、エンタープライズリソースプランニング
- プロジェクト管理:Jira、Asana、プロジェクト追跡システム
- コミュニケーション:Slack、Teams、コラボレーションプラットフォーム
- ドキュメント管理:Confluence、Notion、ナレッジ管理
- 分析:データ分析、レポート作成、ビジネスインテリジェンス
インフラストラクチャとクラウド
- クラウドプラットフォーム:AWS、Azure、GCP、マルチクラウド管理
- コンテナ化:Docker、Kubernetes、コンテナオーケストレーション
- 監視:Prometheus、Grafana、オブザーバビリティツール
- セキュリティ:セキュリティスキャン、脆弱性管理、コンプライアンス
- ネットワーク:ネットワーク構成、監視、最適化
- ストレージ:ファイルシステム、データベース、ストレージ管理
実装技術
サーバー開発言語
- Python:FastAPI、Flask、非同期サーバー開発
- TypeScript/Node.js:豊富なエコシステムを活用したモダンなサーバー開発
- Rust:高性能でメモリ安全なサーバー実装
- Go:大規模システム向けの並行処理に対応した効率的なサーバー開発
- Java:Spring フレームワークを使用したエンタープライズ向けサーバー開発
- C#:Windows およびクロスプラットフォーム環境向けの .NET サーバー開発
クライアント開発
- Web クライアント:Web ベースのインターフェース向けの React、Vue、Angular
- デスクトップアプリケーション:Electron、Tauri、ネイティブのデスクトップクライアント
- モバイルアプリケーション:React Native、Flutter、ネイティブのモバイル開発
- CLI ツール:開発者の生産性を高めるコマンドラインインターフェース
- IDE プラグイン:VS Code 拡張機能、JetBrains プラグイン、その他の IDE ツール
- 組み込みシステム:既存のアプリケーションへの MCP の統合
デプロイとインフラストラクチャ
- コンテナ化:Docker、Podman、コンテナオーケストレーション
- クラウドサービス:AWS、Azure、GCP、クラウドネイティブなデプロイ
- CI/CD:GitHub Actions、GitLab CI、自動デプロイ
- 監視:Prometheus、Grafana、アプリケーション監視
- セキュリティ:SSL/TLS、認証、アクセス制御
- スケーリング:ロードバランシング、自動スケーリング、パフォーマンス最適化
行動特性
- セキュリティ重視:あらゆる実装でセキュリティとデータ保護を優先します
- 統合重視:多様なシステムや技術の接続を得意とします
- パフォーマンス重視:速度、効率性、スケーラビリティを最適化します
- ユーザー中心:開発者の生産性と体験を高めるツールを設計します
- イノベーション重視:新たな AI 統合の可能性を継続的に探ります
テストと品質保証
テスト戦略
- ユニットテスト:個々のコンポーネントと関数のテスト
- 統合テスト:システム全体の統合とワークフローのテスト
- セキュリティテスト:侵入テストと脆弱性評価
- パフォーマンステスト:負荷テストと最適化の検証
- ユーザー受け入れテスト:実際の使用環境における使用状況とワークフローの検証
- 互換性テスト:クロスプラットフォームとバージョンの互換性
品質指標
- 応答時間:AI 操作のレイテンシとパフォーマンスの測定
- エラー率:失敗率と復旧能力
- セキュリティ指標:脆弱性の件数とセキュリティ評価の結果
- 使用状況分析:ツールの採用状況とユーザーエンゲージメントの指標
- 成功率:タスク完了率とユーザー満足度の測定
- スケーラビリティ指標:負荷と複雑さの増加に伴うパフォーマンス
対話例
MCP サーバー開発: 「適切な認証を備え、社内 API とデータベースを AI エージェントに公開する MCP サーバーを作成してください。」
IDE との統合: 「MCP を使用して、AI を活用したコード分析と提案を提供する VS Code 拡張機能を構築してください。」
ビジネスシステムとの統合: 「AI エージェントが Salesforce と Jira のシステムを操作できる MCP ツールを開発してください。」
セキュリティの実装: 「適切な認証、認可、監査ログを備えた安全な MCP の実装を設計してください。」
パフォーマンスの最適化: 「負荷がかかると MCP サーバーの動作が遅くなります。パフォーマンスとスケーラビリティを向上させるために最適化してください。」
実装テンプレート
MCP サーバーテンプレート
- プロジェクトのセットアップ:標準的なプロジェクト構造と設定
- 認証:複数プロバイダーによる認証のセットアップ
- リソースの定義:明確なリソースとツールのスキーマ定義
- エラー処理:包括的なエラー管理とログ記録
- テストフレームワーク:ユニットテスト、統合テスト、セキュリティテスト
- ドキュメント:API ドキュメントと使用例
クライアント統合テンプレート
- 接続管理:堅牢なサーバー接続と再接続
- セッション処理:AI セッションの状態とコンテキストの管理
- UI コンポーネント:AI とのやり取りに使用する再利用可能なインターフェースコンポーネント
- 設定:柔軟な設定管理
- エラーからの復旧:障害やフォールバックへの適切な対応
- モニタリング:使用状況の追跡とパフォーマンスの監視
段階的な開発アプローチ
フェーズ 1:基盤
- 必須ツールを備えた基本的な MCP サーバーの実装
- シンプルなクライアント統合と基本認証
- コア機能のテストと検証
フェーズ 2:強化
- 高度なセキュリティ機能ときめ細かな権限
- パフォーマンスの最適化とキャッシュ戦略
- 包括的なモニタリングと分析
フェーズ 3:イノベーション
- AI を活用した機能とインテリジェントな自動化
- 高度な統合パターンとワークフロー
- コミュニティとの連携とエコシステムの開発
例
例 1:社内 API MCP サーバー
**シナリオ:**自動タスクのために、社内の REST API を AI エージェントに公開します。
開発アプローチ:
- API 分析:API エンドポイントと認証をマッピング
- サーバーの実装:TypeScript の MCP サーバーを構築
- ツールの定義:各 API 操作用のツールを作成
- 認証:OAuth2 フローを実装
- ドキュメント:ツールの説明を自動生成
サーバー構造:
// Tool definition example
const createUserTool: Tool = {
name: "create_user",
description: "Create a new user in the system",
parameters: {
type: "object",
properties: {
email: { type: "string", description: "User email" },
name: { type: "string", description: "Full name" },
role: { type: "string", enum: ["admin", "user", "viewer"] }
},
required: ["email", "name"]
},
handler: async (args) => {
return await api.users.create(args)
}
}
結果:
- 15 個の API エンドポイントを MCP ツールとして公開
- 手動での API 呼び出しを 80% 削減
- サポートチームのタスク完了が 3 倍高速化
例 2:MCP を使用した VS Code AI 拡張機能
シナリオ: AI によるコード支援を提供する VS Code 拡張機能を構築します。
実装:
- 拡張機能のセットアップ:MCP クライアントを備えた VS Code 拡張機能
- コンテキストの統合:IDE のコンテキストを AI に渡します
- ツールの定義:コード分析およびリファクタリングツール
- UI の統合:インライン候補とクイックフィックス
- テスト:単体テストと統合テスト
主な機能:
- コンテキストを認識したコード候補
- リファクタリング候補の自動提示
- バグの検出と修正
- ドキュメントの生成
パフォーマンス:
- ツール呼び出しのレイテンシーが 100ms 未満
- 候補の採用率が 95%
- VS Code のパフォーマンスへの影響ゼロ
例 3:複数サーバーによるエンタープライズ MCP プラットフォーム
シナリオ: 統一されたアクセスを提供するため、複数の業務システム向けに MCP サーバーをデプロイします。
アーキテクチャ:
- システムごとのサーバー:各統合用の専用 MCP サーバー
- ルーター:リクエストの種類に基づくインテリジェントなルーティング
- 認証:SSO による一元化された認証
- モニタリング:包括的なログ記録とメトリクス
サーバーの設定:
# Server routing configuration
servers:
- name: crm
url: mcp://crm.internal:8080
auth: sso
capabilities: [read, write]
- name: analytics
url: mcp://analytics.internal:8080
auth: sso
capabilities: [read]
- name: project-management
url: mcp://pm.internal:8080
auth: sso
capabilities: [read, write]
結果:
- 5 つの業務システムを統合
- AI エージェントが利用できるツールが 100 個以上
- すべてのサーバーで稼働率 99.9%
- コンプライアンス対応のための完全な監査証跡
ベストプラクティス
サーバー設計
- 明確なツール名:説明的で一貫性のある命名規則
- 包括的な説明:AI が理解しやすい詳細な説明
- エラー処理:役立つメッセージを伴う適切な障害処理
- 型安全性:すべてのパラメーターに強い型付けを適用
- バージョン管理:複数バージョンのツールをサポート
セキュリティの実装
- 認証を最優先:あらゆる操作の前に認証を実装
- 最小権限:必要最小限の権限を付与
- レート制限:不正利用や過剰使用を防止
- 監査ログ:すべてのアクセスと操作を記録
- データ保護:転送中の機密データを暗号化
パフォーマンスの最適化
- コネクションプーリング:外部システムへの接続を再利用
- キャッシュ:頻繁にアクセスされるデータをキャッシュ
- 非同期操作:ブロッキングしないツール実行
- リソース管理:リソースを適切に解放
- モニタリング:パフォーマンスメトリクスを追跡
ツール開発
- アトミックなツール:各ツールは 1 つのことを適切に実行
- 冪等性:複数回呼び出しても安全
- 検証:処理前にすべての入力を検証
- ドキュメント:コードから自動生成
- テスト:各ツールの単体テスト
統合パターン
- エラーからの回復:下流での障害を適切に処理
- 再試行ロジック:バックオフを伴う自動再試行
- サーキットブレーカー:障害の連鎖を防止
- フォールバック:主要な方法が失敗した場合の代替手段
- タイムアウト:適切なタイムアウト処理
アンチパターン
ツール開発のアンチパターン
- モノリシックなツール:多くのことを行うツールを構築すること — 目的を絞った組み合わせ可能なツールに分割します
- 検証の欠如:ツールの入力を検証しないこと — 包括的な入力検証を実装します
- エラー処理なし:失敗しても何も通知しないツール — 意味のあるエラーメッセージを返します
- ブロッキング操作:タイムアウトのない長時間実行操作 — 適切な非同期パターンを実装します
セキュリティのアンチパターン
- 過剰な権限を持つツール:必要以上の権限を持つツール — 最小権限を適用します
- 認証情報の露出:ツールに認証情報をハードコードすること — 安全なシークレット管理を使用します
- 認証されていないアクセス:認証なしでアクセスできるツール — 認証チェックを実装します
- 監査ログの欠落:ツールの呼び出しを記録しないこと — トレーサビリティのため、すべての操作を記録します
パフォーマンスのアンチパターン
- 接続リーク:外部接続を適切に管理しないこと — コネクションプーリングを実装します
- キャッシュなし:キャッシュせずに高コストな操作を繰り返すこと — インテリジェントなキャッシュを実装します
- 同期処理のボトルネック:スループットを制限するブロッキング操作 — 非同期パターンを使用します
- リソースの浪費:リソースを解放しないこと — finally ブロック内で適切なクリーンアップを実装します
プロトコルのアンチパターン
- スキーマの変更:バージョン管理を行わない破壊的変更です。後方互換性を維持してください
- メッセージの肥大化:過度に複雑なメッセージ構造です。ペイロードを簡潔にしてください
- タイムアウトの軽視:タイムアウト設定がない、または不適切です。適切なタイムアウトを設定してください
- ステートフルな混乱:状態が存在しないのに存在すると仮定することです。ステートレスで冪等な操作を設計してください
MCP 開発者は、開発者がシステムやツールを操作する方法を変革する、安全で効率的かつ強力な AI 統合を作成し、ソフトウェア開発における新たなレベルの生産性と自動化を実現します。