mcp-security.png

この記事でわかること

  • MCPのプロトコル設計に組み込まれた安全の仕組み(OAuth認証・スコープ制限)がわかります
  • プロンプトインジェクション・ツールポイズニングなど、主要なセキュリティリスク4種の内容がわかります
  • 悪意あるMCPサーバーを見分けるための具体的な確認ポイントがわかります
  • 書き込み機能を持つMCPを誤操作なく使うための習慣づくりがわかります
  • MCP利用前に確認すべき安全チェックリストを確認できます

目次

  1. MCPは安全か?プロトコル設計から整理する
  2. MCPの主なセキュリティリスク4種
  3. 悪意あるMCPサーバーを見分けるポイント
  4. 書き込み機能を持つMCPを安全に使うには
  5. 仮想通貨・金融データをMCPで扱う場合の注意点
  6. MCP利用前に確認したい安全チェックリスト
  7. よくある質問(FAQ)
  8. まとめ

MCPは安全か?プロトコル設計から整理する

MCP(Model Context Protocol)を初めて知ったとき、「AIが自分のサービスに直接アクセスする」という仕組みに不安を感じる方は少なくありません。実際のところ、MCPはプロトコルレベルで安全な設計を備えている一方、そのプロトコル単体ですべてのリスクを排除できるわけではありません。まずは、MCPが設計として何を保証していて、何を保証していないのかを整理することが、安全な利用への第一歩です。

MCPの基本的な仕組みについては、以下の記事で詳しく解説しています。

MCPが持つ安全設計の仕組み(OAuth・スコープ制限)

MCPはプロトコルレベルでいくつかの重要な安全設計を取り入れています。

OAuth認証による接続管理

MCPサーバーへの接続には、OAuth(パスワードを直接共有しない安全な認証方式)が採用されています。ユーザーはサービスのIDやパスワードをAIツールに直接渡すことなく、専用の認証フローを通じてアクセスを許可します。接続の許可・取り消しもOAuth設定から行えるため、不要になった連携をいつでも解除できます。

スコープによるアクセス範囲の制限

MCPサーバーはスコープ(MCPサーバーに許可するアクセス範囲)を設定することで、AIがアクセスできるデータや実行できる操作を細かく制限できます。たとえば「取引履歴の読み取りのみ許可」「レポート出力のみ許可」のように、目的に必要な範囲だけを許可する設計が可能です。最小権限の原則(必要最小限の権限のみを付与するセキュリティ設計の考え方)に基づく設定が推奨されます。

プロトコルレベルでは保証されていないこと

一方で、MCPのプロトコル仕様それ自体は以下の点を保証しません。

  • 接続先サーバーの信頼性:MCPというプロトコルを使っているからといって、そのサーバーが安全とは限りません。誰でもMCPサーバーを作成・公開できるため、悪意ある目的で設計されたサーバーが存在する可能性があります
  • ツール説明文の正確性:AIはサーバーが提供する「ツールの説明文」を読み取って行動しますが、その内容が改ざんされていてもプロトコルは検知できません
  • AIの判断ミスの防止:AIがツールを正しく使うかどうかはプロトコルではなくAIモデルの判断に依存します

NSAが2026年6月に公表した「Model Context Protocol (MCP): Security Design Considerations for AI-Driven Automation」では、MCPの急速な普及がセキュリティ対策の整備を上回るペースで進んでいる点が警告されており、プロトコルの安全設計だけに頼らず、追加的な対策が必要と述べられています。

MCPの主なセキュリティリスク4種

OWASP(Open Web Application Security Project)が2025年に公表したMCPセキュリティフレームワーク「OWASP MCP Top 10」では、MCP利用時に特に注意すべきリスクが体系的に整理されています。ここでは、個人ユーザーが意識しておくべき4つのリスクを平易に解説します。

プロンプトインジェクション

プロンプトインジェクション(AIへの命令文を悪意ある指示に書き換える攻撃手法)は、MCPを経由して取得した外部データの中に悪意ある命令が埋め込まれ、AIが意図しない行動をとってしまうリスクです。

