コンテンツにスキップ
Zenn Mcp Protocol Design Principles

MCPは接続数よりprotocol watchを先に固定する

  • URL: https://zenn.dev/tadkud/articles/mcp-protocol-design-principles
  • 日付: 2026-06-12
  • Tier: Tier 3
  • 要旨: MCP運用では「接続数」を進捗指標にすると設計判断がぶれる。先に固定すべきはroots/prompts/resources/tools/elicitationのどれを使うかという判断基準と、仕様変化の追い方(protocol watch)。samplingへの新規依存は避け、週次レビューで監視観点を統一することで運用が安定した実践報告。

詳細

2026-05-31に行った変更の背景:

  • 週次レビューで見えた差分を基に、AI-AGENT.mdAGENTS.mdruntime-capabilities.json・運用skillを更新
  • ADR ADR-2026-05-31-mcp-protocol-watch-and-design-principles.mdに判断を記録

AI-AGENT.mdに追加したguidance:

新規MCP設計・追加・評価では
roots / prompts / resources / tools / elicitation を優先し、
sampling 前提の新規依存は避ける

有効だった判断基準:

  • transport(stdio/HTTP)が違っても監視観点は共通化できる
  • 新規MCP追加前に「既存plugin/Browser/CLI/Docs MCPで代替できるか」を確認する習慣で接続増殖を抑制
  • Google Drive/Gmail/Calendar/Slackはpluginでcovered、一部のみpartialと整理済み

samplingを避ける理由: 便利そうでも新規依存の前提にすると運用が不安定になる(実経験に基づく)

protocol watchの効果: MCPを「増設タスク」ではなく「前提管理タスク」として扱えるようになり、週次レビューで見るべき差分が減少