メインコンテンツまでスキップ

モデルコンテキストプロトコル(MCP)とは何ですか?

Figma

モデルコンテキストプロトコル(MCP)とは何ですか?を共有

AIモデルはますます強力になっていますが、一つの問題があります。それは、トレーニング中に学習した情報にのみアクセスできるため、知っていることやできることが限られているということです。それは、非常に賢いアシスタントを雇うようなもので、そのアシスタントは自分の頭の中にあることだけを使えて、新しい情報を調べたり、ファイルを確認したり、実際にタスクを行ったりすることはできません。

大規模言語モデル(LLM)は、コンテキストにアクセスし、他のツールやアプリケーションでアクションを取ることができると、はるかに強力になります。最近まで、これらのモデルが他のアプリと接続するための統一された方法はありませんでした。モデルコンテキストプロトコル(MCP)は、もともとAnthropicによって開発され、AIエージェント型システムが他のアプリケーションとインターフェースするための標準的な方法、「AIのためのUSB-Cコネクター」として急速に普及しています。

FigmaがMCPをサポートする方法についての詳細は、FigmaのMCPサーバーの紹介を読んでください。MCPとは何か、どのように機能するのか、そしてなぜそれが重要なのかを深掘りしてみましょう。

MCPとは何ですか?

モデルコンテキストプロトコル(MCP)は、AIを活用したシステムがソフトウェアアプリケーション、ツール、プラットフォームと接続するためのオープンソース標準です。

MCPは双方向通信プロトコルです。一方では、データプロバイダーとアプリ開発者が、LLMがデータにアクセスし、自分たちのソフトウェアでアクションを実行できるようにしたいと思っています。彼らはMCPサーバーと呼ばれるものを構築することでMCPをサポートしています。一方では、AIを活用したツールやエージェント型のシステムを構築する開発者がいます。彼らはMCPクライアントを実装しており、これによりAIモデルがMCPサーバーに接続してコンテキストを取得し、他のアプリでタスクを完了することができます。

たとえば、CursorのようなAIコーディングツールには、FigmaやGitHubが提供するMCPサーバーと接続するMCPクライアントが含まれているかもしれません。クライアントとサーバー間の通信は、標準プロトコルを使用して行われます。これは、HTTPがインターネットの通信プロトコルを定義する方法と同様です。MCPは、送信できるメッセージの種類、フォーマット方法、認証の仕組みなどを指定しています。

問題: なぜMCPが必要なのか

次の休暇のためのフライトを予約したり、週次売上レポートのための分析データを引き出したり、新機能のプロトタイプを作成したりする—これらのタスクは、LLMのトレーニングデータを超えて、アプリやサービスの幅広いエコシステムにまで及ぶコンテキストを必要とします。AIアシスタントは、より多くのコンテキストを持つほど、リクエストの具体的なニュアンスを理解し、高品質な結果を提供することができます。

デザインファイルからコードを生成するためにAIコーディングツールを使用するシナリオを考えてみてください。あるLLMがファイルのスクリーンショットを見て、そのトレーニングデータを使用してピクセルを解釈する場合、おおまかなプロトタイプを作成できるかもしれません。しかし、実際に役立つ最終製品にするためには、特定のバリアブル、コンポーネント、スタイル、さらには機能を説明する擬似コードのような、より多くの文脈が必要です。この種のコンテキストはAIにとって非常に貴重ですが、通常は他のツール(Figmaなど)の奥深くに存在します。

MCP 以前は、AI エージェント型ツールに取り組むすべての開発者が、外部アプリやサービスとカスタム統合を作成しなければならず、その結果、開発が遅くなり、エコシステムが分断されることがありました。各アプリがデータと機能をわずかに異なる方法で公開しているため、新しい統合にはかなりの量の事前作業が必要になります。

分散型と集中的なアクセスパターンの比較。LLMアプリが個別に複数のデータソースに接続するのと、共有アクセスレイヤーを介してルーティングするパターン。分散型と集中的なアクセスパターンの比較。LLMアプリが個別に複数のデータソースに接続するのと、共有アクセスレイヤーを介してルーティングするパターン。
導入前と導入後: MCPがもたらす変化

MCPは、「一度書けばどこでも使える」というアプローチです。アプリ開発者は、あらゆるAIエージェント型システムが使用できる単一のMCPサーバーを書き、エラー処理のような便利な機能と共に標準的なツールとデータを提供することができます。同様に、AIシステムはプロトコルを実装し、現在または将来存在する任意のMCPサーバーに接続することができます。

