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
    ツール

    Claudeでのツール使用

    Claudeがツールや関数と相互作用する方法、ツール使用の仕組み、MCPツールの統合について学びます。
    • Claudeでのmcpツールの使用
    • MCPツールをClaudeフォーマットに変換する

    Claudeはツールや関数と相互作用することができ、Claudeの機能を拡張してより多くの種類のタスクを実行できます。

    Claudeでのツール使用をマスターするために必要なすべてを、新しいコースの一部として学びましょう!このフォームを使用して、アイデアや提案を共有し続けてください。 フォーム

    厳密なツール使用でスキーマ準拠を保証

    構造化出力は、ツール入力に対する保証されたスキーマ検証を提供します。ツール定義にstrict: trueを追加して、Claudeのツール呼び出しが常にスキーマと完全に一致することを確認します。型の不一致や欠落フィールドはもうありません。

    無効なツールパラメータが失敗を引き起こす本番エージェントに最適です。厳密なツール使用をいつ使用するかについて学ぶ →

    Messages APIを使用してClaudeにツールを提供する方法の例を次に示します:

    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" \
      -d '{
        "model": "claude-sonnet-4-5",
        "max_tokens": 1024,
        "tools": [
          {
            "name": "get_weather",
            "description": "Get the current weather in a given location",
            "input_schema": {
              "type": "object",
              "properties": {
                "location": {
                  "type": "string",
                  "description": "The city and state, e.g. San Francisco, CA"
                }
              },
              "required": ["location"]
            }
          }
        ],
        "messages": [
          {
            "role": "user",
            "content": "What is the weather like in San Francisco?"
          }
        ]
      }'

    ツール使用の仕組み

    Claudeは2種類のツールをサポートしています:

    1. クライアントツール:あなたのシステムで実行されるツール。以下を含みます:

      • あなたが作成して実装するユーザー定義のカスタムツール
      • コンピュータ使用やテキストエディタなどのAnthropicで定義されたツール。クライアント実装が必要です
    2. サーバーツール:Anthropicのサーバーで実行されるツール。ウェブ検索やウェブフェッチツールなどです。これらのツールはAPIリクエストで指定する必要がありますが、あなた側での実装は不要です。

    Anthropicで定義されたツールはバージョン付きの型(例:web_search_20250305、text_editor_20250124)を使用して、モデルバージョン間での互換性を確保します。

    クライアントツール

    クライアントツールをClaudeと統合するには、以下の手順に従います:

    1. 1

      Claudeにツールとユーザープロンプトを提供する

      • APIリクエストで、名前、説明、入力スキーマを持つクライアントツールを定義します。
      • これらのツールが必要になる可能性があるユーザープロンプトを含めます。例えば、「サンフランシスコの天気は?」
    2. 2

      Claudeがツール使用を決定する

      • Claudeはユーザーのクエリに役立つツールがあるかどうかを評価します。
      • はいの場合、Claudeは適切にフォーマットされたツール使用リクエストを構築します。
      • クライアントツールの場合、APIレスポンスはtool_useのstop_reasonを持ち、Claudeの意図を示します。
    3. 3

      ツールを実行して結果を返す

      • Claudeのリクエストからツール名と入力を抽出します
      • あなたのシステムでツールコードを実行します
      • tool_resultコンテンツブロックを含む新しいuserメッセージで結果を返します
    4. 4

      Claudeがツール結果を使用して応答を作成する

      • Claudeはツール結果を分析して、元のユーザープロンプトへの最終応答を作成します。

    注:ステップ3と4はオプションです。一部のワークフローでは、Claudeのツール使用リクエスト(ステップ2)だけで十分で、結果をClaudeに送り返す必要がない場合があります。

    サーバーツール

    サーバーツールは異なるワークフローに従います:

    1. 1

      Claudeにツールとユーザープロンプトを提供する

      • ウェブ検索やウェブフェッチなどのサーバーツールは、独自のパラメータを持っています。
      • これらのツールが必要になる可能性があるユーザープロンプトを含めます。例えば、「AIに関する最新ニュースを検索してください」または「このURLのコンテンツを分析してください」
    2. 2

      Claudeがサーバーツールを実行する

      • Claudeはユーザーのクエリに役立つサーバーツールがあるかどうかを評価します。
      • はいの場合、Claudeはツールを実行し、結果は自動的にClaudeの応答に組み込まれます。
    3. 3

      Claudeがサーバーツール結果を使用して応答を作成する

      • Claudeはサーバーツール結果を分析して、元のユーザープロンプトへの最終応答を作成します。
      • サーバーツール実行に追加のユーザー操作は不要です。

    Claudeでのmcpツールの使用

    Model Context Protocol(MCP)を使用するアプリケーションを構築している場合、MCPサーバーからのツールをClaudeのMessages APIで直接使用できます。MCPツール定義はClaudeのツール形式に似たスキーマ形式を使用します。inputSchemaをinput_schemaに名前変更するだけです。

    独自のMCPクライアントを構築したくない場合は? MCPコネクタを使用して、クライアントを実装せずにMessages APIから直接リモートMCPサーバーに接続します。

    MCPツールをClaudeフォーマットに変換する

    MCPクライアントを構築してMCPサーバーでlist_tools()を呼び出すと、inputSchemaフィールドを持つツール定義を受け取ります。これらのツールをClaudeで使用するには、Claudeのフォーマットに変換します:

    次に、これらの変換されたツールをClaudeに渡します:

    Claudeがtool_useブロックで応答するとき、MCPサーバーでcall_tool()を使用してツールを実行し、結果をtool_resultブロックでClaudeに返します。

    MCPクライアント構築の完全なガイドについては、MCPクライアントを構築するを参照してください。


    ツール使用の例

    ここでは、様々なツール使用パターンとテクニックを示すコード例をいくつか紹介します。簡潔にするため、ツールはシンプルなツールであり、ツールの説明は最適なパフォーマンスを確保するために理想的なものより短くなっています。


    価格

    Tool use requests are priced based on:

    1. The total number of input tokens sent to the model (including in the tools parameter)
    2. The number of output tokens generated
    3. For server-side tools, additional usage-based pricing (e.g., web search charges per search performed)

    Client-side tools are priced the same as any other Claude API request, while server-side tools may incur additional charges based on their specific usage.

    The additional tokens from tool use come from:

    • The tools parameter in API requests (tool names, descriptions, and schemas)
    • tool_use content blocks in API requests and responses
    • tool_result content blocks in API requests

    When you use tools, we also automatically include a special system prompt for the model which enables tool use. The number of tool use tokens required for each model are listed below (excluding the additional tokens listed above). Note that the table assumes at least 1 tool is provided. If no tools are provided, then a tool choice of none uses 0 additional system prompt tokens.

    ModelTool choiceTool use system prompt token count
    Claude Opus 4.5auto, none
    any, tool
    346 tokens
    313 tokens
    Claude Opus 4.1auto, none
    any, tool
    346 tokens
    313 tokens
    Claude Opus 4auto, none
    any, tool

    These token counts are added to your normal input and output tokens to calculate the total cost of a request.

    現在のモデルごとの価格については、モデル概要表を参照してください。

    ツール使用プロンプトを送信する場合、他のAPIリクエストと同様に、レスポンスは報告されたusageメトリクスの一部として入力トークン数と出力トークン数の両方を出力します。


    次のステップ

    クックブックで実装可能なツール使用コード例のリポジトリを探索してください:

    計算機ツール

    Claudeと統合する単純な計算機ツールを使用して、正確な数値計算を実行する方法を学びます。

    from mcp import ClientSession
    
    async def get_claude_tools(mcp_session: ClientSession):
        """Convert MCP tools to Claude's tool format."""
        mcp_tools = await mcp_session.list_tools()
    
        claude_tools = []
        for tool in mcp_tools.tools:
            claude_tools.append({
                "name": tool.name,
                "description": tool.description or "",
                "input_schema": tool.inputSchema  # Rename inputSchema to input_schema
            })
    
        return claude_tools
    import anthropic
    
    client = anthropic.Anthropic()
    claude_tools = await get_claude_tools(mcp_session)
    
    response = client.messages.create(
        model="claude-sonnet-4-5",
        max_tokens=1024,
        tools=claude_tools,
        messages=[{"role": "user", "content": "What tools do you have available?"}]
    )

    346 tokens
    313 tokens
    Claude Sonnet 4.5auto, none
    any, tool
    346 tokens
    313 tokens
    Claude Sonnet 4auto, none
    any, tool
    346 tokens
    313 tokens
    Claude Sonnet 3.7 (deprecated)auto, none
    any, tool
    346 tokens
    313 tokens
    Claude Haiku 4.5auto, none
    any, tool
    346 tokens
    313 tokens
    Claude Haiku 3.5auto, none
    any, tool
    264 tokens
    340 tokens
    Claude Opus 3 (deprecated)auto, none
    any, tool
    530 tokens
    281 tokens
    Claude Sonnet 3auto, none
    any, tool
    159 tokens
    235 tokens
    Claude Haiku 3auto, none
    any, tool
    264 tokens
    340 tokens
    カスタマーサービスエージェント

    クライアントツールを活用してサポートを強化する応答性の高いカスタマーサービスボットを構築します。

    JSON抽出ツール

    Claudeとツール使用が非構造化テキストから構造化データを抽出する方法を確認します。