コンテンツにスキップ

MCP サーバーのルール (MCP Server Rules)

MCP サーバーのルールを使用すると、AI エージェントが特定の MCP サーバーのツールを使用する際に、カスタムの指示を提供できます。エージェントがそのサーバーのツールを使用するたびに、これらのルールがルールセットとして自動的に適用され、一貫性のある適切な動作を担保できます。

ルールとは何か (What Are Rules?)

ルールは、AI エージェントが特定の MCP サーバーとどのように対話すべきかを誘導するテキスト指示です。これらは MCP サーバー設定に追加され、以下の場合に自動的に適用されます:

  • そのサーバーを指定して MCPTask ノードを使用する場合
  • そのサーバーが構成された Agent ノードを使用する場合

ルールを使用する理由 (Why Use Rules?)

ルールには以下のメリットがあります:

  • エージェントの行動誘導: サーバーのツールの使い方に関する具体的な指示を提供できる
  • 一貫性の確保: エージェントが希望する対話パターンに常に従うようにする
  • エッジケースの処理: エラーや特殊な状況にどう対処すべきかをエージェントに指示できる
  • 利用の最適化: サーバーの機能を最も効果的に引き出すようにエージェントを誘導できる

MCP サーバーへのルールの追加方法

サーバー新規作成時

新しい MCP サーバーを作成する際、Rules テキストエリアにルールを追加できます:

  1. Settings → MCP Servers に移動します
  2. + New MCP Server をクリックします
  3. サーバー設定(名前、接続タイプなど)を入力します
  4. Rules テキストエリアにカスタムルールを入力します
  5. Create Server をクリックします

サーバー編集時

  1. Settings → MCP Servers に移動します
  2. 変更したいサーバーの Edit ボタンをクリックします
  3. Rules テキストエリアのテキストを編集します
  4. 変更を保存します

ルールの記述例 (Example Rules)

Web 取得サーバー向け

Always validate URLs before fetching. Check that URLs use HTTPS when possible. If a fetch fails, return a clear error message explaining what went wrong.
(取得前に必ず URL を検証すること。可能な限り URL が HTTPS であるか確認すること。取得に失敗した場合は、何が問題だったかを明確に説明するエラーメッセージを返すこと。)

ファイルシステムサーバー向け

Always check if a file exists before attempting to read it. Use absolute paths when possible. Never delete files without explicit user confirmation.
(ファイルを読み取ろうとする前に、必ずファイルが存在するか確認すること。可能な限り絶対パスを使用すること。ユーザーの明示的な確認なしにファイルを削除しないこと。)

検索サーバー向け

Always verify search results are relevant before returning them. If no relevant results are found, suggest alternative search terms. Format results in a clear, readable structure.
(検索結果を返す前に、関連性があるかを必ず検証すること。関連する結果が見つからない場合は、代替の検索語を提案すること。結果は明確で読みやすい構造にフォーマットすること。)

データベースサーバー向け

Always validate SQL queries before executing them. Never execute DROP or DELETE operations without explicit confirmation. Return query results in a structured format.
(SQL クエリを実行する前に必ず検証すること。明示的な確認なしに DROP や DELETE 操作を実行しないこと。クエリ結果は構造化された形式で返すこと。)

ルールの動作原理

  1. 保存: ルールは MCP サーバー設定の一部として保存されます
  2. 適用: エージェントがそのサーバーのツールを使用する際、ルールがルールセットとして自動的に挿入されます
  3. スコープ: ルールはその特定の MCP サーバーを使用している間にのみ適用されます
  4. 形式: ルールは単一の文字列です — ピリオドや改行で区切って複数の指示を含めることができます

ベストプラクティス (Best Practices)

具体的に記述する

✅ 良い例: "Always validate URLs before fetching. Check for HTTPS and return clear error messages."(取得前に必ず URL を検証すること。HTTPS であるか確認し、明確なエラーメッセージを返すこと。)

❌ 曖昧な例: "Be careful with URLs."(URL に注意すること。)

行動に焦点を当てる

✅ 良い例: "Return errors in JSON format with 'error' and 'message' fields."('error' および 'message' フィールドを持つ JSON 形式でエラーを返すこと。)

❌ 一般的すぎる例: "Handle errors well."(エラーを適切に処理すること。)

簡潔さを保つ

✅ 良い例: "Validate inputs before processing. Return structured JSON responses."(処理前に入力を検証すること。構造化された JSON レスポンスを返すこと。)

❌ 長すぎる例: あらゆる想定シナリオを長文の段落で細かく説明しすぎること。

ルールをテストする

ルールを追加した後は、期待通りに機能するか MCP サーバーでテストしてください:

  1. そのサーバーを使用する MCPTask ノードを作成します
  2. テストプロンプトを実行します
  3. エージェントが指定したルールに従っているか確認します

異なるコンテキストにおけるルール

MCPTask ノード

MCPTask ノードを使用する場合、選択された MCP サーバーのルールが、そのタスクを処理するエージェントに自動的に適用されます。

Agent ノード

MCP サーバーが構成された Agent ノードを使用する場合、有効になっているすべての MCP サーバーのルールが集約され、エージェントに適用されます。

トラブルシューティング (Troubleshooting)

ルールが適用されない場合

  • Rules テキストエリアにテキストが入力されているか(空でないか)確認してください
  • サーバーが有効化 (Enable) されているか確認してください
  • ワークフローで正しいサーバー名を使用しているか確認してください

エージェントがルールに従わない場合

  • ルールをより具体的で実行可能な表現に修正してください
  • まずはよりシンプルなルールでテストしてください
  • ルールがサーバーの機能や能力に見合っているか確認してください

次のステップ