MCPの起源

MCPは、Claude デスクトップがローカルファイルシステムのようなデータソースを簡単に扱えるようにするため、2024年夏にAnthropicで開始されました。著者たちは、MicrosoftのLanguage Server Protocol (LSP)からインスピレーションを受けました。LSPは、統合開発環境(IDE)が多くの異なるプログラミング言語で、コンテキストハイライトやコード補完といった機能をサポートするための標準です。

プロトコルを構築し、内部で使用した後、Anthropicは2024年11月にMCPをオープンソース化し、プロトコルの仕様ドキュメンテーション、およびSDK (例: Python)を公開しました。

その後、採用は大幅に増加しました。2025年1月と2月に、多くのAI IDE、例えばCursorWindsurfなどがMCPをサポートし始めました。3月に、OpenAIはMCPサポートを追加し、GitHubはその直後にMCPサーバーをリリースしました。成熟した製品もMCPを採用しています: Microsoft Windowsは、今後数ヶ月以内にこのプロトコルをサポートすると発表しました。

ダブルクリック: エージェント型AIにとってMCPとは何を意味するか?

MCPの急激なブームは、エージェント型ウェブに対する興奮を大いに高めています。これは、AI と他のすべてのツールをつなぐために必要だった欠けたパズルのピースでしょうか?

続きを読む

MCPの仕組み

MCPは基本的にリクエストとレスポンスのやりとりです: LLMがデータを要求したりアクションをトリガーしたりし、外部アプリがそれに応えるのです。ネットワーキングの用語では、MCPはクライアントサーバーアーキテクチャを採用しており、一方(クライアント)がリクエストを送り、もう一方(サーバー)がデータを返すか、アクションを実行します。

MCPの仕様は、サーバーがクライアントに提供する3種類の機能を定義しています。

  • リソース: データベースのレコード、ファイル、スクリーンショット、またはコードブロックのようなアプリがLLMに提供するデータおよびコンテンツ。
  • ツール: アプリ内でアクションを実行する機能です。例えば、PostgreSQL MCPサーバーはデータベース内でSQLクエリを実行するツールを公開することがあります。
  • プロンプト: AIシステムが利用できる、アプリのリソースとツールにうまく対応するように設計された定型文のテンプレートとワークフロー。

MCPは、サーバーがリソース、ツール、プロンプトをクライアントに標準的な方法で公開する方法を定義しています。これには以下が含まれます:

  • レスポンスフォーマット: データはJSONブロブ、SQL行、または生の画像として送信できます。MCPサーバーは受け取ったものをMCPクライアントが期待する標準形式(JSON-RPC 2.0)に変換します。
  • コマンド解析: MCPサーバーは翻訳者として機能し、LLMからのリクエストをアプリが使用できるコマンド、例えばAPIコールに変換します。
  • エラー処理: MCPは標準エラーコードを定義し、LLMにエラーを返して再試行させたり、ユーザーに助けを求めるようにします。
  • ツールの発見: MCPサーバーは、そのサーバー上で利用可能なツールを一覧表示する関数を公開しており、AIシステムが外部アプリで実行できるアクションを迅速に把握できます。

アーキテクチャ: MCPホスト、クライアント、サーバー

MCPは、ホスト、クライアント、サーバーを含む、ネットワーキングで一般的なアーキテクチャパターンに依存しています。プロトコルは、各役割に対する特定の責任を定義しています。

LLMアプリ(MCPホスト)がMCPクライアントを通じて、GitHub API、ローカルファイル検索、およびSQLクエリのための異なるMCPサーバーにユーザーのクエリをルーティングする方法を示す図。LLMアプリ(MCPホスト)がMCPクライアントを通じて、GitHub API、ローカルファイル検索、およびSQLクエリのための異なるMCPサーバーにユーザーのクエリをルーティングする方法を示す図。
MCPの仕組み
  • MCPホスト: ホストは、クライアントとサーバー間の発見、権限、通信を管理します。通常、ホストは製品やプラットフォームを指します。例えば、Windows OSやClaude Desktopなどで、ユーザーがAIエージェントにアクセスしてタスクを実行します。モデルが外部アプリへのアクセスを必要とする場合、ホストはそのアプリのMCPサーバーと対応するクライアントを起動し接続します。
  • MCPクライアント: クライアントはMCPサーバーにコネクションし、1つのサーバーに1つのクライアントがコネクションと維持を行います。クライアントは、LLMとMCPサーバー間でリクエストとレスポンスをやり取りします。
  • MCPサーバー: サーバーは、Figma、Google Drive、Postgresのような外部システムに直接接続し、LLMにデータと機能へのアクセスを提供します。MCPサーバーはMCPクライアントからのリクエストを受け取り、それらをAPIコールやデータベースクエリなどの外部アプリケーション用のコマンドに変換します。また、それらはアプリの応答を受け取り、標準形式に解析します。アプリ開発者がMCPサーバーを実装することで、LLMがアクセスできるものを制御でき、プロトコルはセキュリティと権限に関するガイドラインを提供します。

