View a markdown version of this page

ツールの整理 - AWS 規範ガイダンス

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

ツールの整理

適切なツールを発見し、LLM がそれらを効果的に使用できることを確認することは、効果的なツール開発の最も重要な部分の 1 つです。MCP サーバーの開発を開始するには、以下を決定する戦略が必要です。

  • 1 つの MCP サーバーに入るツールの数

  • 同じ MCP サーバーに配置するべきではないツール

  • ツールに名前を付けて検索可能にし、名前の衝突を防ぐ方法 (同じ名前の異なるツール)

  • ツールと MCP サーバーをドキュメント化して LLM で使いやすくする方法

名前空間組織は、ツール名の衝突を防ぎ、関連機能をグループ化し、LLMs。このパターンは、非構造化蓄積ではなく、整理されたストレージシステムと同様の構造化分類を確立します。ツールの命名には domain-noun-verb パターンをお勧めします。例えば、、github_issue_creategithub_issue_list、、github_issue_updategithub_pullrequest_creategithub_pullrequest_list、 などですgithub_pullrequest_merge。このパターンの利点は、アルファベット順のソート動作を調べる際に明らかです。ツールがアルファベット順にリストされている場合、問題関連のすべてのオペレーションはクラスター化され (createlistupdate)、プルリクエストオペレーションが続きます (createlist、)merge。名詞 (リソースタイプ) は組織の境界として機能します。この構造により、関連する機能が自然にグループ化されるため、LLM ツールのスキャンとヒューマンドキュメントのナビゲーションの両方が容易になります。

MCP サーバーはドメインレベルで制限する必要がありますが、提供する機能の職務の分離に基づいて分割できます。たとえば、データベースへの書き込みオペレーションと読み取りオペレーション用に個別の MCP サーバーがあるとします。この分離を適用するには、ユーザーのインテントとアクセス許可に基づいてアクセスできる MCP サーバーを制限するガードレールをエージェントレベルで実装することをお勧めします。これは、次の組み合わせによって実現できます。

  • 条件付きサーバーのロード – エージェントがユーザー入力で読み取りオペレーションを検出した場合にのみ、読み取り専用 MCP サーバーをロードします。

  • アクセス許可ベースのフィルタリング – ユーザー認可を使用して、適切な MCP サーバーのみへのアクセスを許可します。

最後に、MCP サーバーによって提供されるツールの数の上限を作成します。エージェントが MCP サーバーをどのように使用するかについて仮定しないでください。使用可能なすべてのツールをナイーブに一覧表示し、すべてを LLM に提供する場合があります。1 つのサーバーに 50 を超えるツールがある場合は、複数のサーバーに分割することを検討する必要があります。

MPC ツール組織のベストプラクティス

  • ツールに domain-noun-verb 命名基準を使用する – MCP サーバーとエージェントの両方で名前の衝突を防ぐための戦略を実装します。

  • 上限を設定する – 1 つの MCP サーバー内のツールの数を制限します。

  • MCP サーバーの分割 – 職務の分離を使用して MCP サーバーを論理グループに分割します。