たとえば、AIがMCPを通じてウェブページや外部ドキュメントを読み取る際、その内容に「次に必ず〇〇を実行せよ」という隠し命令が含まれていると、AIがその指示に従って意図しない操作をしてしまうことがあります。2026年4月には、GitHubのプルリクエストのタイトルに埋め込まれた悪意ある命令により、複数のAIコーディングツールが機密情報を外部に送信する事例が研究者によって報告されています。

攻撃者はユーザーが目にしにくい場所(ページのメタデータ、白文字のテキスト、URLパラメータなど)に命令を隠すため、ユーザーが直接気づくことは困難です。

ツールポイズニング(悪意あるサーバーの仕込み)

ツールポイズニング(MCPサーバーのツール説明文に悪意ある命令を埋め込む攻撃)は、見た目は正常なMCPサーバーに見えながら、AIだけが読み取れる部分に悪意ある指示が仕込まれているリスクです。

ユーザーがMCPサーバーの一覧を見ても問題ないように見えますが、AIがそのサーバーを呼び出した際、ツールの説明文に埋め込まれた「隠れた命令」を実行してしまうことがあります。OWASP MCP Top 10ではこれが主要リスクの一つとして挙げられており、2025年9月には最初の悪意あるMCPパッケージが実際に確認されています。MCPサーバーのエコシステムが急速に拡大する中で、このリスクへの注意は今後ますます重要になる見込みです。

権限の過剰付与

権限の過剰付与は、MCPサーバーに対して目的以上のアクセス権限を与えてしまうリスクです。OWASP MCP Top 10でも「Overly Permissive Scope(過剰なスコープ設定)」として警告されています。

たとえば、取引履歴の確認だけを目的としているのに、誤って「すべてのデータへの読み書き」権限を与えてしまうケースが該当します。必要以上のアクセス権限は、万が一サーバーや接続が侵害された際の被害範囲を大きくするリスクがあります。MCPサーバーを接続する際は、その目的に必要最小限のスコープのみを許可することが重要です。

認証情報の集約リスク

認証情報の集約リスクは、AIツールに複数のサービスへのアクセス権限が集中することで、ひとつの侵害が広範囲に波及するリスクです。OWASP MCP Top 10では「Token Mismanagement & Secret Exposure(トークン管理不備と秘密情報の露出)」として整理されています。

たとえば10種類のMCPサーバーを同一のAIツールに接続している場合、そのAIツールのアカウントが侵害されると、10のサービスへのアクセス権が一度に失われる可能性があります。また、AIの処理ログや会話履歴に認証トークンが記録・残存してしまうリスクも指摘されています。使用しないMCPサーバーの接続は定期的に見直し、不要な接続を解除する習慣が有効です。

悪意あるMCPサーバーを見分けるポイント

MCPサーバーの数は急速に増加しており、公開リポジトリを検索するだけで数千種類以上のサーバーが見つかります。信頼できるものと悪意ある可能性があるものを見極めるために、以下の観点が参考になります。

信頼できるMCPサーバーの3つの判断基準

1. 公式の提供元かどうか

サービス提供企業が公式に公開しているMCPサーバーは、信頼性の高い選択肢です。Anthropicや主要なクラウドサービス(Slack、GitHub、Google Workspace等)の公式MCPサーバー、あるいはサービス提供元が自社のヘルプセンターで案内しているサーバーが該当します。提供元の公式サイトにMCPサーバーへの案内があるかどうかを確認するだけでも、信頼性の目安になります。

2. オープンソースでソースコードが確認できるか

GitHubなどでソースコードが公開されており、コミュニティによるレビューが行われているサーバーは、動作の透明性が高いといえます。GitHubのスター数・更新頻度・コントリビューター数・Issue対応状況なども参考指標になります。反対に、ソースコードが非公開で動作の詳細が確認できないサーバーは慎重な判断が必要です。

3. 要求するスコープが機能目的と一致しているか

接続時に要求されるアクセス範囲(スコープ)が、そのサーバーの機能説明と整合しているかを確認します。「カレンダー確認ツール」を名乗るサーバーがファイルシステムへのフルアクセスを要求するようなケースは、要注意のサインです。要求スコープが目的に対して過剰に広い場合は、接続を見合わせることが安全側の判断といえます。

接続前に確認すべきチェックポイント

