MCPとは?AIと外部ツールをつなぐ仕組み・特徴・使い方・活用事例を解説
最終更新日:2026年08月21日
記事監修者:森下 佳宏|BizTech株式会社 代表取締役

2024年11月、Anthropic社が、AIアシスタントとデータソース間の接続を標準化する新しいオープンスタンダードとなる「Model Context Protocol(MCP)」を発表しました。 MCPは、AIシステムがコンテンツリポジトリ、ビジネスツール、開発環境などの外部データソースと簡単に連携し、より関連性の高い応答を生成できるように設計されています。
本記事では、MCP(Model Context Protocol)の仕組みや特徴、Claudeでの使い方、料金、活用事例まで徹底解説します。
LLMに強い会社・サービスの選定・紹介を行います
今年度LLM相談急増中!紹介実績1,000件超え!

・ご相談からご紹介まで完全無料
・貴社に最適な会社に手間なく出会える
・AIのプロが貴社の代わりに数社選定
・お客様満足度96.8%超
・GPT、Claude、Gemini、Llama等の複数モデルに対応
完全無料・最短1日でご紹介 LLMに強いAI会社選定を依頼する
LLMに強いAI開発会社をご自分で選びたい場合はこちらで特集していますので併せてご覧ください。
目次
MCPとは?

MCP(Model Context Protocol)は、LLMやAIエージェントを用いたアプリケーションが、外部のデータソースやツール、サービスと標準化された方法で接続・連携するためのオープンプロトコルです。
2024年にAnthropicが公開し、2025年12月にはLinux Foundation傘下のAgentic AI Foundation(AAIF)へ寄贈されました。現在は、Anthropicだけでなく複数の企業・コミュニティが参加するベンダーニュートラルなオープン標準として開発されています。
このプロトコルは、各システムやサービスごとに個別の連携コードを実装する必要をなくし、統一されたインターフェースを通じて多様なデータやツールにアクセスできる環境を提供します。
例えるなら、MCPはAIアプリケーション向けの「USB-Cポート」のようなものであり、異なるデバイスやサービス間の接続方法を標準化することで、拡張性と互換性の高いエコシステムを実現しています。
MCPとClaudeの関係
MCPはAnthropicが最初に公開したプロトコルですが、Claude専用の技術ではありません。現在はLinux Foundation傘下のAgentic AI Foundation(AAIF)のプロジェクトとして運営されており、ChatGPT、Claude、Gemini、Microsoft Copilot、Visual Studio Codeなど、多くのAIサービスや開発ツールで採用されています。
Anthropic自身は、このMCPという技術を活用して、Claudeが外部ツールと連携する機能「Claude Integrations」を提供しています。Claude Integrationsは、MCPの強力な活用事例の一つです。
MCPはオープンな仕様として公開され、TypeScriptやPythonなどのSDKもオープンソースで提供されています。特定のAIベンダーに限定されず、さまざまなAIアプリケーションや開発ツールで採用・実装可能です。
Claude DesktopやClaude APIが初期のMCPホストとして代表的な存在になっていますが、Claudeに限定された技術ではありません。
MCPはLinux Foundation傘下のオープン標準へ
MCPは2024年にAnthropicによって公開されましたが、2025年12月にLinux Foundation傘下のAgentic AI Foundation(AAIF)へ寄贈されました。
現在はAnthropicだけでなく、AWS、Google、Microsoft、OpenAI、Cloudflareなど多数の企業が参加するベンダーニュートラルなコミュニティのもとで仕様策定が進められています。
これにより、特定のLLMやクラウドサービスに依存しない、AIエージェントとツール・データを接続するための共通標準として利用が拡大しています。
LLMに強い会社・サービスの選定・紹介を行います
今年度LLM相談急増中!紹介実績1,000件超え!

・ご相談からご紹介まで完全無料
・貴社に最適な会社に手間なく出会える
・AIのプロが貴社の代わりに数社選定
・お客様満足度96.8%超
・GPT、Claude、Gemini、Llama等の複数モデルに対応
完全無料・最短1日でご紹介 LLMに強いAI会社選定を依頼する
MCPの活用イメージ
MCPを利用することで、以下のような高度な連携が可能になります。
- Google Drive上のドキュメントを検索・要約
- Slackのチャット履歴を参照し、文脈に即した応答を生成
- GitHubのリポジトリからコードやコミット履歴を取得し、コードレビューや開発支援を実施
- ローカルPC内のファイルやデータベースにアクセスして、社内業務をサポート
これらはすべて、MCPに対応したLLMアプリケーションから、統一されたプロトコルを通じて実現されます。
MCPの仕組み:構成とアーキテクチャ

