CLAUDE LABEN
CONFERENCE — 年次開発者会議「Code w/ Claude」が6/22から開催。Claudeを作るチームと直接対話できる場が設けられましたLIMITS — Claude Codeのレート上限が倍増、OpusのAPI上限も引き上げ。安定して規模を出しやすくなりましたDESIGN — Claude Designが更新。デザインシステム整合・Claude Code同期強化・キャンバス直接編集に対応しましたSANDBOX — Claude Managed Agentsが自前サンドボックス+プライベートMCPサーバー接続に対応しましたMODEL — Claude Fable 5は100万トークン文脈・常時アダプティブ思考・128K出力を備えますLINEUP — 主力はOpus 4.8・Sonnet 4.6・Haiku 4.5。用途に応じて使い分けられますCONFERENCE — 年次開発者会議「Code w/ Claude」が6/22から開催。Claudeを作るチームと直接対話できる場が設けられましたLIMITS — Claude Codeのレート上限が倍増、OpusのAPI上限も引き上げ。安定して規模を出しやすくなりましたDESIGN — Claude Designが更新。デザインシステム整合・Claude Code同期強化・キャンバス直接編集に対応しましたSANDBOX — Claude Managed Agentsが自前サンドボックス+プライベートMCPサーバー接続に対応しましたMODEL — Claude Fable 5は100万トークン文脈・常時アダプティブ思考・128K出力を備えますLINEUP — 主力はOpus 4.8・Sonnet 4.6・Haiku 4.5。用途に応じて使い分けられます
記事一覧/API & SDK
API & SDK/2026-06-25上級

API リクエスト1本でリモート MCP サーバーに直接つなぐ — Messages API の MCP コネクタ実装メモ

ローカルに MCP クライアントを立てずに、Messages API の mcp_servers と mcp_toolset だけでリモート MCP サーバーのツールを呼ぶ実装をまとめました。allowlist/denylist 設計、レスポンス処理、無人運用での落とし穴まで。

Claude API87MCP35コネクタ4Python17個人開発89

プレミアム記事

定期実行のジョブからリモートの MCP サーバーを使いたいだけなのに、その前段でローカルに MCP クライアントを常駐させ、トランスポートを張り、ライフサイクルを管理する——この「ツールを1つ呼ぶための足場」が、ヘッドレス運用では地味に重くのしかかります。私は個人開発で運営している複数のサイト(Dolice Labs)を毎日決まった時刻に更新していますが、そのランナーの中に MCP クライアントを抱えるたびに、接続断やプロセスの後始末でログが汚れていくのが悩みでした。

Messages API の MCP コネクタ は、この足場ごと省きます。リクエストの mcp_servers にサーバーの URL を書くと、Anthropic 側がそのリモート MCP サーバーへ接続してツールを実行し、結果を同じレスポンスに混ぜて返してくれます。クライアント実装が不要になる、というのが要点です。

どういうときに効くのか、効かないのか

最初に線引きをしておきます。MCP コネクタは万能ではなく、向き不向きがはっきりしています。

公式ドキュメントが明記しているとおり、サポートされているのは MCP 仕様のうち ツール呼び出しだけです。プロンプトやリソースは対象外で、それらを使いたいなら従来どおり自分で MCP クライアントを持つ必要があります。また接続できるのは HTTPS で公開されたリモートサーバー(Streamable HTTP / SSE)に限られ、ローカルの stdio サーバーは直結できません。

私の判断軸はこうです。「URL でアクセスできるリモートサーバーのツールを呼びたいだけ」ならコネクタが最短で、「ローカルサーバー・プロンプト・リソースが要る、あるいは接続を細かく制御したい」なら自分でクライアントを持つ。この使い分けは、社内向けの非公開サーバーを安全に繋ぐManaged Agents の MCP トンネル設計とも地続きで、「実行環境のどこに境界を引くか」という同じ問いの別の答えになっています。

やりたいこと向いている手段
URL 公開のリモート MCP のツールを呼ぶだけMCP コネクタ(mcp_servers)
ローカル stdio サーバーを使う自前の MCP クライアント+SDK ヘルパー
MCP のプロンプト/リソースを使う自前の MCP クライアント
非公開の社内サービスに繋ぐMCP トンネル(Managed Agents)

最小の呼び出し

まずは1サーバーの全ツールを有効にする最小形です。ポイントは2つで、接続情報を mcp_servers に、どのツールを使うかを toolsmcp_toolset に分けて書きます。そしてベータヘッダーが必要です。

import anthropic
 
client = anthropic.Anthropic()  # ANTHROPIC_API_KEY を環境変数から読む
 