新しいMCPサーバーを接続する前に、以下の点を確認することを検討してください。

  • 公式サイト・ドキュメントに接続方法の案内が存在するか
  • 利用規約・プライバシーポリシーが公開されているか
  • ソースコードが公開・監査されているか(オープンソースの場合)
  • コミュニティでセキュリティ問題の報告・議論がないか
  • 要求されるスコープが必要最小限に絞られているか

書き込み機能を持つMCPを安全に使うには

MCPには読み取り専用の機能だけでなく、データの追加・更新・削除といった書き込み操作が可能なサーバーも存在します。書き込み機能の利便性は高い一方で、誤操作のリスクも読み取り専用より高くなります。

書き込み操作の取り消しが難しい理由

AIが書き込み操作を実行した場合、その変更を完全に元に戻せる保証はありません。以下のようなケースが考えられます。

  • データの上書き:AIが既存のデータを変更した場合、変更前のデータが保持されているかはシステムによって異なります
  • 削除操作:削除されたデータの復元は一般的に困難です
  • 外部への連携:メール送信やAPI連携が実行された場合、すでに外部に情報が出た後になります

AIへの指示の言い回しや文脈の取り違えによって、意図しない書き込み操作が実行されることがあるため、注意が必要です。

実行前に「確認させる」習慣づくり

書き込み機能を持つMCPを使用する際は、AIに「実行前に内容を確認する」よう指示する習慣が有効です。

習慣①:「実行前に説明して」と添える

書き込み操作を依頼する際、「実際に変更を加える前に、何をどのように変更するか説明してください」と一言添えることで、AIが実行内容を提示してから作業を進めます。内容を確認してから「では実行してください」と指示する流れをルーティン化することで、意図しない操作のリスクを下げられます。

習慣②:スコープを最小限に設定する

使用目的に必要な範囲のみにスコープを絞ることで、万が一の誤操作時の影響範囲を限定できます。たとえば「今回は取引履歴の読み取りのみ使う」場合、書き込みスコープは与えない設定が安全側の選択です。

習慣③:定期的に接続状況を見直す

利用していないMCPサーバーの接続はその都度解除し、不要な接続をため込まないことが重要です。接続を維持するほど、潜在的な侵害経路が増えることになります。

仮想通貨・金融データをMCPで扱う場合の注意点

仮想通貨(暗号資産)の取引データや損益情報は、個人の金融状況に直結する機密性の高いデータです。こうした情報をMCPで扱う際は、特に接続先の安全設計を事前に確認することが重要です。

仮想通貨(暗号資産)の確定申告においてMCPを活用する具体的な方法については、以下の記事で詳しく解説しています。

「クリプタクト」MCPサーバーの安全設計

仮想通貨(暗号資産)の損益計算ツール「クリプタクト」は、MCPサーバーを公式提供しており、接続にはOAuth認証が必要な設計になっています。

  • OAuth認証による接続管理:パスワードをAIツールに直接渡す必要はなく、クリプタクトの認証フローを通じてアクセスを許可します
  • スコープによる機能分離:読み取り機能(取引履歴の確認・損益レポートの取得等)と書き込み機能(取引データの追加・修正等)はそれぞれ別のスコープとして管理されており、目的に必要な範囲のみ許可できます
  • 接続の取り消し:不要になった場合はクリプタクトの設定画面からOAuth接続を解除できます

セキュリティの詳細設計については、クリプタクトの公式ヘルプセンター「MCPサーバーの利用方法」でご確認ください。

書き込み操作実行前の確認ルーティン

クリプタクトMCPの書き込み機能(取引データの追加・修正・削除)を使用する際は、実行前に次のルーティンを習慣にすることを検討してください。

  1. AIに「何をどのように変更するか、実行前に説明してください」と依頼する
  2. 変更内容に問題がないことを確認してから「実行してください」と指示する
  3. 変更後にクリプタクトの管理画面で意図した変更が反映されているかを確認する

仮想通貨(暗号資産)の税金計算の基礎については、以下の記事も参考にしてください。

次の章の安全チェックリストに照らしてみると、「クリプタクト」の公式MCPサーバーは①公式サービスとしての提供、②目的に応じたスコープ選択の設計、⑤書き込み前の確認ルーティンの推奨、⑥接続解除機能の提供――といった複数の項目を設計上カバーしています。金融データを扱うMCPとして、安心して利用を始めやすい選択肢の一つといえます。

