MCPとは?AIエージェントに外部ツールをつなぐ仕組みと注意点
MCPとは何かを、host・client・server、tools・resources・prompts、2026-07-28正式仕様、CodexのSTDIO・Streamable HTTP・権限の違いまで整理します。
公開 2026.05.24 / 更新 2026.08.20
この記事のポイント
- MCPのhost・client・serverとtools・resources・promptsを分けて理解する
- 2026-07-28正式仕様とCodex hostの実装差を確認する
- transport、認証、server instructions、tool approvalを別々に点検する
冒頭の結論:MCPはAIに外部窓口を持たせる仕組み
MCPとは、AIエージェントと外部ツール・データソースをつなぐための仕組みです。初心者向けに言えば、AIに手足や外部窓口を持たせるようなものです。AIが会話だけでなく、ファイル、データベース、GitHub、ブラウザ、ローカルツールなどにアクセスしやすくなります。
ただし、便利さとリスクは表裏一体です。AIが外部ツールに触れるということは、読み取り、書き込み、削除、外部送信、本番環境操作の可能性も出てきます。個人開発でも、権限設計を軽く見ると普通に事故ります。
この記事で分かること
- MCPとは何か、AIエージェントとどう関係するのか
- MCPで便利になる作業の具体例
- 個人開発者が注意すべきセキュリティリスク
- 最初に試すときの安全な考え方
MCPでできることとリスク
| MCPでできること | 便利な場面 | リスク | 初心者が注意すること |
|---|---|---|---|
| ファイル操作 | コードや設定ファイルを読み、修正案を作る | 誤削除、不要な上書き、秘密情報の表示 | 最初は読み取り中心にする |
| データベース参照 | データ構造を見ながら実装方針を考える | 本番データ変更、個人情報の露出 | 本番DBへの書き込み権限を渡さない |
| GitHub連携 | Issue、PR、差分を見ながら作業する | 意図しないPR作成や公開 | pushや公開操作は確認制にする |
| ブラウザ操作 | 画面確認、フォーム挙動、表示崩れ確認 | ログイン済みページでの誤操作 | 重要操作はクリック前に止める |
| 社内・個人ドキュメント参照 | 仕様書やメモをもとに回答する | 機密情報の扱いが重くなる | 参照範囲を限定する |
| ローカルツール連携 | ビルド、テスト、変換処理を自動化する | 破壊的コマンドの実行 | 削除や本番反映を許可しない |
CodexやClaude CodeでMCPを使う前の確認
- 接続先のMCPサーバーが何を読み、何を書けるか確認する
- APIキーやトークンをどこに保存し、AIに値を見せないか決める
- ファイル操作は読み取りから始め、削除や一括編集は確認制にする
- GitHub、ブラウザ、DB、本番環境への操作は人間が最後に判断する
- 便利そうという理由だけで、出所不明のMCPサーバーを追加しない
個人開発者にとって重要な理由
個人開発では、AIエージェントに任せたい作業が増えます。記事追加、ビルド確認、GitHubのIssue整理、ローカルファイルの確認、ブラウザでの表示チェックなどです。MCPを使うと、こうした作業をAIが扱いやすくなります。
一方で、個人開発者は権限管理も一人で背負います。会社のようにレビュー担当、セキュリティ担当、運用担当が分かれていないため、自分で止める場所を設計する必要があります。
向いているケース
- ローカルのドキュメントやコードを読みながらAIに整理させたい
- GitHubのIssueやPRと連携して作業を進めたい
- ブラウザ表示を見ながらUIの崩れを確認したい
- 社内ではなく個人の範囲で、読み取り中心に小さく試したい
向いていないケース・注意点
- APIキーや秘密情報にアクセスできる設定は慎重にする
- ファイル削除や本番環境操作を許可しない
- 最初は読み取り中心から試す
- 権限を最小限にする
- 外部送信がある場合は、何がどこへ送られるか確認する
よくある誤解
MCPを入れればAIエージェントが何でも安全に自動化してくれる、というのは誤解です。MCPは接続の仕組みであって、安全運用そのものではありません。安全にするには、読み取りと書き込みを分け、危険操作を確認制にし、権限を必要最小限にする必要があります。
MCPのFAQ
MCPとは何ですか?
MCPは、AIエージェントが外部ツールやデータソースに接続するための仕組みです。ファイル、GitHub、ブラウザ、DBなどをAIが扱いやすくなります。
MCPは危険ですか?
MCP自体が危険というより、渡す権限が広すぎると危険です。読み取り、書き込み、削除、外部送信、本番操作の範囲を確認してから使います。
初心者はMCPを何から試すべきですか?
まずは読み取り中心の連携から試すのがおすすめです。ファイル削除、本番DB、公開操作、秘密情報を扱う連携は後回しにしてください。
MCPでAPIキーが漏れることはありますか?
設定やログの扱いを誤ると漏れる可能性があります。APIキーの値をAIに表示させず、接続先と保存場所を人間が確認する運用にしてください。
CodexやClaude CodeでMCPを使うときの注意点は?
作業範囲、接続先、権限、実行コマンドを先に確認し、pushやdeploy、本番操作はAIに自動実行させず人間が確認するのが安全です。
まとめ:MCPは便利だが、権限設計が本体
MCPとは、AIエージェントに外部ツールやデータソースへの接点を持たせる仕組みです。個人開発でも強力ですが、最初は読み取り中心、権限は最小限、危険操作は人間が確認する。この線引きなしに使うと、便利さより事故の方が先に来ます。
MCPは外部ツール権限の入口としてレビューする
MCPはAIエージェントに道具を渡す仕組みです。便利さが増えるほど、読み取り、書き込み、外部送信、削除、ログの境界が重要になります。MCP追加は機能追加ではなく権限追加としてレビューします。
| 見る観点 | 確認すること | 関連する新規記事 |
|---|---|---|
| 読み取り | どのファイル、DB、ブラウザ情報を読めるか | ai-agent-task-boundary-for-coding |
| 書き込み | 削除、更新、push、外部送信ができるか | ai-coding-dangerous-permissions |
| ログ | 何を実行したか後から追えるか | how-to-review-codex-completion-report |
AIコーディング生産性まわりの補足FAQ
MCPを入れれば作業は必ず速くなりますか?
必ずではありません。外部ツール権限が増えるほど確認項目も増えます。読み取りから始め、書き込みは段階的に許可する方が安全です。
ZCodeのMCP importは便利だが、権限拡張として扱う
ZCodeはClaude Code、Codex CLI、OpenCodeなど外部AgentのMCP設定をscanし、importできると説明されています。これは再設定の手間を減らしますが、安全装置ではなく権限拡張です。
| ZCodeで見る項目 | 確認すること | 詳しく読む |
|---|---|---|
| Configured MCP | 手動追加serverのcommandとscopeを見る | zcode-mcp-agents-md-subagents |
| Plugin MCP | plugin管理のserverを有効/無効で確認 | zcode-mcp-agents-md-subagents |
| Import | global/workspace scopeとAPIキー扱いを確認 | zcode-mcp-agents-md-subagents |
ZCode補足FAQ
ZCodeでMCPをimportすれば安全ですか?
安全とは限りません。import前後でserverの読み書き範囲、外部通信、secret、workspace scopeを確認します。
MCPを実際に導入する前の権限チェック
MCP入門としての役割は維持し、導入前の権限設計は最小権限ガイドへ分けます。MCPはAIに道具を増やす仕組みなので、最初から強い権限を渡さないことが大切です。
| 確認観点 | この記事で扱うこと | 詳しく読む |
|---|---|---|
| 読み取り | 対象範囲を限定する | mcp-permission-least-privilege-guide |
| 書き込み | 小さなテスト範囲から始める | mcp-permission-least-privilege-guide |
| 認証情報 | APIキーの実値を見せない | api-key-env-secret-safety-ai-coding |
| 外部送信 | 送信先とログを確認する | mcp-permission-least-privilege-guide |
AI coding agent安全運用の補足FAQ
MCPは危険だから使わない方がいいですか?
使うこと自体が悪いわけではありません。読み取り、書き込み、削除、外部送信、認証情報アクセスを分け、最小権限で始めるのが現実的です。
MCPの基本はhost・client・serverを分けて読む
現行のMCP仕様は、LLMアプリと外部データ・ツールを接続するopen protocolとして、host、host内のclient、contextや機能を提供するserverを分けます。serverが提供するresources、prompts、toolsと、client側の機能を同じ権限として読まず、どの層がデータを持ち、どの層が操作を実行するのかを確認します。
| 役割 | 見るもの | 混同しないこと |
|---|---|---|
| Host | ChatGPTやCodexのようなLLMアプリ | hostのpermissionとserverのtool権限は別 |
| Client | host内でserverへ接続するconnector | 接続できることはtool実行の安全を証明しない |
| Server | resources・prompts・toolsを提供するサービス | tool descriptionだけで信頼性や影響範囲を決めない |
Codexではdesktop・CLI・IDEとChatGPT webを分ける
OpenAIの現行Codex Docsでは、ChatGPT desktop app、Codex CLI、IDE extensionは同じCodex hostのMCP設定を共有します。一方、ChatGPT webのWork Pluginsが使うremote MCP toolsはlocal Codex configを読む面とは別です。~/.codex/config.tomlと、trusted projectに限るproject-scoped .codex/config.tomlの置き場所も、credentialと共有範囲に合わせて決めます。
- STDIOはcommandで起動するlocal process、Streamable HTTPはaddressへ接続するserverとして分ける
- Bearer token、OAuth、trusted first-partyのChatGPT session authenticationを同じ認証方式と扱わない
- serverのinstructionsはserver-wide guidanceだが、projectルール、人間の承認、hostのtool policyを自動で上書きしない
- server全体とtool単位のapproval mode、enabled_tools・disabled_toolsの最終集合を確認する
MCPの仕様が決まっても、安全運用は別に設計する
MCP仕様はuser consent、data privacy、tool safetyを実装者が扱うべき原則として示しますが、protocolだけで安全を保証するものではありません。外部データを送る範囲、toolが起こすside effect、認証情報、削除・公開操作を確認し、最初はread-onlyと明示的な承認から始めます。
2026年8月のMCP FAQ
MCPの仕様が正式なら、どのclientでも同じ機能が使えますか?
使えるとは限りません。仕様の対応状況、host、client、server、transport、認証方式、extensionの対応を個別に確認します。
Codex CLIで追加したMCPはChatGPT webでも使えますか?
同じとは限りません。desktop app、CLI、IDE extensionは同じCodex hostの設定を共有しますが、ChatGPT webのWork Pluginsはlocal Codex configとは別の入口です。
MCP serverのinstructionsをそのまま信用してよいですか?
そのまま信用しません。server-wide guidanceとして読みますが、serverの出所、toolの実際の権限、hostのapproval、projectのルールと照合します。
関連記事
- ZCodeのFull Accessは危険?権限モード・確認ダイアログ・安全な使い方
ZCodeのFull Accessは便利ですが、Always Allowと組み合わせるほど確認が減ります。信頼できる作業範囲だけに閉じるのが基本です。
- ZCodeのUsage Statsで何を見る?トークン消費・Coding Plan quota・使いすぎ防止
ZCodeのUsage Statsは、App UsageとCoding Planを分けて見るのが肝です。Goal ModeやMCP tool callの使いすぎに早めに気づけます。
- AI時代にインフラエンジニアの需要が消えない理由:コード生成が速くなるほど、本番環境を守る人が必要になる
AIがDockerfileやTerraformを書ける時代でも、本番環境の権限、監視、復旧、コスト、秘密情報管理の責任は残ります。AI時代に価値が上がるインフラ・SRE・DevOpsの観点を整理します。
- Codexの使用量を節約する作業分け|prompt・AGENTS.md・MCPの絞り方
Codexのリミット節約は、短いpromptだけでは足りません。対象範囲、AGENTS.md、共有MCP設定、model、確認手順をセットで絞ります。
- Codexの残り使用量はどこで見る?Usage Dashboard・制限・リセット
Codexの残り使用量、reset、credits、banked resetを、制限回避ではなく安全な作業計画のために整理する親ハブです。