パーツがどのように一緒に組み合わさるのかを見るために、FigmaのMCPサーバーを使ったサンプルワークフローを実行してみましょう。

  • ユーザーは、MCPが有効になっているAIコーディングツールのCursorをコードリポジトリで開きます。
  • ユーザーはCursorでLLMに最新のFigmaファイルを取得し、それをコードベースに実装するように依頼します。
  • CursorはFigma MCPサーバーと対応するMCPクライアントを起動します。
  • LLMは、サーバー(クライアント経由)から利用可能なプロンプト、リソース、ツールのリストを受信します。
  • LLMは、使用したいツールとそれに関連するパラメータ(例: FigmaファイルID)を含むメッセージをサーバーに送信します。サーバーはこれをAPIリクエストにフォーマットし、そのリクエストをFigmaのAPIを介して送信します。
  • サーバーはFigma APIの応答からファイルデータを待機し、それを文字列にフォーマットしてLLMに返送します(クライアントを経由して)。
  • Figmaからのすべての追加コンテキストを使用して、LLMはCursor内で関連するコードの生成を開始できます。

MCPの利点: AI統合における重要性

開発者は、MCPがLLMをアプリに接続するのを簡素化するため、採用しています。カスタム統合と比較して、MCPにはいくつかの利点があります。

第一に、AIエージェント型システムの開発者は、MCPを一度統合するだけで、どのMCPサーバーも使用できるようになります。外部アプリケーション開発者は1つのMCPサーバーを作成するだけで、MCP対応の任意のAIツールがそれに接続可能です。

第二に、すべてのMCPサーバーとMCPクライアントが同じコアインターフェースを提供しなければならないため、サーバーやクライアントの切り替えは容易です。つまり、開発者とユーザーはDropboxやGoogle Docs、またはSlackやMicrosoft Teamsの間を簡単に切り替えることができます。

最後に、AI製品がMCPを通じて状況対応能力を高めることで、AIツールはユーザーにとってより使いやすいものになります。エコシステムの標準プロトコルは、開発者がボイラープレートの統合コードを記述する時間を減らし、新しい機能を開発する時間を増やすことを意味します。

MCPと従来のAPIの違いとは?

なぜAPIではなくMCPを使うのでしょうか?これはよくある質問です。APIでもアプリ内の多くの同じデータや操作にアクセスできるためです。実際、多くのMCPサーバーは、データやアクションを表に出すために、裏でAPIを使用しています。

簡潔に言えば、MCPはすべてのAPIに対して1つのコマンドセットを使用できるようにAIアシスタントをサポートし、統合を大幅に簡素化します。APIと直接やり取りする場合、リクエストやレスポンス、リトライのためにカスタムコーディングする必要がありますが、MCPを使用すれば、MCPサーバーをインポートするだけで同じ結果を得ることができます。MCPサーバー間の切り替えは簡単ですが、APIを切り替えるには新しいコードセットを書く必要があります。

MCPはLLMの使用状況に対してもより最適化されています。MCPは、LLMがシステムにアクセスするために必要なすべてのことが、構造化された方法で明確に定義され、適切に文書化されていることを保証します。アドホックなAPI定義は、重要な説明が欠けている可能性があり、AIが理解できない方法でデータを提供したり、簡単に誤解したりすることがあります。

MCPとAIエージェントの協力関係

AIエージェントとは、現実世界であなたのために行動を起こすAIのことです。MCPは、AIエージェントの構築をはるかに簡単にします。開発者は、APIを一つ一つ統合する代わりに、プロトコルを実装してAIツールがあらゆるMCP対応アプリケーションで動作するようにすることができます。