MCP利用前に確認したい安全チェックリスト

MCPサーバーを新たに接続する前に、以下のチェックポイントを確認することを検討してください。

チェック項目確認内容
提供元の信頼性公式サービス・著名なオープンソースプロジェクトから提供されているか
スコープの適切性要求されるアクセス範囲が、そのツールの機能目的と一致しているか
ソースコード・ドキュメントの有無動作の透明性を確認できるか(オープンソースが望ましい)
利用規約・プライバシーポリシーデータの取り扱い方針が明示されているか
書き込み機能の有無書き込み機能がある場合、実行前確認のワークフローを設定しているか
接続の定期見直し不要になったMCPサーバーの接続を解除する習慣があるか
AIツール側のセキュリティ設定使用しているAIツールのセキュリティ設定・アクセス管理が適切か

これらの確認を習慣化することで、MCPの利便性を享受しながら安全性を維持することが可能です。NSAのガイダンスでも、使用するMCPサーバーが信頼できる提供元からのものかどうかを確認することが、最も基本的なセキュリティ対策として挙げられています。

よくある質問(FAQ)

Q: MCPは安全に使えますか?

はい、信頼できるMCPサーバーを選び、スコープを最小限に設定し、書き込み操作の前に確認する習慣を持てば、安全に活用できます。ただし、MCPというプロトコルを使っているだけでは安全性は保証されず、接続先サーバーの信頼性確認と適切な権限設定が不可欠です。

Q: 悪意あるMCPサーバーに気づかずに接続してしまったら?

悪意あるMCPサーバーに接続した場合、AIがツールを呼び出した際に意図しない操作が実行されたり、データが外部に送信されたりする可能性があります。気づいた時点で、AIツール側からMCPサーバーの接続を削除するとともに、接続を許可したサービス側のOAuth設定からも認証を取り消してください。通常と異なる動作(AIが想定外の操作を提案・実行するなど)が見られた場合は、速やかに接続を見直すことをお勧めします。

Q: MCP対応のAIツールはどれも同じセキュリティレベルですか?

いいえ、AIツールによってセキュリティの実装水準が異なります。Anthropicの「Claude」では、MCPサーバーへのアクセス前にユーザーの承認を求める設計や、スコープ制限の管理が組み込まれています。一方で、すべてのAIツールがこうした保護機能を同様に備えているわけではないため、利用するAIツールのセキュリティポリシーや権限管理の仕組みを確認することが重要です。

Q: 書き込み機能があるMCPを使う際に特に気をつけることは?

書き込み機能を持つMCPを利用する際は、「AIに実行前の確認を求めること」と「スコープを必要最小限に絞ること」の2点が特に重要です。削除や上書き操作は実行後に元に戻せない場合があるため、AIが変更内容を提示した段階で問題がないことを確認してから実行を指示することを検討してください。

Q: 仮想通貨・金融データを扱うMCPでは何が特に危険ですか?

仮想通貨(暗号資産)の取引データや損益情報は個人の金融情報に直結するため、認証情報の集約リスクと書き込み操作の誤実行への注意が重要です。接続するサーバーが公式提供かどうか、OAuth認証が採用されているか、スコープが最小限に設定されているかを事前に確認することを検討してください。

Q: MCPサーバーの接続を削除すれば、データへのアクセスを止められますか?

はい、MCPサーバーとのOAuth接続を解除することで、そのサーバーを通じたデータへのアクセスを止められます。ただし、AIツール側でMCPサーバーを削除するだけでなく、接続を許可したサービス側(例:クリプタクトの設定画面)でもOAuth認証を取り消すことで、確実にアクセスを止められます。片方だけの操作では接続が残存することがあるため、両方での確認を検討してください。

まとめ

MCPはOAuth認証やスコープ制限などの安全設計を持つ一方、プロトコル単体ですべてのリスクを排除することはできません。プロンプトインジェクションやツールポイズニングなど主要なリスクを理解した上で、信頼できるMCPサーバーを選び、書き込み前に確認する習慣を持つことで、安全に活用できます。

仮想通貨(暗号資産)の損益管理をMCPで効率化したい場合は、OAuth認証と最小権限設計を採用した「クリプタクト」の公式MCPサーバーをご確認ください。