MCPは、以下の主要コンポーネントからなるクライアント・サーバ型のアーキテクチャに基づいて設計されています。
| コンポーネント | 役割・説明 |
|---|---|
| MCPホスト(Host) | Claude DesktopやIDEなど、MCPを利用するAIアプリケーション本体。内部にMCPクライアントを搭載し、サーバとの通信を開始する役割を持つ。 |
| MCPクライアント(Client) | ホスト内で動作し、MCPサーバとの通信を担当。サーバーが提供するツールやリソース、プロンプトなどを検出し、リクエストの送信やレスポンスの受信を行う。 |
| MCPサーバ(Server) | ローカルファイル、データベース、外部APIなど、特定のデータソースやツールをMCP経由で公開する軽量なサービス。 |
| ローカルデータソース | PC内のファイルやデータベース、社内システムなど、MCPサーバが安全にアクセスできるローカル環境の情報源。 |
| リモートサービス | インターネット越しに接続可能な外部APIやクラウドサービス(例:Google Drive、Slack、GitHubなど)。MCPサーバ経由でアクセス。 |
MCPの接続方式
MCPでは、利用環境に応じて複数の接続方式を利用できます。
- stdio:Claude DesktopやIDEなどから、ローカルで起動したMCPサーバーと標準入出力を使って通信する方式
- Streamable HTTP:ネットワーク上のリモートMCPサーバーへHTTPで接続する方式
初期のMCPではHTTPとServer-Sent Events(SSE)を組み合わせた旧HTTP+SSE transportも利用されていましたが、現在はStreamable HTTPに置き換えられています。互換性維持のため旧方式が使われる場合もありますが、新規実装ではStreamable HTTPが推奨されます。
MCPとAPIの違い
MCPとAPIは、どちらもシステム同士を接続するための仕組みですが、役割が異なります。
APIは、特定のサービスやシステムが提供する機能・データを外部から利用するためのインターフェースです。例えば、GitHub API、Slack API、Google Drive APIなどがあり、それぞれ仕様や認証方法、呼び出し方が異なります。
一方、MCPは、AIアプリケーションやAIエージェントが、さまざまな外部ツールやデータソースへ共通の方法で接続するための標準プロトコルです。
つまり、APIそのものを置き換えるのではなく、APIやデータベース、ローカルファイルなどをMCPサーバー経由でAIから利用しやすくする仕組みと考えると分かりやすいでしょう。
| 比較項目 | API | MCP |
|---|---|---|
| 主な目的 | サービスやシステム間で機能・データを連携する | AIアプリケーションと外部ツール・データを標準化された方法で連携する |
| 接続対象 | Webサービス、業務システム、データベースなど | API、データベース、ローカルファイル、SaaS、各種ツールなど |
| 接続方法 | APIごとに仕様・認証・エンドポイントが異なる | MCPという共通仕様でツールやリソースをAIへ公開する |
| AIとの関係 | AIが利用する場合、APIごとの実装やツール定義が必要 | AIが利用可能なツールやリソースを共通形式で検出・利用できる |
| 主な利用者 | 一般的なアプリケーションやシステム | LLMアプリケーション、AIエージェント、開発ツールなど |
例えば、ClaudeからGitHubを操作する場合、従来はGitHub APIの仕様に合わせて認証やAPI呼び出しを個別に実装する必要がありました。
MCPを利用すれば、GitHub APIなどを扱うMCPサーバーがツールとして機能を公開し、ClaudeなどのMCP対応AIアプリケーションから共通の仕組みで利用できます。
そのため、APIが「各サービスとの接続口」であるのに対し、MCPは「AIがさまざまな接続口を共通の方法で扱うための標準規格」と整理できます。
MCPとAgent2Agent(A2A)との違い
MCPと混同されがちな技術用語にAgent2Agent(A2A)があります。
MCPは「LLMエージェント↔データ/ツール」をつなぐプロトコルで、単一エージェントが外部情報を取得して推論を強化します。
これに対してA2Aは「エージェント↔エージェント」協調用で、クライアント→リモートへのタスク移譲により複数エージェントが並列連携します。
つまりMCPが外部環境へ拡張するUSB-Cなら、A2Aは異種エージェントを束ねる「ハブ」という違いがあり、両者は補完関係にあります。
関連記事:「Agent2Agentとは?AIエージェントを繋ぐプロトコルの特徴や仕組み」
LLMに強い会社・サービスの選定・紹介を行います
今年度LLM相談急増中!紹介実績1,000件超え!

