Loading...
    • 開発者ガイド
    • APIリファレンス
    • MCP
    • リソース
    • リリースノート
    Search...
    ⌘K
    最初のステップ
    Claudeの紹介クイックスタート
    モデルと価格
    モデル概要モデルの選択Claude 4.5の新機能Claude 4.5への移行モデルの廃止予定価格
    Claudeで構築
    機能概要Messages APIの使用コンテキストウィンドウプロンプトのベストプラクティス
    機能
    プロンプトキャッシングコンテキスト編集拡張思考エフォートストリーミングメッセージバッチ処理引用多言語対応トークンカウント埋め込みビジョンPDF対応Files API検索結果構造化出力
    ツール
    概要ツール使用の実装方法細粒度ツールストリーミングBashツールコード実行ツールプログラマティックツール呼び出しコンピュータ使用ツールテキストエディタツールWebフェッチツールWeb検索ツールメモリツールツール検索ツール
    エージェントスキル
    概要クイックスタートベストプラクティスAPIでスキルを使用
    Agent SDK
    概要クイックスタートTypeScript SDKTypeScript V2(プレビュー)Python SDK移行ガイド
    APIのMCP
    MCPコネクタリモートMCPサーバー
    サードパーティプラットフォームのClaude
    Amazon BedrockMicrosoft FoundryVertex AI
    プロンプトエンジニアリング
    概要プロンプトジェネレータプロンプトテンプレートの使用プロンプト改善ツール明確で直接的に例を使用(マルチショットプロンプティング)Claudeに考えさせる(CoT)XMLタグを使用Claudeに役割を与える(システムプロンプト)Claudeの応答を事前入力複雑なプロンプトをチェーン長いコンテキストのヒント拡張思考のヒント
    テストと評価
    成功基準の定義テストケースの開発評価ツールの使用レイテンシの削減
    ガードレールの強化
    ハルシネーションの削減出力の一貫性を向上ジェイルブレイクの軽減ストリーミング拒否プロンプトリークの削減Claudeをキャラクターのままに
    管理とモニタリング
    Admin API概要使用状況とコストAPIClaude Code Analytics API
    Console
    Log in
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...

    Solutions

    • AI agents
    • Code modernization
    • Coding
    • Customer support
    • Education
    • Financial services
    • Government
    • Life sciences

    Partners

    • Amazon Bedrock
    • Google Cloud's Vertex AI

    Learn

    • Blog
    • Catalog
    • Courses
    • Use cases
    • Connectors
    • Customer stories
    • Engineering at Anthropic
    • Events
    • Powered by Claude
    • Service partners
    • Startups program

    Company

    • Anthropic
    • Careers
    • Economic Futures
    • Research
    • News
    • Responsible Scaling Policy
    • Security and compliance
    • Transparency

    Learn

    • Blog
    • Catalog
    • Courses
    • Use cases
    • Connectors
    • Customer stories
    • Engineering at Anthropic
    • Events
    • Powered by Claude
    • Service partners
    • Startups program

    Help and security

    • Availability
    • Status
    • Support
    • Discord

    Terms and policies

    • Privacy policy
    • Responsible disclosure policy
    • Terms of service: Commercial
    • Terms of service: Consumer
    • Usage policy
    APIのMCP

    MCP コネクタ

    Claude の Model Context Protocol (MCP) コネクタ機能を使用して、Messages API から直接リモート MCP サーバーに接続します。
    • Messages API での MCP コネクタの使用
    • MCP サーバー設定
    • MCP ツールセット設定
    • MCP ツール使用ブロック
    • MCP ツール結果ブロック
    • 複数の MCP サーバー
    • 廃止予定バージョン: mcp-client-2025-04-04

    Claude の Model Context Protocol (MCP) コネクタ機能により、Messages API から直接リモート MCP サーバーに接続でき、別の MCP クライアントを実装する必要がありません。

    現在のバージョン: この機能にはベータヘッダーが必要です: "anthropic-beta": "mcp-client-2025-11-20"

    以前のバージョン (mcp-client-2025-04-04) は廃止予定です。下記の廃止予定バージョンのドキュメントを参照してください。

    主な機能

    • 直接 API 統合: MCP クライアントを実装せずに MCP サーバーに接続
    • ツール呼び出しサポート: Messages API を通じて MCP ツールにアクセス
    • 柔軟なツール設定: すべてのツールを有効にするか、特定のツールをホワイトリストに登録するか、不要なツールをブラックリストに登録するか選択可能
    • ツール単位の設定: カスタム設定で個別のツールを設定
    • OAuth 認証: 認証されたサーバー向けの OAuth Bearer トークンのサポート
    • 複数サーバー: 単一のリクエストで複数の MCP サーバーに接続

    制限事項

    • MCP 仕様の機能セットのうち、ツール呼び出しのみが現在サポートされています。
    • サーバーは HTTP を通じて公開されている必要があります (Streamable HTTP と SSE トランスポートの両方をサポート)。ローカル STDIO サーバーは直接接続できません。
    • MCP コネクタは現在、Amazon Bedrock と Google Vertex ではサポートされていません。

    Messages API での MCP コネクタの使用

    MCP コネクタは 2 つのコンポーネントを使用します:

    1. MCP サーバー定義 (mcp_servers 配列): サーバー接続の詳細 (URL、認証) を定義
    2. MCP ツールセット (tools 配列): 有効にするツールと設定方法を設定

    基本的な例

    この例は、デフォルト設定で MCP サーバーのすべてのツールを有効にします:

    MCP サーバー設定

    mcp_servers 配列内の各 MCP サーバーは接続の詳細を定義します:

    {
      "type": "url",
      "url": "https://example-server.modelcontextprotocol.io/sse",
      "name": "example-mcp",
      "authorization_token": "YOUR_TOKEN"
    }

    フィールドの説明

    プロパティ型必須説明
    typestringはい現在は "url" のみがサポートされています
    urlstringはいMCP サーバーの URL。https:// で始まる必要があります
    namestringはいこの MCP サーバーの一意の識別子。tools 配列内の正確に 1 つの MCPToolset によって参照される必要があります。
    authorization_tokenstringいいえMCP サーバーで必要な場合の OAuth 認可トークン。MCP 仕様を参照してください。

    MCP ツールセット設定

    MCPToolset は tools 配列に存在し、MCP サーバーのどのツールが有効になるか、およびそれらがどのように設定されるかを設定します。

    基本的な構造

    {
      "type": "mcp_toolset",
      "mcp_server_name": "example-mcp",
      "default_config": {
        "enabled": true,
        "defer_loading": false
      },
      "configs": {
        "specific_tool_name": {
          "enabled": true,
          "defer_loading": true
        }
      }
    }

    フィールドの説明

    プロパティ型必須説明
    typestringはい"mcp_toolset" である必要があります
    mcp_server_namestringはいmcp_servers 配列で定義されたサーバー名と一致する必要があります
    default_configobjectいいえこのセット内のすべてのツールに適用されるデフォルト設定。configs 内の個別のツール設定がこれらのデフォルトをオーバーライドします。
    configsobjectいいえツール単位の設定オーバーライド。キーはツール名、値は設定オブジェクトです。
    cache_control

    ツール設定オプション

    各ツール (default_config または configs で設定されているかどうかに関わらず) は以下のフィールドをサポートしています:

    プロパティ型デフォルト説明
    enabledbooleantrueこのツールが有効かどうか
    defer_loadingbooleanfalsetrue の場合、ツールの説明は最初はモデルに送信されません。ツール検索ツールで使用されます。

    設定のマージ

    設定値は以下の優先度 (高から低) でマージされます:

    1. configs 内のツール固有の設定
    2. セットレベルの default_config
    3. システムデフォルト

    例:

    {
      "type": "mcp_toolset",
      "mcp_server_name": "google-calendar-mcp",
      "default_config": {
        "defer_loading": true
      },
      "configs": {
        "search_events": {
          "enabled": false
        }
      }
    }

    結果:

    • search_events: enabled: false (configs から)、defer_loading: true (default_config から)
    • その他すべてのツール: enabled: true (システムデフォルト)、defer_loading: true (default_config から)

    一般的な設定パターン

    すべてのツールをデフォルト設定で有効にする

    最もシンプルなパターン - サーバーのすべてのツールを有効にします:

    {
      "type": "mcp_toolset",
      "mcp_server_name": "google-calendar-mcp",
    }

    ホワイトリスト - 特定のツールのみを有効にする

    デフォルトとして enabled: false を設定し、特定のツールを明示的に有効にします:

    {
      "type": "mcp_toolset",
      "mcp_server_name": "google-calendar-mcp",
      "default_config": {
        "enabled": false
      },
      "configs": {
        "search_events": {
          "enabled": true
        },
        "create_event": {
          "enabled": true
        }
      }
    }

    ブラックリスト - 特定のツールを無効にする

    デフォルトですべてのツールを有効にし、不要なツールを明示的に無効にします:

    {
      "type": "mcp_toolset",
      "mcp_server_name": "google-calendar-mcp",
      "configs": {
        "delete_all_events": {
          "enabled": false
        },
        "share_calendar_publicly": {
          "enabled": false
        }
      }
    }

    混合 - ツール単位の設定を含むホワイトリスト

    ホワイトリストと各ツールのカスタム設定を組み合わせます:

    {
      "type": "mcp_toolset",
      "mcp_server_name": "google-calendar-mcp",
      "default_config": {
        "enabled": false,
        "defer_loading": true
      },
      "configs": {
        "search_events": {
          "enabled": true,
          "defer_loading": false
        },
        "list_events": {
          "enabled": true
        }
      }
    }

    この例では:

    • search_events は defer_loading: false で有効になります
    • list_events は defer_loading: true で有効になります (default_config から継承)
    • その他すべてのツールは無効になります

    検証ルール

    API は以下の検証ルールを適用します:

    • サーバーが存在する必要があります: MCPToolset 内の mcp_server_name は mcp_servers 配列で定義されたサーバーと一致する必要があります
    • サーバーが使用される必要があります: mcp_servers で定義されたすべての MCP サーバーは正確に 1 つの MCPToolset によって参照される必要があります
    • サーバーごとに一意のツールセット: 各 MCP サーバーは 1 つの MCPToolset によってのみ参照できます
    • 不明なツール名: configs 内のツール名が MCP サーバーに存在しない場合、バックエンド警告がログに記録されますが、エラーは返されません (MCP サーバーはツール可用性が動的である可能性があります)

    レスポンスコンテンツタイプ

    Claude が MCP ツールを使用する場合、レスポンスには 2 つの新しいコンテンツブロックタイプが含まれます:

    MCP ツール使用ブロック

    {
      "type": "mcp_tool_use",
      "id": "mcptoolu_014Q35RayjACSWkSj4X2yov1",
      "name": "echo",
      "server_name": "example-mcp",
      "input": { "param1": "value1", "param2": "value2" }
    }

    MCP ツール結果ブロック

    {
      "type": "mcp_tool_result",
      "tool_use_id": "mcptoolu_014Q35RayjACSWkSj4X2yov1",
      "is_error": false,
      "content": [
        {
          "type": "text",
          "text": "Hello"
        }
      ]
    }

    複数の MCP サーバー

    mcp_servers に複数のサーバー定義を含め、tools 配列に各サーバーに対応する MCPToolset を含めることで、複数の MCP サーバーに接続できます:

    {
      "model": "claude-sonnet-4-5",
      "max_tokens": 1000,
      "messages": [
        {
          "role": "user",
          "content": "Use tools from both mcp-server-1 and mcp-server-2 to complete this task"
        }
      ],
      "mcp_servers": [
        {
          "type": "url",
          "url": "https://mcp.example1.com/sse",
          "name": "mcp-server-1",
          "authorization_token": "TOKEN1"
        },
        {
          "type": "url",
          "url": "https://mcp.example2.com/sse",
          "name": "mcp-server-2",
          "authorization_token": "TOKEN2"
        }
      ],
      "tools": [
        {
          "type": "mcp_toolset",
          "mcp_server_name": "mcp-server-1"
        },
        {
          "type": "mcp_toolset",
          "mcp_server_name": "mcp-server-2",
          "default_config": {
            "defer_loading": true
          }
        }
      ]
    }

    認証

    OAuth 認証が必要な MCP サーバーの場合、アクセストークンを取得する必要があります。MCP コネクタベータは MCP サーバー定義で authorization_token パラメータを渡すことをサポートしています。 API コンシューマーは OAuth フローを処理し、API 呼び出しの前にアクセストークンを取得し、必要に応じてトークンをリフレッシュすることが期待されます。

    テスト用のアクセストークンの取得

    MCP インスペクタは、テスト目的でアクセストークンを取得するプロセスをガイドできます。

    1. 次のコマンドでインスペクタを実行します。マシンに Node.js がインストールされている必要があります。

      npx @modelcontextprotocol/inspector
    2. 左側のサイドバーで、「Transport type」に対して「SSE」または「Streamable HTTP」を選択します。

    3. MCP サーバーの URL を入力します。

    4. 右側の領域で、「Need to configure authentication?」の後の「Open Auth Settings」ボタンをクリックします。

    5. 「Quick OAuth Flow」をクリックし、OAuth 画面で認可します。

    6. インスペクタの「OAuth Flow Progress」セクションのステップに従い、「Authentication complete」に到達するまで「Continue」をクリックします。

    7. access_token 値をコピーします。

    8. MCP サーバー設定の authorization_token フィールドに貼り付けます。

    アクセストークンの使用

    上記のいずれかの OAuth フローを使用してアクセストークンを取得したら、MCP サーバー設定で使用できます:

    {
      "mcp_servers": [
        {
          "type": "url",
          "url": "https://example-server.modelcontextprotocol.io/sse",
          "name": "authenticated-server",
          "authorization_token": "YOUR_ACCESS_TOKEN_HERE"
        }
      ]
    }

    OAuth フローの詳細な説明については、MCP 仕様の認可セクションを参照してください。

    マイグレーションガイド

    廃止予定の mcp-client-2025-04-04 ベータヘッダーを使用している場合は、このガイドに従って新しいバージョンにマイグレーションしてください。

    主な変更点

    1. 新しいベータヘッダー: mcp-client-2025-04-04 から mcp-client-2025-11-20 に変更
    2. ツール設定の移動: ツール設定は MCP サーバー定義ではなく、tools 配列内の MCPToolset オブジェクトに移動しました
    3. より柔軟な設定: 新しいパターンはホワイトリスト、ブラックリスト、およびツール単位の設定をサポートしています

    マイグレーションステップ

    **前 (廃止予定):

    {
      "model": "claude-sonnet-4-5",
      "max_tokens": 1000,
      "messages": [...],
      "mcp_servers": [
        {
          "type": "url",
          "url": "https://mcp.example.com/sse",
          "name": "example-mcp",
          "authorization_token": "YOUR_TOKEN",
          "tool_configuration": {
            "enabled": true,
            "allowed_tools": ["tool1", "tool2"]
          }
        }
      ]
    }

    **後 (現在):

    {
      "model": "claude-sonnet-4-5",
      "max_tokens": 1000,
      "messages": [...],
      "mcp_servers": [
        {
          "type": "url",
          "url": "https://mcp.example.com/sse",
          "name": "example-mcp",
          "authorization_token": "YOUR_TOKEN"
        }
      ],
      "tools": [
        {
          "type": "mcp_toolset",
          "mcp_server_name": "example-mcp",
          "default_config": {
            "enabled": false
          },
          "configs": {
            "tool1": {
              "enabled": true
            },
            "tool2": {
              "enabled": true
            }
          }
        }
      ]
    }

    一般的なマイグレーションパターン

    古いパターン新しいパターン
    tool_configuration なし (すべてのツールが有効)default_config または configs なしの MCPToolset
    tool_configuration.enabled: falsedefault_config.enabled: false を持つ MCPToolset
    tool_configuration.allowed_tools: [...]default_config.enabled: false と configs で特定のツールが有効な MCPToolset

    廃止予定バージョン: mcp-client-2025-04-04

    このバージョンは廃止予定です。上記のマイグレーションガイドを使用して mcp-client-2025-11-20 にマイグレーションしてください。

    MCP コネクタの以前のバージョンは、ツール設定を MCP サーバー定義に直接含めていました:

    {
      "mcp_servers": [
        {
          "type": "url",
          "url": "https://example-server.modelcontextprotocol.io/sse",
          "name": "example-mcp",
          "authorization_token": "YOUR_TOKEN",
          "tool_configuration": {
            "enabled": true,
            "allowed_tools": ["example_tool_1", "example_tool_2"]
          }
        }
      ]
    }

    廃止予定フィールドの説明

    プロパティ型説明
    tool_configurationobject廃止予定: tools 配列内の MCPToolset を使用してください
    tool_configuration.enabledboolean廃止予定: MCPToolset 内の default_config.enabled を使用してください
    tool_configuration.allowed_toolsarray廃止予定: MCPToolset 内の configs を使用したホワイトリストパターンを使用してください
    curl https://api.anthropic.com/v1/messages \
      -H "Content-Type: application/json" \
      -H "X-API-Key: $ANTHROPIC_API_KEY" \
      -H "anthropic-version: 2023-06-01" \
      -H "anthropic-beta: mcp-client-2025-11-20" \
      -d '{
        "model": "claude-sonnet-4-5",
        "max_tokens": 1000,
        "messages": [{"role": "user", "content": "What tools do you have available?"}],
        "mcp_servers": [
          {
            "type": "url",
            "url": "https://example-server.modelcontextprotocol.io/sse",
            "name": "example-mcp",
            "authorization_token": "YOUR_TOKEN"
          }
        ],
        "tools": [
          {
            "type": "mcp_toolset",
            "mcp_server_name": "example-mcp"
          }
        ]
      }'
    object
    いいえ
    このツールセットのキャッシュブレークポイント設定