Claudeは外部のクライアントサイドツールや関数と連携することができ、独自のカスタムツールを装備してより幅広いタスクを実行することができます。

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

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


ツール使用の仕組み

以下のステップでClaudeと外部ツールを統合します:

1

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

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

Claudeがツールの使用を決定

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

ツール入力を抽出し、コードを実行して結果を返す

  • あなたの側で、Claudeのリクエストからツール名と入力を抽出します。
  • 実際のツールコードをクライアントサイドで実行します。
  • tool_resultコンテンツブロックを含む新しいuserメッセージで会話を継続します。
4

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

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

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

ツールはユーザーが提供

重要な点として、Claudeには組み込みのサーバーサイドツールへのアクセス権がありません。すべてのツールは、各APIリクエストでユーザーであるあなたが明示的に提供する必要があります。これにより、Claudeが使用できるツールを完全にコントロールし、柔軟性を持たせることができます。

コンピューター使用(ベータ)機能は例外です - これはAnthropicが提供し、ユーザーであるあなたが実装するツールを導入します。

[続く…]