MCPエコシステムが成長するにつれて、エージェントもより強力になります。AIエージェントは、ユーザーのワークスペース内で複数のツール間で計画を立て、行動できる必要があります。エージェントが対応できるツールが多ければ多いほど、ユーザーに対する有用性が高まります。MCPを使用すると、エージェントはタスクの自動化のためのツールを簡単に見つけて使用することができます。

MCPとA2A: プロトコルがどのように補完し合うか

MCPは唯一の新しいLLMプロトコルではありません。最近、GoogleはAgent2Agent (A2A)プロトコルを発表しました。しかし、開発者はどちらか一方を選ぶ必要はありません。これらのプロトコルは異なる問題を解決し、実際にそれぞれを補完します。

MCPは、AIシステムが世界について学び、それにおいて行動を取ることを可能にすることに重点を置いています。A2Aは、AIシステムが互いの作業や意図についてコミュニケーションを取るのを助けることに焦点を当てています。つまり、協力、作業の割り当て、論争、委任、または交渉を行うためです。

二人のエージェントがA2Aを使用して、どちらが作業を行い、どちらがその作業を監督するかを決定するかもしれません。その後、彼らはMCPを使用して、行うべき作業や使用するデータについてお互いに指示を与えるかもしれません。

MCPとAIの統合の未来

MCPチームはプロトコルを継続的に更新しており、新しいリリースは1か月に何度も出荷されています。MCPはオープンスタンダードでもあり、より大きなAIコミュニティがロードマップに貢献することができます。今後のリリースでは、セキュリティに重点を置くことが予想されます: 認証、認可、特定の分野(医療や金融など)におけるデータフィルタリングまたはプライバシー機構に関するものです。

もしMCPが広く採用されるようになると、AI産業全体の多くの部分がMCPの利用を最適化し始めるかもしれません。モデル開発者は、自分たちのトレーニングデータにMCPツールの使用状況を含め始めるかもしれませんし、LLMオーケストレーションのフレームワーク(例: LangChain)は、MCPを彼らのユースケースで一級の市民としてサポートするかもしれません。

時間とともに、MCPはAIをツールやサービスの全デジタル領域と接続する、事実上の標準になる可能性があります。外部システムからのデータとアクションをLLM体験に組み込むことは、AIエコシステムにおいてますますプラグアンドプレイの形態をとるようになるでしょう。開発者にとって、それは特注のラッパーが少なくなり、より良いAIツールがあり、ユーザーが本当に価値を見いだす機能を構築するための時間が増えることを意味します。データが豊富なアプリを出荷する企業にとって、すべてのMCP対応AIプラットフォームとの即時の互換性を意味します。エンドユーザーにとって、それはより優れたAIアプリケーションや、ようやく正しい文脈を取得し、正しいボタンを押し、面倒な手間をかけずに実際の作業を完了できるパーソナルアシスタントを解放します。

Figmaを直接開発ワークフローに組み込みましょう

Dev Mode MCPサーバーを使用すると、VS Code、Cursor、Windsurf、Claude Codeなどのツールが直接Figmaに情報を届けることができ、エージェントがデザインをより効果的にコードに変換できるようになります。

詳細はこちら

FAQ

モデルコンテキストプロトコル(MCP)は、AIを活用したシステムが外部データやツールにアクセスするための標準を定義します。

はい、MCPはオープンソースです。Anthropicは2024年にMCPをオープンソース化しました。それ以来、MCPチームは公開ロードマップを維持し、外部開発者からの貢献を受け入れてきました。誰でもMCPのウェブサイトにアクセスして、SDKや例のクライアントやサーバーと共に完全な仕様を確認できます。

いいえ、MCPサーバーは、設定を通じてClaude DesktopのようなMCPホストアプリケーションに簡単に追加できます。サーバーを追加した後、LLMにデータの読み取りや MCP サーバーを介してアクションを実行するよう指示できます。例えば、FigmaのMCPサーバーをCursorに追加した後、CursorにFigmaのデザインを取得して実装するよう依頼することができます。

データを多く扱うアプリケーションやツールを多用するアプリケーションは、MCPの恩恵を最も受けます。パーソナルアシスタント製品はその一例です。たとえば、「今日の準備を手伝って」といった問い合わせに対して、ユーザーのカレンダー、ドキュメント、CRM、最近のメッセージからデータを取得し、その日の予定やタスクの要約を作成できます。MCPがなければ、これらのデータソースそれぞれにカスタムで扱いにくいコードが必要になります。MCP統合を利用すると、個人アシスタントはそれらすべてを一度に扱うことができます。