MCPサーバーの セキュリティ チェックリスト 入れる 前に 確かめる こと 【Claude Code】
- 入れる前に、提供元と触れる範囲と送り先と更新を見ます。
- AnthropicはMCPサーバーを監査していません。
- sandboxは効かないので、ツールごとの権限で守ります。

MCPサーバーを入れる前に見るのは、提供元、アクセスできる範囲、データの送り先、更新のされ方の4つです。 そのうえでClaude Codeの側では、どの範囲(スコープ)に入れるか、承認の画面をどうするか、ツールごとにdenyやaskを決めます。
見る理由は、AnthropicがMCPサーバーを監査していないからです。公式の説明では、Anthropic Directoryに載せる前の審査はあるものの、MCPサーバーのセキュリティ監査や管理はしていません。初期設定では、Claude Codeを使う人は好きなMCPサーバーをつなげます。
内容は、2026年10月23日に公式のセキュリティ、MCP、権限の設定、sandbox、MCPの組織管理の説明と照らし合わせました。
入れる 前の チェックリスト
まず全体の表です。各項目の理由と見方は、次の章で説明します。
| 見ること | 確かめる中身 | 確かめる場所 |
|---|---|---|
| 見ること提供元 | 確かめる中身誰が | 確かめる場所サーバーの |
| 見ることアクセスの範囲 | 確かめる中身手元の | 確かめる場所サーバーの |
| 見ることデータの | 確かめる中身Claude Codeの | 確かめる場所設定に |
| 見ること更新 | 確かめる中身使える | 確かめる場所サーバーの/mcpで |
| 見ることスコープ | 確かめる中身自分だけか、 | 確かめる場所追加した--scopeの指定、~/.claude.と.mcp. |
| 見ること承認 | 確かめる中身初めて | 確かめる場所.mcp.の |
| 見ることツールごとの権限 | 確かめる中身読み取りは | 確かめる場所/permissions、permissionsのmcp__で |
| 見ること会社の | 確かめる中身会社が | 確かめる場所allowedMcpServers、managed-mcp. |
01 誰が 提供しているか
Anthropicは、自分で書いたMCPサーバーか、信頼できる提供元のものを使うよう勧めています。Anthropic Directoryのコネクタは、掲載の基準に照らした審査を受けますが、それはセキュリティ監査ではありません。
確認の目安は、次の通りです。これは公式の基準ではなく、当サイトの見方です。
- 提供元の組織や作者が分かるか。問い合わせ先があるか
- ソースが公開されていて、更新が続いているか
- 入れようとしている名前が、本物の公式の配布物か(似た名前の別物でないか)
見落としやすい点が2つあります。公式の説明では、プロジェクトの.mcp.json以外にも、ほかのスコープのサーバー、claude.aiのコネクタ、プラグインがサーバーを足せます。.mcp.jsonを見ても、そのセッションが読み込む全てのサーバーが分かるわけではありません。
02 何に アクセスできるか
MCPサーバーには、つなぎ方が2種類あります。
- ローカルのサーバー(stdio) あなたのパソコンの上のプロセスとして動きます。公式は、システムに直接アクセスする道具に向くと説明しています
- リモートのサーバー(HTTPなど) URLの先で動き、OAuthの認証を使えるものがあります
注意が要るのは、公式が書いているsandboxの範囲です。sandboxが囲うのはシェルのコマンドだけで、MCPサーバーは囲いの外で動きます。つまり、sandboxを有効にしても、MCPサーバーが触れる範囲は狭くなりません。守りはサーバー自身の権限と、Claude Codeの権限の規則に頼ります。
そのためトークンは、必要な分だけにします。リモートのサーバーでは、oauth.scopesで、認証のときに求める権限(スコープ)を絞れます。公式は、これを、上流の認証サーバーが示す権限が、許可したい範囲より広いときに、セキュリティ担当が承認した範囲に絞る方法としています。
03 どこへ データを 送るか
リモートのサーバーに渡した内容は、設定に書かれたURLのサーバーへ届きます。ただしURLで分かるのは、Claude Codeの接続先までです。そのサーバーが内容をさらに別のサービスへ流すかどうかは、URLだけでは分かりません。つないでいるサーバーの状態は、claude mcp get <名前>と、Claude Code内の/mcpで確認できます。
ローカルのサーバーは、Claude Codeからは見えない通信をすることがあります。サーバー自身が外部のサービスを呼ぶ場合、その通信はClaude Codeのsandboxでは止まりません。送り先は、サーバーの説明とソースで確かめます。
また、外から来た内容は、プロンプトインジェクションの入り口になり得ます。公式も、外の内容を取ってくるサーバーは、つなぐ前に信頼を確かめるよう警告しています。仕組みと対策は、次の記事で説明しています。
関連記事04 どう 更新されるか
MCPサーバーは、つながっている間に、自分が出すツールや資源の一覧を変えられます。変更の通知(list_changed)が来ると、公式の説明では、対話式のセッションのClaude Codeは、再接続しなくても新しい一覧を取りにいきます。入れたときに確かめたツールの一覧が、後から変わり得るということです。
更新の出し方も、サーバーの作りしだいです。当サイトの見方としては、次の点を確かめます。
- 更新の履歴が公開されているか。誰が更新を出せるか
- 起動の命令で版を指定できるか(指定できる作りなら、決めた版に固定する)
- 月に一度ほど、
/mcpでツールの一覧を見直す
05 Claude Codeで 決める設定
スコープ
公式の説明では、スコープは3つあります。
| スコープ | 読み込まれる範囲 | チームへの共有 | 保存先 |
|---|---|---|---|
| スコープローカル | 読み込まれる範囲今の | チームへの共有なし | 保存先~/.claude. |
| スコーププロジェクト | 読み込まれる範囲今の | チームへの共有あり | 保存先プロジェクト.mcp. |
| スコープユーザー | 読み込まれる範囲自分の | チームへの共有なし | 保存先~/.claude. |
迷ったら、ローカルから始めます。全プロジェクトに入れる前に、そのサーバーが本当に全部で要るかを考えます。
承認
対話式のセッションでは、.mcp.jsonのサーバーを使う前に、承認の画面が出ます。選んだ結果をやり直すときは、claude mcp reset-project-choicesを使います。止めたいサーバーは、設定のdisabledMcpjsonServersに入れると、どの権限モードでも使えなくなります。
注意が1つあります。公式の説明では、claude -pの実行、Agent SDK、クラウドのセッションの一部では、承認の画面を出せないため、プロジェクトのサーバーを確認なしで読み込みます。自動実行にリポジトリを使うときは、.mcp.jsonの中身を先に確かめてください。
ツールごとの権限
MCPのツールは、mcp__<サーバー名>__<ツール名>の形で規則に書けます。サーバーの全ツールはmcp__<サーバー名>__*です。規則は、deny、ask、allowの順に見られ、denyの規則に、allowで例外は作れません。読み取りは許可、書き込みは確認、削除は拒否、という分け方の例です。サーバー名とツール名は例です。
{
"permissions": {
"allow": ["mcp__example__get_*"],
"ask": ["mcp__example__update_item"],
"deny": ["mcp__example__delete_item"]
}
}allowの規則でツール名にワイルドカードを使えるのは、mcp__<サーバー名>__の後ろだけです。サーバー名には使えません。
会社で 使うとき
初期設定では、誰でも好きなMCPサーバーをつなげます。会社で止めるには、公式の説明どおり、次の道具があります。
managed-mcp.jsonで、全員に同じサーバーだけを配る。空のサーバー一覧にして、managedMcpServersなどの設定を併用しなければ、MCPを無効にできるallowedMcpServersとallowManagedMcpServersOnlyで、承認したサーバーだけを許可するdeniedMcpServersで、知られている危険なサーバーだけを止める- OpenTelemetryの出力で、どのMCPサーバーとツールが実際に使われているかを集める(
OTEL_LOG_TOOL_DETAILS=1)
公式は、承認済みの一覧とそのclaude mcp addの命令を、社内のWikiなど、利用者が見つけられる場所に載せるよう案内しています。会社全体の運用の決め方は、次の記事にまとめています。
関連する記事
MCPのつなぎ方と代表的なサーバーは、次の記事で説明しています。
関連記事権限とsandbox全体の設定は、次の記事が対象です。
関連記事よく ある質問
MCPサーバーは 安全ですか?
サーバーによります。AnthropicはMCPサーバーのセキュリティ監査をしていません。提供元、アクセスの範囲、送り先、更新のされ方を、入れる前に確かめます。
MCPサーバーに sandboxは 効きますか?
効きません。公式は、sandboxが囲うのはシェルのコマンドだけで、MCPサーバーは囲いの外で動くと書いています。ツールごとの権限の規則と、トークンの権限の絞り込みで守ります。
チームで 入れる MCPサーバーを 決めるには?
.mcp.jsonで共有できます。会社で入れられるサーバーを限るなら、allowedMcpServersやmanaged-mcp.jsonを使います。
承認の 画面が 出ない ことは ありますか?
あります。claude -pの実行、Agent SDK、クラウドのセッションの一部では、承認の画面を出せず、プロジェクトのサーバーを確認なしで読み込みます。