・ご相談からご紹介まで完全無料
・貴社に最適な会社に手間なく出会える
・AIのプロが貴社の代わりに数社選定
・お客様満足度96.8%超
・GPT、Claude、Gemini、Llama等の複数モデルに対応
完全無料・最短1日でご紹介 LLMに強いAI会社選定を依頼する
MCPの特徴とできること
MCPの主な特徴と機能は以下のとおりです。
- オープンな標準仕様:仕様やSDKが公開されており、特定のAIベンダーに限定されず実装・利用できる
- 双方向接続:AIモデルと外部システム間の双方向の通信を可能にし、AIが外部データにアクセスするだけでなく、外部システム上でのアクションも実行可能にする
- 認証・認可に対応:リモートMCPサーバーではOAuthなどを利用した認証・認可に対応しており、適切なアクセス制御を設計できる
- 拡張性:開発者が新しいデータソースやツール(PC内のファイル、社内システム、GitHub等)を容易に追加できるように設計されており、AIシステムの機能拡張が容易
MCPの料金
MCP自体はオープンな標準プロトコルであり、仕様やSDKを利用するための利用料はありません。ただし、MCPを利用するAIサービス、モデルAPI、MCPサーバーのホスティング、接続先の外部サービスなどには、それぞれ料金が発生する場合があります。
ClaudeでMCPを利用する場合は、Claudeの利用プランや利用する機能に応じて料金が発生します。料金体系やMCP対応範囲は変更される可能性があるため、最新のClaude公式料金ページを確認してください。
Claude MCPの使い方
ここでは、Claude(デスクトップ)でMCPを使う方法について解説していきます。
基本的な流れ
ClaudeでMCPを使う際の一般的な手順は以下の通りになります。
- MCPサーバーの準備
MCPの機能を利用するためには、まずMCPサーバーを構築または利用する必要があります。サーバーは、リソース (ファイルのようなデータ)、ツール (LLMが実行できる関数)、プロンプト (特定のタスクを支援するテンプレート) などの機能を提供できます。天気予報を取得するサーバーやGitHubを操作するサーバーなどが例として挙げられます。 - Claude Desktopの設定
MCPサーバーをClaudeで使用するためには、Claudeの設定ファイル (claude_desktop_config.json) にサーバーの情報を登録する必要があります。 - Claude Desktopでの利用
設定後、Claude Desktop内で指示を入力することで、登録したMCPサーバーの機能を利用できます。Claudeは、利用可能なツールを分析し、どのツールを使用するかを決定します。
具体的な流れ
ここでは、簡単な天気予報サーバーをPythonで構築する手順について解説していきます。OSはWindowsを使用しており、Pythonのバージョン3.10以上がインストール済みであることを前提としています。
Pythonのインストールが済んでいない場合は、Pythonのダウンロードサイトから、適切なバージョンを選択しインストールをしましょう。
1. Claudeのデスクトップアプリをインストール
デスクトップアプリをインストールしていない場合は、以下の手順に従い、インストールを行いましょう。
まず、ダウンロードページからファイルをダウンロードします。
次に、ダウンロードが完了したらファイルを開き、アプリのインストールを行います。
最後に、アプリのインストールも完了したら、アプリを開きアカウントのサインインをします。Googleアカウントなどでサインインが可能です。
2. 環境の設定
- PowerShellを起動
- プロジェクトを作成
uv init weathercd weather以上を順に実行することで、weatherという名前のプロジェクトを作成し、weatherに移動することができます。uvがインストールされていない場合は
pip install uvを実行しましょう。
- 仮想環境の作成
uv venv.\.venv\Scripts\activate以上により、仮想環境を作成し、それを起動することができます。
- MCPのCLI 機能付きパッケージをインストール
uv add mcp[cli] httpx - サーバーファイルの作成
new-item weather.py
3. サーバーの構築
weather.pyに以下の内容を書き込みます。これにより、天気警報や天気予報の情報を取得することができるようになります。
from typing import Any
import httpx
from mcp.server.fastmcp import FastMCP
# Initialize FastMCP server
mcp = FastMCP("weather")
# Constants
NWS_API_BASE = "https://api.weather.gov"
USER_AGENT = "weather-app/1.0"
async def make_nws_request(url: str) -> dict[str, Any] | None:
"""Make a request to the NWS API with proper error handling."""
headers = {
"User-Agent": USER_AGENT,
"Accept": "application/geo+json"
}
async with httpx.AsyncClient() as client:
try:
response = await client.get(url, headers=headers, timeout=30.0)
response.raise_for_status()
return response.json()
except Exception:
return None
def format_alert(feature: dict) -> str:
"""Format an alert feature into a readable string."""
props = feature["properties"]
return f"""
Event: {props.get('event', 'Unknown')}
Area: {props.get('areaDesc', 'Unknown')}
Severity: {props.get('severity', 'Unknown')}
Description: {props.get('description', 'No description available')}
Instructions: {props.get('instruction', 'No specific instructions provided')}
"""
@mcp.tool()
async def get_alerts(state: str) -> str:
"""Get weather alerts for a US state.
Args:
state: Two-letter US state code (e.g. CA, NY)
"""
url = f"{NWS_API_BASE}/alerts/active/area/{state}"
data = await make_nws_request(url)
if not data or "features" not in data:
return "Unable to fetch alerts or no alerts found."
if not data["features"]:
return "No active alerts for this state."
alerts = [format_alert(feature) for feature in data["features"]]
return "\n---\n".join(alerts)
@mcp.tool()
async def get_forecast(latitude: float, longitude: float) -> str:
"""Get weather forecast for a location.
Args:
latitude: Latitude of the location
longitude: Longitude of the location
"""
# First get the forecast grid endpoint
points_url = f"{NWS_API_BASE}/points/{latitude},{longitude}"
points_data = await make_nws_request(points_url)
if not points_data:
return "Unable to fetch forecast data for this location."
# Get the forecast URL from the points response
forecast_url = points_data["properties"]["forecast"]
forecast_data = await make_nws_request(forecast_url)
if not forecast_data:
return "Unable to fetch detailed forecast."
# Format the periods into a readable forecast
periods = forecast_data["properties"]["periods"]
forecasts = []
for period in periods[:5]: # Only show next 5 periods
forecast = f"""
{period['name']}:
Temperature: {period['temperature']}°{period['temperatureUnit']}
Wind: {period['windSpeed']} {period['windDirection']}
Forecast: {period['detailedForecast']}
"""
forecasts.append(forecast)
return "\n---\n".join(forecasts)
if __name__ == "__main__":
# Initialize and run the server
mcp.run(transport='stdio')
4. サーバーとClaudeの接続
claude_desktop_config.jsonというファイルを編集し、接続の設定をしていきます。
VS Codeがインストールされている場合は、
code $env:AppData\Claude\claude_desktop_config.jsonでファイルを編集することができます。インストールされていない場合は、以下の手順でファイルを開きましょう。
- 設定を開く
- 開発者の設定を開き、構成を編集をクリック