response = client.beta.messages.create(
    model="claude-opus-4-8",
    max_tokens=1024,
    messages=[
        {"role": "user", "content": "利用できるツールを一覧して、その中で今日の予定を取得して"}
    ],
    # ① 接続先の定義(URL とトークン)
    mcp_servers=[
        {
            "type": "url",
            "url": "https://example-server.modelcontextprotocol.io/sse",
            "name": "calendar",
            "authorization_token": "YOUR_ACCESS_TOKEN",  # 不要なサーバーなら省略可
        }
    ],
    # ② どのツールを露出するか(既定は全ツール有効)
    tools=[{"type": "mcp_toolset", "mcp_server_name": "calendar"}],
    # ③ ベータヘッダー(旧 mcp-client-2025-04-04 は非推奨)
    betas=["mcp-client-2025-11-20"],
)
 
for block in response.content:
    print(block.type)

期待する出力(抜粋): textmcp_tool_usemcp_tool_resulttext の順にブロックが並びます。Claude が「予定を取りたい」と判断するとツールが1回呼ばれ、その結果を踏まえた最終テキストが続きます。

ここで踏みやすい最初の落とし穴があります。betas=["mcp-client-2025-11-20"] を忘れると、mcp_servers ごと無視されたかのように普通の応答が返ります。私は最初これに気づかず「ツールが呼ばれない」と数十分悩みました。バージョンが上がってヘッダー名も mcp-client-2025-04-04 から変わっているので、古い記事のコードをそのまま貼ると静かに失敗します。

ここまでお読みいただきありがとうございます。

この記事の続きを読む

この先には、実装コードやベンチマーク結果など、実務でお役に立てる内容をご用意しています。このサイトは広告を掲載しておらず、サーバーや開発にかかる費用はメンバーの皆様のご支援で成り立っています。もしお役に立てていましたら、ご支援いただけますと大変ありがたいです。

この記事で得られること
ローカルに MCP クライアントを常駐させなくても、API リクエスト1本でリモート MCP サーバーのツールを呼べるようになります
allowlist / denylist / defer_loading でツールの露出を絞り、無人実行でも破壊的な操作を誤って呼ばせない構成を組めます
mcp_tool_use / mcp_tool_result のレスポンス処理、OAuth トークンの扱い、ZDR 非対応といった本番投入前に踏みがちな落とし穴を避けられます
Stripe による安全な決済 · いつでもキャンセル可能

この記事を購入する

この先の内容をすべてお読みいただけます。一度のご購入で、いつでも何度でもアクセスできます。このサイトは広告を掲載しておらず、皆さまのご支援がサーバー費用などの運営を支えています。

または
メンバーシップなら全記事が読み放題 →
シェア

お読みいただきありがとうございます

Claude Lab は広告なしで運営しており、サーバー費用などの運営コストはメンバーシップのご支援で賄っています。実装コード・ベンチマーク・本番設計パターンなど、実務でお役立ていただける記事を毎日更新しています。もし読んでよかったと感じていただけましたら、ぜひご覧ください。

  • コピー&ペーストで使える実装コード付き
  • 毎日新しい上級ガイドを追加
  • ¥580/月 または ¥1,480 の永久アクセス
メンバーシップを見る →

関連記事

API & SDK2026-06-02
MCP の tools 以外の3つの能力を使い分ける:resources・prompts・sampling の設計
MCP サーバーで何でも tools にしてしまう設計の限界を、resources・prompts・sampling という3つの primitive で解きほぐします。壁紙アプリのアセット管理サーバーを題材に、判断基準と実装、クライアント対応の現実的な制約までまとめました。
API & SDK2026-06-01
Crashlyticsのクラッシュを根本原因ごとに束ねる — Claude APIで作るトリアージの設計メモ
Crashlyticsの「Issue」は同じ原因を別物として散らしてしまうことがあります。累計5,000万DLのアプリ運用で溜まったクラッシュを、Claude APIで根本原因ごとに束ね直して優先順位をつける設計を、動くコードと実測値とともに共有します。
API & SDK2026-05-12
App Storeのレビュー1,000件をClaude APIで分析したら、自分のアプリの本当の問題が見えてきた
個人開発10年超・累計5,000万DLの経験から語る。App StoreレビューをClaude APIでバッチ分析し、次の改善優先順位を自動生成する実装パターンと、試して気づいた落とし穴を共有します。
📚RECOMMENDED BOOKS
大規模言語モデル入門
山田育矢
LLM開発
生成AIプロンプトエンジニアリング入門
我妻幸長
プロンプト
Claude CodeによるAI駆動開発入門
平川知秀
AI駆動開発
※ アフィリエイトリンクを含みます
もっと見る →