Claude kann mit Tools und Funktionen interagieren, um seine Fähigkeiten zu erweitern und eine größere Vielfalt an Aufgaben auszuführen.
Garantierte Schemakonformität mit strikter Tool-Nutzung
Strukturierte Ausgaben bieten garantierte Schemavalidierung für Tool-Eingaben. Fügen Sie strict: true zu Ihren Tool-Definitionen hinzu, um sicherzustellen, dass Claude's Tool-Aufrufe immer genau Ihrem Schema entsprechen – keine Typfehler oder fehlenden Felder mehr.
Perfekt für Produktions-Agenten, bei denen ungültige Tool-Parameter zu Fehlern führen würden. Erfahren Sie, wann Sie strikte Tool-Nutzung verwenden sollten →
Hier ist ein Beispiel, wie Sie Claude Tools über die Messages API bereitstellen:
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-opus-4-6",
"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 unterstützt zwei Arten von Tools:
Client-Tools: Tools, die auf Ihren Systemen ausgeführt werden, einschließlich:
Server-Tools: Tools, die auf Anthropic's Servern ausgeführt werden, wie die Web-Suche und Web-Abruf Tools. Diese Tools müssen in der API-Anfrage angegeben werden, erfordern aber keine Implementierung auf Ihrer Seite.
Von Anthropic definierte Tools verwenden versionierte Typen (z. B. web_search_20250305, text_editor_20250124), um die Kompatibilität über Modellversionen hinweg zu gewährleisten.
Integrieren Sie Client-Tools mit Claude in diesen Schritten:
Stellen Sie Claude Tools und eine Benutzereingabe bereit
Claude entscheidet sich für die Nutzung eines Tools
stop_reason von tool_use, was Claudes Absicht signalisiert.Führen Sie das Tool aus und geben Sie Ergebnisse zurück
user Nachricht mit einem tool_result Inhaltsblock zurückClaude nutzt das Tool-Ergebnis, um eine Antwort zu formulieren
Hinweis: Die Schritte 3 und 4 sind optional. Bei einigen Workflows könnte Claudes Tool-Nutzungsanfrage (Schritt 2) alles sein, was Sie benötigen, ohne die Ergebnisse an Claude zurückzusenden.
Server-Tools folgen einem anderen Workflow:
Stellen Sie Claude Tools und eine Benutzereingabe bereit
Claude führt das Server-Tool aus
Claude nutzt das Server-Tool-Ergebnis, um eine Antwort zu formulieren
Wenn Sie eine Anwendung erstellen, die das Model Context Protocol (MCP) verwendet, können Sie Tools von MCP-Servern direkt mit Claudes Messages API verwenden. MCP-Tool-Definitionen verwenden ein Schemaformat, das Claudes Tool-Format ähnelt. Sie müssen nur inputSchema in input_schema umbenennen.
Möchten Sie keinen eigenen MCP-Client erstellen? Verwenden Sie den MCP-Connector, um sich direkt von der Messages API aus mit Remote-MCP-Servern zu verbinden, ohne einen Client zu implementieren.
Wenn Sie einen MCP-Client erstellen und list_tools() auf einem MCP-Server aufrufen, erhalten Sie Tool-Definitionen mit einem inputSchema Feld. Um diese Tools mit Claude zu verwenden, konvertieren Sie sie in Claudes Format:
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Übergeben Sie diese konvertierten Tools dann an Claude:
import anthropic
client = anthropic.Anthropic()
claude_tools = await get_claude_tools(mcp_session)
response = client.messages.create(
model="claude-opus-4-6",
max_tokens=1024,
tools=claude_tools,
messages=[{"role": "user", "content": "What tools do you have available?"}]
)Wenn Claude mit einem tool_use Block antwortet, führen Sie das Tool auf Ihrem MCP-Server mit call_tool() aus und geben Sie das Ergebnis an Claude in einem tool_result Block zurück.
Eine vollständige Anleitung zum Erstellen von MCP-Clients finden Sie unter Erstellen Sie einen MCP-Client.
Hier sind einige Codebeispiele, die verschiedene Muster und Techniken der Werkzeugnutzung demonstrieren. Der Kürze halber sind die Werkzeuge einfache Werkzeuge, und die Werkzeugbeschreibungen sind kürzer als ideal, um die beste Leistung zu gewährleisten.
Tool use requests are priced based on:
tools parameter)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:
tools parameter in API requests (tool names, descriptions, and schemas)tool_use content blocks in API requests and responsestool_result content blocks in API requestsWhen 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.
| Model | Tool choice | Tool use system prompt token count |
|---|---|---|
| Claude Opus 4.6 | auto, noneany, tool | 346 tokens 313 tokens |
| Claude Opus 4.5 | auto, noneany, tool | 346 tokens 313 tokens |
| Claude Opus 4.1 | auto, noneany, tool | 346 tokens 313 tokens |
| Claude Opus 4 | auto, noneany, tool | 346 tokens 313 tokens |
| Claude Sonnet 4.6 | auto, noneany, tool | 346 tokens 313 tokens |
| Claude Sonnet 4.5 | auto, noneany, tool | 346 tokens 313 tokens |
| Claude Sonnet 4 | auto, noneany, tool | 346 tokens 313 tokens |
| Claude Sonnet 3.7 (deprecated) | auto, noneany, tool | 346 tokens 313 tokens |
| Claude Haiku 4.5 | auto, noneany, tool | 346 tokens 313 tokens |
| Claude Haiku 3.5 | auto, noneany, tool | 264 tokens 340 tokens |
| Claude Opus 3 (deprecated) | auto, noneany, tool | 530 tokens 281 tokens |
| Claude Sonnet 3 | auto, noneany, tool | 159 tokens 235 tokens |
| Claude Haiku 3 | auto, noneany, tool | 264 tokens 340 tokens |
These token counts are added to your normal input and output tokens to calculate the total cost of a request.
Weitere Informationen finden Sie in unserer Modellübersichtstabelle für aktuelle Preise pro Modell.
Wenn Sie eine Tool-Use-Anfrage senden, wird die Antwort wie bei jeder anderen API-Anfrage sowohl die Eingabe- als auch die Ausgabe-Token-Anzahl als Teil der gemeldeten usage-Metriken ausgeben.
Erkunden Sie unser Repository mit einsatzbereiten Tool-Use-Code-Beispielen in unseren Cookbooks:
Erfahren Sie, wie Sie ein einfaches Rechner-Tool mit Claude für präzise numerische Berechnungen integrieren.
Erstellen Sie einen reaktionsschnellen Kundenservice-Bot, der Client-Tools nutzt, um den Support zu verbessern.
Sehen Sie, wie Claude und Tool-Use strukturierte Daten aus unstrukturierten Text extrahieren können.
Was this page helpful?