- 開かれたエクスプローラーからclaude_desktop_config.jsonを開く
claude_desktop_config.jsonファイルには以下の内容を書き込みます。なお、
"C:/Users/username/example/weather"の部分はあくまで例ですので、自身のweatherディレクトリのパスに書き換えてください。
パスがわからない場合は、
pwdと入力することで、PowerShell上での現在のディレクトリのパスが表示されるので、weatherディレクト上であることを確認した上で実行しパスを確認してください。
{
"mcpServers": {
"weather": {
"command": "uv",
"args": [
"--directory",
"C:/Users/username/example/weather",
"run",
"weather.py"
]
}
}
}5. 天気予報サーバーの利用
ここまでの設定をClaudeに反映させるために、アプリの再起動を行います。以下の画像のように、アプリの左上のメニューバーから「終了」を選択することで再起動ができます。

Claudeのアプリを再起動し、上手く接続が完了している場合はテキストボックスにハンマーアイコンが表示されるようになります。数字は使えるツールの数を示しています。

例えば、「サンフランシスコの天気は?」と聞くと5日分の天気予報を答えてくれます。参照元にない情報を答えることはできないので、アメリカ国内の天気を聞き、動作を確認してみましょう。

詳しい解説は、MCP公式のドキュメントをご参照ください。
エラーが出て、接続設定ができない場合はMCPデバッグガイドを確認しながら解決を目指しましょう。
また、以下のエラーメッセージからMCP設定を開き、ログフォルダを確認するとエラーの原因が特定しやすくなります。

「MCP設定を開く」を押すと以下のように設定が開かれます。「ログフォルダを開く」からログフォルダの確認ができます。フォルダ内のファイルをChatGPTやClaudeに読み込ませることで、原因を特定してくれることもあります。

Claude MCPの活用事例
Claude MCPの具体的な活用事例を2つご紹介します。
ローカルファイルへの情報の自動保存
先ほど構築した天気予報サーバーのweather.pyに以下の関数を追加し、get_alertやget_forecast関数で呼び出すようにすることで、得られた情報をローカルのjsonファイルに保存できるようにしてみました。
def save_to_file(data: dict[str, Any]):
try:
with open(SAVE_PATH, "w", encoding="utf-8") as f:
json.dump(data, f, indent=4, ensure_ascii=False)
except Exception as e:
print(f"Error saving file: {e}")これにより、画像のようにローカルのファイルに得られた天気の情報を自動保存してくれるようになりました。

