MCP(Model Context Protocol)とは、AIモデルと外部のツール・データソースとの連携方法を標準化したオープンなプロトコルです。Anthropicが2024年11月に公開して以降、主要なAI関連各社が相次いで対応し、AIに外部の道具を持たせる際の事実上の共通規格になりつつあります。本記事では、MCPの仕組みとホスト・クライアント・MCPサーバーの役割を整理し、MCPサーバーを1本書いて動かす手順、仕様リビジョンの読み方、企業導入時のセキュリティ統制までを扱います。
まとめ:MCPの要点と企業が押さえるべき導入視点
MCPは、AIと外部ツールの接続を「ツールごとの個別開発」から「共通規格への接続」に変える仕組みです。USB-Cが機器ごとに違うケーブルを1つの端子に統一したように、MCPはAIとツールの間の配線を統一します。知識検索の手法であるRAGとの役割の違い・使い分けはMCPとRAGの違いの解説で整理しました。
実体としてのMCPサーバーは、AIに渡す道具の一覧と実行処理を持つだけの小さなプログラムです。公式チュートリアルに沿えば、社内APIを1本ラップしたサーバーを数十行で書けます。後段でその最小実装を示しました。
企業の視点では、MCPは可能性とリスクの両面を持ちます。ファイル・データベース・SaaSへAIが直接アクセスできる一方、接続先の権限がそのままAIの権限になるため、無統制な利用は情報漏えいの入り口になり得ます。利用するMCPサーバーの承認制と権限の最小化を先に整えてから展開する、という順序が導入の結論です。
MCPの定義:AIと外部ツール連携を標準化するプロトコルの基礎
まずMCPが何であって何でないかを確定させます。名前から中身が想像しにくいため、解決する課題から押さえると理解が速くなります。
MCPの定義:LLMに文脈と道具を渡すための共通規格という位置づけ
MCPはModel Context Protocolの略で、名前のとおり「モデルに文脈(Context)を渡すための約束事(Protocol)」です。LLM(大規模言語モデル)は学習した知識だけでは、手元のファイルの中身も、社内データベースの最新値も知りません。MCPは、外部の情報や操作をAIに提供する際のやり取りの形式を定めた共通仕様です。製品でもアプリでもなく、HTTPやUSBと同じ「規格」のレイヤーに位置します。
技術的な土台はJSON-RPC 2.0のメッセージ交換で、公式仕様はエディタと言語の対応を統一したLanguage Server Protocolを参照元に挙げています。AIアプリとツールの間に同じ発想を持ち込んだ規格です。MCPが特に効くのは、AIが自律的に判断してツールを使い分けるエージェント型の利用です。エージェント本体の仕組みはAIエージェントとは?仕組みと業務に組み込む判断基準で解説しており、MCPはその足回りを担う技術にあたります。
Anthropicによる2024年11月公開と主要各社が対応した経緯
MCPは、Claudeを開発するAnthropicが2024年11月にオープンソースとして公開しました。Anthropicによる公開時のアナウンスでは、仕様と実装用のSDK、主要システム向けの参照実装をあわせて出したことが示されています。特定ベンダーの独自機能に留めなかったことが普及の起点になりました。2025年には競合を含む主要各社や開発ツールが対応を表明し、単一ベンダーの規格から業界横断の標準へ位置づけが変わっています。
対応の広がりは利用者にも実利をもたらします。特定のAIサービス向けの連携は乗り換えのたびに作り直しになるのに対し、MCP準拠のサーバーは対応クライアントであればどのAIからでも使えるためです。参照実装はmodelcontextprotocolの公式サーバーリポジトリで公開されており、実装の作法を確かめたいときの一次情報になります。
MCPが解決する課題:ツールごとの個別連携開発というM×N問題
MCP以前の課題は「M×N問題」と呼ばれる組み合わせ爆発です。M種類のAIアプリとN種類のツールをつなぐには、原理的にM×N通りの個別連携を開発・保守する必要がありました。AIサービスごとにプラグインの仕様が異なり、ツール提供側は各社対応に追われる状況でした。
MCPは接続の両側を規格で受け止め、この組み合わせをM+Nに縮めます。ツール側は「MCPサーバーを1つ作れば全対応クライアントから使える」、AIアプリ側は「MCPクライアントを実装すれば全サーバーにつながる」という構図です。連携開発の限界費用が下がった結果、公開されるMCPサーバーの種類が急増し、それがさらに対応クライアントを増やす循環が生まれました。
MCPの仕組み:ホスト・クライアント・MCPサーバーの構成と役割分担
MCPの構成はクライアント・サーバー型です。3つの役割とサーバーが提供する機能を押さえれば、全体像は把握できます。
3つの構成要素:ホスト・クライアント・サーバーが担う役割の分解
公式仕様では、構成要素をホスト・クライアント・サーバーの3つに分けています。①ホストは利用者が触るAIアプリ本体(チャットアプリやAI搭載エディタ)で、LLMとの対話全体を管理します。②クライアントはホストの内部にあり、個々のMCPサーバーとの通信を担当する接続窓口です。③MCPサーバーは、ファイル操作・データベース照会・SaaS連携といった具体的な機能を提供する側のプログラムを指します。監視SaaS側の実例はDatadog MCP Serverの接続手順と権限設計が参考になります。
ホストとサーバーの間をどう運ぶかを決めるのがトランスポートです。ローカルではstdio、リモート接続ではHTTPベースの方式が使われます。HTTP側の仕様の変遷と選び分けはStreamable HTTPとSSEの違いの解説にまとめました。この区別はトラブルの切り分けに効きます。社内導入時の統制対象は主に③で、「どのサーバーの利用を許可するか」が管理の単位になります。
MCPサーバーが提供する3機能:ツール・リソース・プロンプトの中身
MCPサーバーがAI側に提供できる機能は、公式仕様で大きく3種類に整理されています。①ツール:AIが呼び出せる操作(検索の実行、ファイルの書き込み、チケットの起票など)で、MCPの中核機能です。②リソース:AIに読ませるデータ(ファイルの中身、データベースのレコードなど)を提供します。③プロンプト:定型作業のためのテンプレートをサーバー側から供給する仕組みです。
逆にクライアント側からサーバーへ差し出せる機能もあり、仕様ではサンプリング(サーバー起点でLLMに推論させる)、ルート(操作してよいファイル範囲の提示)、エリシテーション(利用者への追加入力の要求)が定義されています。対応アプリにMCPサーバーを登録すると、AIは「使える道具の一覧」を認識して呼び出します。どの道具をいつ使うかを判断するのはLLM側で、サーバーは定義と実行だけを担う分業です。
A2Aとの違い:ツール接続のMCPとエージェント間通信のA2Aの棲み分け
MCPと並んで語られる規格にA2A(Agent2Agent)があります。A2Aは2025年にGoogleが発表した、AIエージェント同士が協調するためのプロトコルです。対象領域が異なり、MCPは「1つのエージェントと道具・データの接続」、A2Aは「複数のエージェント間の対話」を扱います。人に例えるなら、MCPは担当者と業務ツールの関係、A2Aは担当者同士の連絡手段です。
両者は競合ではなく補完の関係で、複数エージェントがそれぞれMCPで道具を持ち、A2Aで連携する構成が想定されています。エージェント間協調が要るのは自動化が相当に成熟した段階なので、検討順序としてはMCPが先で問題ありません。
MCPサーバーとは何か:3つの機能と最小構成を動かすまでの手順
「MCPサーバーとは何か」を言葉の定義だけで理解するのは難しく、1本書いて動かすのが最短です。ここでは実体・最小実装・ホストへの登録という順に、手を動かす単位で整理します。
MCPサーバーの実体:常駐して道具の一覧と実行を引き受ける役割
MCPサーバーの実体は、JSON-RPCのメッセージを受けて応答するだけの常駐プログラムです。特別なミドルウェアもデータベースも要らず、Pythonのスクリプト1ファイルでも成立します。中身として持つのは「どんな道具があるか」を答える定義と、「その道具を実行しろ」と言われたときに動く処理の2つだけ。
AI側から見ると、サーバーが返す道具の一覧は、関数名・引数の型・説明文の集合として届きます。この説明文がそのままLLMの判断材料になるため、道具の説明は人間向けのコメントではなく、AIへの指示文として書く感覚が要ります。引数の型定義が曖昧だと呼び出しの失敗が増える箇所。tool定義から権限・認可までを通した設計はAIエージェントへのMCP接続の実装手順の解説で扱っています。
PythonでMCPサーバーを書く:SDK 2.0系での最小実装の手順
公式のサーバー構築チュートリアルによると、2026年9月時点の前提はPython 3.10以上とPython MCP SDK 2.0.0以上です。uvを使う場合、プロジェクトの用意から依存の追加までは次の4行です。
uv init mcp-inventory
cd mcp-inventory
uv venv
uv add "mcp[cli]"
サーバー本体は、MCPServerのインスタンスを作り、道具にしたい関数へデコレータを付けるだけの構成です。SDKは型ヒントとdocstringから道具の定義を組み立てるため、別途スキーマを用意せずに済みます。社内の在庫照会APIを1本だけ開放する例が次のコード。
from mcp.server import MCPServer
mcp = MCPServer("inventory")
@mcp.tool()
def get_stock(sku: str) -> str:
"""社内在庫コードから残数を返す。
Args:
sku: 社内在庫コード
"""
row = lookup_stock(sku) # 既存の社内APIやDBを呼ぶ処理
return f"{sku} の在庫は {row['qty']} 個"
if __name__ == "__main__":
mcp.run(transport="stdio")
stdio方式では注意が1つあります。標準出力はJSON-RPCの通り道なので、そこへ文字を書くと通信が壊れます。公式チュートリアルもprintを避け、標準エラー出力へ流れるloggingモジュールを使うよう明示しました。デバッグ出力を誤ると「接続直後にサーバーが落ちる」形で症状が出ます。
ホストへ登録して動かす:設定ファイルの記述と起動確認の進め方
書いたサーバーは、ホスト側の設定ファイルに登録して初めてAIから見えます。Claude Desktopの場合はmcpServersというキーの下に、起動コマンドと引数を書く形式です。Windowsでの記述例を挙げます。
{
"mcpServers": {
"inventory": {
"command": "uv",
"args": ["--directory", "C:\\work\\mcp-inventory", "run", "server.py"]
}
}
}
登録後にホストを再起動すると、道具の一覧にget_stockが現れます。切り分けは、①コマンドをターミナルで直接実行してエラーが出ないか、②絶対パスが正しいか、③uvのフルパス指定が要る環境ではないか、の順です。ホスト側の設定場所と接続確認の手順はClaude Desktopのインストールと連携設定の解説にまとめています。
自作サーバーが増えたら、1つずつホストに直接ぶら下げる構成は管理しきれません。複数のサーバーを集約し認証と有効化の範囲を制御する方法としてDocker MCP Gatewayによる集約の解説があり、社内配布の段階で扱いやすくなります。
代表的なMCPサーバーの種類と用途:開発・デザイン・業務ツール連携
公開されているMCPサーバーは、公式・コミュニティ製を合わせて数千種類規模です。ここでは当サイトで個別解説している代表例を用途別に紹介します。
開発系MCPサーバー:GitHub・Playwright・Serena等の具体的な用途
導入が最も進んでいるのはソフトウェア開発の領域です。GitHub MCPサーバーを使うと、AIがリポジトリの参照・Issueの操作・プルリクエストの作成までを対話から実行できます。Playwright MCPはブラウザ操作の自動化をAIに開放し、Webアプリのテストや画面確認を任せる用途で使われています。
コーディング支援を深める方向では、Serena MCPのように、コードベースを構造として解析してAIに渡すサーバーもあります。いずれも「AIに何をさせたいか」に応じてサーバーを足す形になり、組み合わせの設計が開発生産性を左右します。インフラ側では、Terraform Registryの現行ドキュメントをAIに参照させるTerraform MCP Serverが同じ考え方の実装例です。
デザイン・自作系:Figma MCPとFastMCPによるサーバー開発の入り口
開発以外の職種に近い例としては、デザインツールのFigma MCPサーバーがあります。デザインデータの構造をAIが読み取れるようになり、デザインからコードへの変換や内容の確認作業に使われています。ほかにも、ファイルシステム・各種データベース・主要SaaSに公式・非公式のサーバーが存在する状況です。
既製のサーバーで足りない社内システム連携は、自作という選択肢があります。前節の最小実装は公式SDKだけで書きましたが、認証やリソース定義まで含めて手数を減らすならFastMCPというフレームワークが事実上の定番です。「社内の基幹データをAIから安全に参照させたい」という要件は、自作サーバーで実現するのが2026年時点の標準的な解になります。
仕様リビジョンの読み方:2026-07-28版で変わった接続の作法
MCPは公開から日が浅く、仕様そのものが動いています。手元の記事やSDKがどの版を前提にしているかを見分けられないと、動かない構成をそのまま真似することになります。
リビジョンはYYYY-MM-DD形式:現行版と旧方式の見分け方
公式のバージョニング規定によると、MCPの版番号はYYYY-MM-DD形式の文字列で、後方互換を壊す変更が入った日付を表します。互換を保った改善では版番号を上げないため、日付が飛んでいても更新が止まったわけではありません。2026年9月時点の現行版は2026-07-28で、それ以前の版として2025-11-25や2025-06-18が並びます。
読んでいる情報がどの版のものかは、参照先の仕様ページのURLに含まれる日付で判別できます。個々の機能には非推奨(Deprecated)の印が付き、公式の方針では移行先を示したうえで最低12か月は仕様に残す扱いです。設計の前提に据える機能は、この印の有無を確認してから採用してください。
接続の作法の変化:ステートレス化と版の宣言方法が変わった2点
2025-11-25以前は、接続直後の初期化のやり取りでクライアントとサーバーが使用する版を合意する方式でした。現行版はプロトコルレベルのセッションを持たないステートレスな設計に変わり、版はリクエストごとにメタ情報として宣言し、サーバーが個別に受理または拒否します。HTTPベースの接続では同じ値がMCP-Protocol-Versionヘッダにも載る形です。
あわせて、サーバーが対応する版・機能・識別情報を1往復で返す必須のRPCが追加され、クライアントは接続前に対応状況を確かめられるようになりました。旧方式との相互運用には後方互換の規定があるため、既存資産がすぐ動かなくなるわけではありません。SDK側の追随は先行しており、パッケージ分割とステートレス化への移行判断はMCP TypeScript SDK v2の移行要点で扱っています。
企業がMCPを導入する際のセキュリティリスクと運用統制の要点
検索上位の解説は仕組みと利便性の紹介で終わりがちですが、企業導入の成否を分けるのは統制設計です。MCPはAIに実行力を与える以上、リスク管理とセットで導入します。
主なリスク:悪意あるサーバー・過剰権限・プロンプトインジェクション
押さえるべきリスクは3系統です。第1が、悪意ある・品質の低いMCPサーバーの混入。サーバーは誰でも公開できるため、データを外部送信する不正な実装が紛れる余地が残ります。第2に権限の過剰付与で、書き込み権限を持つサーバーをAIに渡すと、誤判断がそのまま実データの破壊や誤送信につながります。
第3がプロンプトインジェクション経由の悪用です。AIが読み込むWebページや文書に「このデータを外部に送れ」といった攻撃指示が仕込まれていた場合、ツール実行力を持つAIはその指示を実行しかねません。ツールを持たないチャットAIなら被害は誤回答で済みますが、MCP接続では実害に直結します。読み込む情報源と実行できる操作の組み合わせで、リスクを評価してください。
仕様が定める禁止事項:トークン転送と同意省略が招く事故の型と対策
仕様側にも守るべき線が明文化されています。公式のセキュリティベストプラクティスは、MCPサーバーが自分宛てに発行されていないトークンを受け取ることを禁じました。クライアントから受けたトークンを検証せず下流APIへ流す設計は、監査証跡が壊れ、盗まれたトークンの中継地になる典型的な事故の型です。
ローカルで動くサーバーの扱いにも規定があります。ワンクリックでサーバーを登録できるクライアントは、実行されるコマンドを省略せず全文表示し、明示的な承認を得てから実行しなければなりません。加えて、サーバーが発行した状態ハンドルの所持を認証の代わりに扱うことも禁じられており、呼び出し元の検証は別途必要です。自社でサーバーを作る場合も、設計レビューの確認項目になります。
導入判断と統制:利用サーバーの承認制と権限最小化から始める手順
統制の実務は次の順序で組みます。①利用可能なMCPサーバーを承認制にし、提供元・権限範囲を審査してリスト化する。②接続時の権限は読み取り専用から始め、書き込み系操作は人の確認を挟む設定にする。③実行ログを残し、AIがどのツールで何をしたかを追跡できる状態を保つ。④社内システム連携は、必要最小限のAPIだけを開放する自作サーバーで実現する。データ基盤側の具体例はBigQuery MCPサーバーの6ツールと権限分離の設計、バックエンド側ではFirebase MCPサーバーのツール群と権限設計、SupabaseではSupabase MCPサーバーの接続手順とスコープ設計で扱っています。
MCP対応の社内基盤づくりはAIアプリ側・サーバー側・セキュリティ設計の3領域にまたがり、開発体制の整わない企業では手が止まりがちです。株式会社一創では、MCPサーバーの自作を含むAIエージェント基盤の設計・開発をAIエージェント開発として支援しています。進め方そのものを整理したい段階であれば、AIエージェントの作り方の3ルートと設計手順もあわせてご確認ください。
よくある質問
MCPについて検索されることが多い質問に答えます。
MCPは無料で使えますか?
規格自体はオープンソースで、利用にライセンス費用はかかりません。公開されているMCPサーバーの多くも無償です。ただし、サーバーが接続する先のサービス(SaaSのAPIなど)の利用料金や、AI側の利用料金は別途発生します。商用利用の可否は個々のサーバーのライセンスに従うため、契約と利用条件の両方を確認してください。
MCPサーバーは自分で作れますか?
作れます。公式SDKがPython・TypeScriptなど主要言語向けに提供されており、公式チュートリアルの前提はPython 3.10以上とPython MCP SDK 2.0.0以上です。本記事の中盤に、最小サーバーのコードとホストへの登録例を載せました。手数をさらに減らしたい場合の定番フレームワークはFastMCPの概要と基本的な仕組みの解説で紹介しています。
ChatGPTなどClaude以外のAIでもMCPは使えますか?
使えます。MCPはAnthropic発ですがオープン規格であり、2025年以降、OpenAIやGoogleを含む主要各社のサービス・開発ツールが対応を進めています。ただし対応の範囲はサービスごとに異なり、更新も頻繁です。利用したいAIサービスの公式ドキュメントで、対応状況を確認してから計画してください。
MCPと通常のAPI連携は何が違いますか?
APIがサービスごとに仕様の異なる個別の窓口であるのに対し、MCPはAI向けに形式を統一した共通の窓口です。従来は接続先ごとに仕様を調べて実装する開発がAIアプリ側に必要でした。MCPでは、ツールの機能が規格に沿った形でAIに提示されるため、AIは新しいツールでも追加開発なしに使い方を解釈できます。既存APIを置き換えるものではなく、APIをAIから使いやすく包む層です。
利用できるMCPサーバーはどこで探せますか?
一次情報は2か所です。1つは公式のMCPレジストリで、公開されているサーバーを横断で検索できます。もう1つが参照実装のリポジトリで、代表的なサーバーの実装を読めます。業務利用では提供元の信頼性と要求される権限を確認し、出所不明のサーバーを接続しない運用を徹底してください。クラウド事業者が自ら提供する例としては、AWS MCP ServerのGA版の接続手順と権限設計で扱っているマネージドサーバーがあります。
関連記事
- AIエージェントとは?生成AIとの違い・仕組みと業務に組み込む判断基準を解説:エージェント本体の解説です。
- FastMCPとは何か?その概要と基本的な仕組みを解説:自作の定番フレームワークの入門です。
- Streamable HTTPとは?MCPの新トランスポートとSSEとの違いを解説:リモート接続の方式選定の解説です。
- MCP TypeScript SDK v2とは?パッケージ分割とステートレス化の移行要点:SDK側の追随を追った解説です。
- GitHub MCPサーバーの基本的な仕組みとその利用目的を解説:開発業務での代表的な利用例です。
- Figma MCPサーバーとは?料金・使い方・対応クライアントを徹底解説:デザイン領域での具体例です。
- Serena MCPとは?仕組み・導入手順・Claude Code連携を実務目線で解説:コーディング支援を深める例です。