入れたMCP、まだ全部把握してますか?|月1のMCP棚卸しルーティン
入れたMCP、いま何個あるか即答できますか?
「とりあえず試してみた」MCPが、いつの間にか二桁になっていませんか?
私も同じでした。Brave Search、GitHub、Fetch、Playwright、Context7、Slack、Notion…気になるものを片っ端から入れていたら、ある日ふと「あれ、これ全部いつ入れたっけ」と思ったんです。しかも、最後に使ったのがいつかも分からないやつが半分以上。
問題は「使っていない」だけじゃない。使っていないMCPが、ずっと権限を持ち続けているという事実です。
試用して放置したMCPは、ただ邪魔なだけではありません。セキュリティの観点からは、静かに「権限の経年劣化」を引き起こしている可能性があります。月1回、15分でできるMCP棚卸しの手順を紹介します。
MCPの権限は「経年劣化」する
新しいMCPをインストールするとき、私たちは少なからず判断をしています。「このサーバーは信頼できるか」「この権限は本当に必要か」。
でも、その判断はインストール時点のもの。3ヶ月後に状況が変わっていても、MCPはそのまま稼働し続けます。
具体的には、3つのパターンで問題が起きます。
メンテナンスが止まったサーバー: オープンソースのMCPサーバーは、作者が忙しくなるとアップデートが止まります。脆弱性が発見されても修正されないまま、Claude Codeに繋がり続けます。
使わなくなったのに残っている権限: 一度だけ試したいと思って入れたMCPが、ファイルシステムへの読み取り権限やネットワークアクセスを持ったまま存在しています。攻撃者がサプライチェーン経由でMCPを乗っ取った場合、これが侵入経路になります。
設定の意図が薄れる: インストール直後は「なぜこれを入れたか」が分かっているのに、時間が経つと忘れます。「削除して大丈夫?」の判断ができなくなり、消せないMCPが増え続けます。
MCPサプライチェーン攻撃の実例については、以前「MCPサーバーが攻撃面になる日」で書きました。攻撃者は、人気のMCPパッケージを乗っ取るかタイポスクワッティングで偽パッケージを公開するかして、すでに導入済みのMCPを悪用します。未使用のMCPを放置することは、使っていない鍵を玄関に刺したまま外出するのに近い状態です。
月1棚卸しの3ステップ
毎月1回、15分を確保して次のステップを回します。
ステップ1: 全MCPの一覧化
まず、何が入っているかを把握します。Claude Codeを使っている場合、MCP設定はいくつかの場所に分散しています。
グローバル設定(全プロジェクト共通)と、プロジェクト別設定(各リポジトリ)の2か所を確認します。
cat ~/.claude/claude_desktop_config.json
cat .claude/settings.jsonこの2か所を確認して、インストール済みのMCPを全部リストアップします。私はNotionのページに「MCP台帳」を作りました。列は「名前」「インストール日」「用途」「最終使用日」「ステータス(使用中/試用中/削除候補)」の5列だけ。
台帳がなければ、今日が作り時です。
ステップ2: 稼働確認と最終更新チェック
一覧ができたら、各MCPについて2点を確認します。
まだ動いているか: npxやuvxで起動する系のMCPは、パッケージのバージョンが上がると動作が変わることがあります。Claude Codeで実際に使ってみて、正常に応答するか確認します。
メンテナンスされているか: GitHubリポジトリがあるMCPは、最終コミット日を確認します。目安として、6ヶ月以上更新がない場合は要注意です。Issuesが溜まっているのに対応がない場合も同様。
GitHubで公開されているMCPであれば、次のコマンドで最終コミット日を確認できます。
gh api repos/<owner>/<repo>/commits --jq '.[0].commit.author.date'ステップ3: 権限の再評価と不要なMCPの削除
最後に、各MCPの「権限は今も適切か」を問い直します。
インストール前の詳細チェックリストは「MCPパッケージを導入する前に確認したい5つのこと」で書いています。棚卸し時は簡易版として、次の3点を確認します。
今月、このMCPを実際に使ったか
ファイルシステムやネットワークへのアクセス権は、用途に対して適切か
サードパーティのサービスへの認証情報(トークン等)を渡していないか
「使っていない」「権限が広すぎる」「メンテが止まっている」の3つが重なったMCPは、即削除の対象です。
未使用MCPを外す判断基準
「念のため置いておく」という発想は、MCP管理では危険です。
削除するかどうか迷ったとき、私は自分に投げる問いが1つあります。「もう一度インストールする気があるか?」。答えが「ないな」なら削除します。MCPはいつでも再インストールできます。でも権限は、放置している間ずっと残り続けます。
削除は claude_desktop_config.json または settings.json から該当エントリを消して、Claude Codeを再起動するだけです。
// 削除前(例: 使っていないSlack MCPのエントリ)
{
"mcpServers": {
"slack": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-slack"]
}
}
}
// このブロックごと削除して保存 → Claude Code再起動で完了削除後は Claude Codeで「使えるMCPを教えて」と確認すると確実です。
今日やること
棚卸しを「来月やろう」と思ったことが、正直3回以上あります。でも実際にやってみると、最初の一回が一番時間がかかる(全部洗い出す作業)で、その後は5分で終わります。
今日の最初の一歩は1つだけ。
導入済みのMCPを全部リストアップする。
claude_desktop_config.json と各プロジェクトの settings.json を開いて、MCP名を書き出すだけです。削除するかどうかの判断は後でいい。まず「何が入っているか」を自分で把握することが、月次棚卸しの出発点になります。
私は2026年4月にこれをやって、14個のMCPのうち6個を削除しました。残った8個は今もちゃんと使っています。使うものだけ残す。それだけで、MCPの権限管理はずいぶんすっきりします。参考になれば嬉しいです。
関連する有料記事
MCP の棚卸しだけでなく、Claude Code 全体の運用整備を体系化したい方向けに、AI コードレビューを Semgrep/GitHub Actions まで含めて組み込む有料記事を公開しています。
AI コードレビュー実装パック — レビュー観点チェックリスト32項目・脆弱性別レビュープロンプト・Semgrep を組み込む GHA ワークフロー全文
https://note.com/takibisan/n/n50258f68b3a9
#takibiラボ #takibiラボ_AI #セキュリティ #AIセキュリティ
いいなと思ったら応援しよう!
よろしければ応援お願いします!
今月のClaude に大切に使わせていただきます!