GitHubとの連携
MCPを利用すると、ClaudeなどのMCP対応AIアプリケーションをGitHubと連携し、リポジトリやIssue、Pull Requestなどの情報を参照・操作できます。
現在はGitHub公式のMCP Serverが提供されているため、導入する際はGitHub公式ドキュメントに記載された最新の設定方法を利用してください。
MCPを通じてGitHubへ接続することで、コードの参照、Issueの確認、Pull Requestの操作などをAIエージェントのワークフローへ組み込むことができます。
その他活用事例
X上でも、Claude MCPを活用した事例が多く報告されています。下記でいくつか紹介します。
これ騒がれてないけどすごいな。Claude CodeのMCPをデスクトップ版のClaudeと連携すれば、なんと「定額20ドル」の範囲内で擬似Cursorエージェントを動かせるらしい。PC内部ファイルの読み込みや編集・ターミナルの操作も可能。本家には及ばないけど金欠対策のコスパ重視選択肢としてはアリかと…👇🧵 pic.twitter.com/bUIshlPVSD
— すぐる | ChatGPTガチ勢 𝕏 (@SuguruKun_ai) March 22, 2025
🎵💿Built an MCP that lets Claude talk directly to Ableton. Now you can create music with just prompts!
Here’s a demo of me creating a lush, 80s synthwave track in just two prompts. It picks the right instruments, creates melodies, and adds effects like reverb and distortion 🔊 pic.twitter.com/fsE7iqthIq
— siddharth ahuja (@sidahuj) March 20, 2025
Blender MCP is here, allowing Claude to talk directly to Blender. For example, provide a 2D reference image and ask Claude to create it in 3D for you. pic.twitter.com/vxbIN6FFJ1
— Bilawal Sidhu (@bilawalsidhu) March 13, 2025
MCPについてよくある質問まとめ
- MCP(Model Context Protocol)とは何ですか?
MCPは、AIアプリケーションやAIエージェントが、外部のデータソースやツール、サービスと標準化された方法で接続するためのオープンプロトコルです。2024年にAnthropicが公開し、現在はLinux Foundation傘下のAgentic AI Foundation(AAIF)のもとで開発が進められています。Claude専用ではなく、さまざまなAIサービスや開発ツールで利用できます。
- MCPを使うと何ができますか?
MCPを利用すると、AIからGoogle DriveやSlack、GitHub、社内データベース、ローカルファイルなどへ接続し、情報の取得や検索、外部ツールの実行などが可能になります。個別に連携コードを作り込む必要を減らし、共通の仕組みでAIの機能を拡張できる点が特徴です。
- MCPの利用に料金はかかりますか?
MCP自体はオープンな標準プロトコルであり、仕様やSDKを利用するための利用料はありません。ただし、MCPを利用するAIサービスやモデルAPI、MCPサーバーのホスティング、GitHubや各種SaaSなど接続先サービスの利用には、それぞれ料金が発生する場合があります。
まとめ
Model Context Protocol(MCP)は、AIと外部データソースやサービスを安全かつ柔軟に接続できる、標準化されたプロトコルです。
ClaudeなどのAIアプリにMCPを導入することで、比較的簡単に外部のデータソースから情報を参照したり、外部のサービスに働きかけることができます。
設定は少し大変な部分もありますが、一度サーバーさえ構築してしまえば大幅に作業を効率化できることが実際に使用してみてわかりました。

AI Market 運営、BizTech株式会社 代表取締役|2021年にサービス提供を開始したAI Marketのコンサルタントとしても、お客様に寄り添いながら、現場のお客様の課題ヒアリングや企業のご紹介を5年以上実施しています。これまでにLLM・RAGを始め、画像認識、データ分析等、1,000件を超える様々なAI導入相談に対応し、参加累計8,000人を超えるAIイベントを主催。AIシステム開発PM歴8年以上。AI Marketの記事では、AIに関する情報をわかりやすくお伝えしています。(JDLA GENERAL 資格保有)
▶ 監修者の実績・経歴を詳しく見る
AI Market 公式𝕏:@AIMarket_jp
Youtubeチャンネル:@aimarket_channel
TikTok:@aimarket_jp
運営会社:BizTech株式会社
掲載記事に関するご意見・ご相談はこちら:ai-market-contents@biz-t.jp
