Zenn Dev Kenimo49 Articles Mcp Permission Scope Minimization Design
MCPサーバーの権限を絞ったら、AIが触れる範囲が初めて見えた
- URL: https://zenn.dev/kenimo49/articles/mcp-permission-scope-minimization-design
- 日付: 2026-06-21
- Tier: Tier 3
- 要旨: MCP サーバーの権限スコープを絞ったら、AI が触れる範囲が初めて見えるようになった。freee(270 ツール)のすべてを全開放していた落とし穴から、read・write・deny を分離して許可リスト方式に変更。権限設計は AI への不信ではなく、自分の意図を言語化する作業。
詳細
freee MCP サーバーは会計・HR・請求書・勤怠を含む 270 ツール公開。確定申告に必要なのは 10 個程度なのに全部有効。問題は 2 つ:トークンコスト(17,500 トークン消費)とスコープクリープ。AI は指示なくても「この方が早い」と判断して、不要なツール(勘定科目マスタ・取引先一覧)を叩く。権限スコープ最小化は防御策ではなく観測手段。270 ツール→「これだけ」と選ぶとき、AI が何に触れるのかが初めて見える。設計基本は read・write・deny の 3 段階分離。照会は常時許可、登録は scoped-write(対象限定)、削除・設定変更は deny。許可リスト(明示的に許したもののみ通す)と拒否リスト(危ないもの塞ぐ)は相反。MCP はツール増加が常態なので、許可リスト方式が向く。シェル実行・ファイルアクセス・外部送信は隔離。セッションに複数 MCP つながると、クロスサーバーコンテキスト悪用で別ツールも叩かれる。削除・外部送信には人間の確認を必須化(実測:自動承認 84.2% vs 人間確認 5% 未満)。2026 年 3 月 MCP 仕様で OAuth 2.1・スコープ・段階的同意が導入。ただし個別サーバー対応状況は混在(4 割が未対応)。設定例で 270 → 12 ツール。read-only は照会系・write は作成・deny は削除・設定変更。