ToolArc

ToolArc — AIと開発のTips・比較

※記事により広告・アフィリエイトリンクを含む場合があります。

Series:Model Context Protocol(MCP)シリーズ

MCPの権限管理|渡す範囲の最小化と追加後の見直し

MCPをつないだあと、トークンやフォルダ権限をどこまで渡せばよいか迷う人へ、接続前に見る点、必要最小限の渡し方、追加後の見直し順を整理します。トークンや接続文字列は設定に直書きせず、読み取りと書き込み、渡すフォルダとトークンのスコープを区別し、つながっているかと、渡した範囲を分けて見直します。

  • MCP
  • 権限
  • セキュリティ
  • 最小権限
  • トークン
  • 1

MCPをひとつつないでみた。動くところまでは確認できた。そのあと設定画面を開き直したとき、ふと手が止まる人は多いはずです。トークンはどこまで渡していいのか。フォルダは丸ごと渡してしまってよいのか。サーバーを増やすたびに、同じ迷いが繰り返されます。

この記事では、つなぐ前に何を確認するか、権限をどこまで絞って渡すか、追加したあとに何を見直すかを順番に整理します。すでにいくつか接続している場合は、いま渡している範囲を見直す材料としても使えます。

つなぐ操作そのものの手順や、各アプリの承認画面の見方、接続先ごとの細かい許可設定は、この記事では扱いません。必要な箇所で該当する記事へ案内します。

今日の結論

  • つなぐ前に、配布元・できること・渡すトークンやパスの範囲を確認し、説明の薄い接続先は急がない
  • 権限は読み取りから試し、書き込みやホーム全体のパス、フル権限のトークンは必要になってから広げる
  • トークンや接続文字列は設定に直書きしない。作業フォルダの範囲を伝える仕組みも、OSやプロセスの権限そのものの代わりにはならない
  • 追加したあとは、登録されているか・意図した範囲だけか・常時許可が読み取りを超えていないかを分けて見直す
つなぐ前に確認し、読み取りから試し、追加後に登録・範囲・常時許可を分けて見直す3段階の概念図

つなぐ前に配布元・できること・渡す範囲を確認する

接続先を決める前に、次の3点を見ておくと判断がぶれにくくなります。

確認項目見るポイント
配布元公式が配布しているか、自分や社内で管理しているリポジトリか
できること読み取りだけか、書き込みや削除、外部への送信を含むか
渡す範囲トークン・パス・キーをどこまでの範囲で渡すことになるか

配布元や説明が追えない接続先、何をするツールなのかが薄くしか書かれていない接続先は、急いでつながず様子を見て構いません。権限はサーバーという接続先の単位で渡すもの、という前提だけ先に押さえておくと、あとの判断が早くなります。MCP自体の仕組みが気になったときは、役割の整理を別記事MCPの仕組みと構成要素にまとめています。

MCPの公式セキュリティ文書は、サーバーを実装・運用する側に向けて書かれています。利用者としては、その内容を「配布元が確認できない接続は実行しない」「ホーム全体のパスやフル権限のトークンを最初から渡さない」という2点に読み替えれば十分です。

サーバーをどれにするか選ぶ段階であれば、書き込みやフル権限が必要な接続は後回しにするという基準も使えます(詳細: MCPサーバーの選び方)。すでに入れると決めている場合は、次の権限の絞り方に進んでください。

権限は必要最小限から試し、読み取りと書き込みを分ける

実際に接続するときは、次の4つの軸で「まず狭い側」を選びます。

まず選ぶ側広げる場面
操作範囲読み取り書き込み・削除・送信が必要になってから
渡すフォルダ作業に使うフォルダのみホーム全体は基本的に渡さない
トークン必要スコープに絞ったトークンフル権限のトークンは避ける
承認の頻度都度確認常時許可は動きを確認してから

読み取りだけで試し、削除や送信が必要になった時点で書き込みへ広げる方向が扱いやすいはずです。あとから絞るより、先に狭くしておく方が手間が少ない、という向きだけ覚えておけば十分です。

作業フォルダの範囲をサーバーへ伝える仕組み(Clientがサーバーへ伝える作業フォルダの範囲を示す仕組み)もあります。これはあくまで情報の伝達。OSやプロセスそのものの権限を制限する仕組みではありません。この仕組み自体、仕様の上では扱いが見直されつつあります。フォルダの決め方まで踏み込みたいときはMCPのファイルシステム接続を参照してください。

公式が案内するスコープの絞り方は実装者向けに書かれていますが、利用者としては「最初から全部の権限を求める接続は後回しにする」と読み替えれば足ります。

トークンや接続文字列は直書きせず、渡す範囲を絞る

設定ファイルやチャットのやり取り、Gitへのコミット、スクリーンショットに、トークンや接続文字列をそのまま書き込まないようにします。この記事で例を示すときも、実際の値ではなくプレースホルダーに置き換えます(例: YOUR_TOKENC:\path\to\test-folder)。

直書きの代わりに、環境変数からの参照や入力変数、ヘッダーでの指定という形が公式に案内されています。製品ごとの具体的な書き方で止まったときは、MCPの設定ファイルの記法を確認してください。参照に置き換えること自体は暗号化ではない、という点も押さえておく必要があります。

渡すフォルダは、ホームディレクトリやDesktop・Downloads全体、本番リポジトリのルート、鍵の置き場を避け、作業に使うフォルダだけに絞ります。フォルダの決め方はMCPのファイルシステム接続で扱っています。

トークンも同じ考え方です。何でもできる個人アクセストークンを先に渡さず、必要なスコープに絞ったトークンを使います。GitHubのトークン設計はGitHubサーバーの接続で扱っています。

接続方法によって認証の要否も変わります。リモート接続では認証が求められることがあり、ローカルで起動する場合もトークンの置き方は別に検討が必要です。どちらの方式も「常に安全」というわけではありません。運び方そのもので迷ったときはstdioとリモート接続の違いを確認してください。

第三者の検証サイトへ設定やトークンをそのまま貼り付ける手順は、この記事では扱いません。

追加後は、登録・範囲・常時許可を分けて見直す

サーバーを追加したあとは、次の3段で見直します。

  1. 登録: 使っているアプリの一覧や設定に、意図した接続先が登録されているかを確認します。保存しただけでは、範囲の確認にはなりません。
  2. 範囲: 承認の記録や実行ログで、実際に使われたツール名と対象(パス、リポジトリ、データベース、検索範囲)が意図どおりかを確認します。会話の中の「できました」という表示だけでは、判定の材料になりません。
  3. 常時許可: 一度承認したあと毎回確認せずに通す設定が、読み取りを超えて書き込みやホーム全体まで含んでいないかを見ます。設定画面の名称はアプリごとに異なるため、実際の操作は使っているアプリの記事で確認してください。

初回の接続や動作確認そのものでつまずいている場合は、MCPの初回セットアップを先に見てください。

この3段は、つながっているか(登録)・対象が意図どおりか(範囲)・毎回確認せず通す設定が読み取りを超えていないか(常時許可)を分けて確認するための、判断の材料です。

すでにホーム全体やフル権限を渡しているときは、範囲を見てから狭める

上の3段(登録・範囲・常時許可)は、これから追加する接続だけでなく、いま設定済みの接続にもそのまま当てはめられます。すでに動いている接続ほど、渡しているパスやトークン、常時許可の範囲を確認する機会が後回しになりがちです。

読み取りだけで用が足りているなら、書き込みの権限やホーム全体のパスはあとから外す方向で検討します。ただし、今すぐすべてを一度に見直す必要はありません。気づいたところから範囲を狭めていけば十分です。

画面上での外し方や、外したあとの付け直し手順は、この記事では扱いません。実際の操作が必要になったときに、使っているアプリの記事を確認してください(Cursor: Cursorでの接続、Claude Desktop: Claude Desktopでの接続、Claude Code: Claude Codeでの接続、VS Code: VS Codeでの接続)。

接続先ごとの細かい許可設定(GitHubのスコープや、フォルダに対するツールの一覧など)が必要になったときは、それぞれの記事で確認してください。全体の読む順に戻りたいときは、MCPガイドの入口から確認できます。


本記事の内容は執筆時点(2026-09-20)の情報に基づきます。公式ドキュメントを参照していますが、掲載した内容そのものの実機動作は確認していません。各アプリの承認画面やスコープの名称、作業フォルダの範囲を伝える仕組みの扱いは、製品やバージョンによって変わる可能性があります。本記事の内容に従っても、侵入されないこと、監査に合格すること、OSの権限が完全に制限されることを保証するものではありません。重要な判断は、公式ドキュメントと各サービスの利用規約で確認してください。