Claude Platform Docs
MessagesInfrastructure d'outils

Référence des outils

Répertoire des outils serveur, outils client et ensembles d'outils client fournis par Anthropic, ainsi que la référence des propriétés optionnelles de définition d'outils.

Cette page est une référence pour les outils fournis par Anthropic et les propriétés optionnelles que vous pouvez définir sur n'importe quelle définition d'outil. Pour une introduction conceptuelle au « tool use » (utilisation d'outils), consultez Utilisation d'outils avec Claude. Pour des conseils sur la mise en œuvre de l'utilisation d'outils dans votre application, consultez Définir des outils.

Outils fournis par Anthropic

Anthropic fournit deux types d'outils : les outils serveur (server tools) qui s'exécutent sur l'infrastructure d'Anthropic, et les outils client (client tools) pour lesquels Anthropic définit le schéma mais dont votre application gère l'exécution. Les deux types apparaissent dans le tableau tools de votre requête aux côtés de tous les outils définis par l'utilisateur.

OutiltypeExécutionEn-tête bêta
Outil de recherche webweb_search_20260318
web_search_20260209
web_search_20250305
ServeurAucun
Outil de récupération webweb_fetch_20260318
web_fetch_20260309
web_fetch_20260209
web_fetch_20250910
ServeurAucun
Outil d'exécution de codecode_execution_20260521
code_execution_20260120
code_execution_20250825
ServeurAucun
Outil conseilleradvisor_20260301Serveuradvisor-tool-2026-03-01
Outil de recherche d'outilstool_search_tool_regex_20251119
tool_search_tool_bm25_20251119
ServeurAucun
Connecteur MCPmcp_toolsetServeurmcp-client-2025-11-20
Outil de mémoirememory_20250818ClientAucun
Outil Bashbash_20250124ClientAucun
Outil d'édition de textetext_editor_20250728
text_editor_20250124
ClientAucun
Outil d'utilisation de l'ordinateurcomputer_toolset_20260801
computer_20251124
computer_20250124
ClientAucun
computer-use-2025-11-24
computer-use-2025-01-24
Outil d'utilisation du navigateurbrowser_toolset_20260801ClientAucun

Pour la compatibilité des modèles, consultez la page de chaque outil. Les modèles pris en charge varient selon l'outil et selon la version de l'outil.

Gestion des versions des outils

La plupart des outils fournis par Anthropic portent un suffixe _YYYYMMDD dans la chaîne type. Une nouvelle version est publiée lorsque le comportement, le schéma ou la prise en charge des modèles de l'outil change. Les anciennes versions restent disponibles afin que les intégrations existantes continuent de fonctionner.

Lorsqu'un outil possède plusieurs versions actives, la relation entre elles varie :

  • Selon les capacités : web_search_20260209 et web_fetch_20260209 ajoutent un filtrage dynamique du contenu par rapport à leurs prédécesseurs ; web_fetch_20260309 ajoute une option de contournement du cache ; web_search_20260318 et web_fetch_20260318 ajoutent un contrôle de l'inclusion dans la réponse. code_execution_20260120 ajoute l'appel d'outils programmatique depuis le bac à sable ; code_execution_20260521 indique la limite de temps par cellule dans la description de l'outil. Dans chaque cas, la nouvelle et l'ancienne version sont toutes deux actuelles ; celle que vous utilisez dépend de votre besoin ou non de la nouvelle capacité.
  • Selon le modèle : text_editor_20250728 est destiné aux modèles Claude 4 et ultérieurs, et text_editor_20250124 aux modèles antérieurs. La version que vous utilisez dépend du modèle que vous ciblez.
  • Variante, pas version : tool_search_tool_regex_20251119 et tool_search_tool_bm25_20251119 sont deux algorithmes de recherche publiés ensemble. Aucun ne remplace l'autre.
  • Hérité : code_execution_20250522 ne prend en charge que Python. code_execution_20250825 ajoute Bash et les opérations sur les fichiers.
  • Successeur : computer_toolset_20260801 est le successeur stable des versions bêta computer_20251124 et computer_20250124, qui restent disponibles sur les modèles indiqués pour elles dans Versions antérieures de l'outil. browser_toolset_20260801 est la première version de l'outil d'utilisation du navigateur. Tous deux sont des ensembles d'outils client.

Le type mcp_toolset n'est pas versionné par date ; la gestion des versions est portée par l'en-tête anthropic-beta à la place.

Ensembles d'outils client

L'outil d'utilisation de l'ordinateur et l'outil d'utilisation du navigateur sont des « client toolsets » (ensembles d'outils client) définis par Anthropic : une seule entrée dans tools déclare un ensemble fixe d'outils membres dont Anthropic définit les noms, les descriptions et les schémas d'entrée, et votre application exécute chaque appel. L'entrée ne prend pas de name, car le type daté fixe les noms des membres. configs, cache_control et allowed_callers (qui n'accepte que ["direct"]) sont optionnels.

Les ensembles d'outils client sont des outils de l'API Messages. Ils ne sont actuellement pas disponibles en tant qu'outils d'agent dans Claude Managed Agents, qui fournit son propre ensemble d'outils d'agent intégré, des ensembles d'outils MCP et des outils personnalisés.

{
  "type": "browser_toolset_20260801",
  "configs": {
    "javascript_exec": { "enabled": true }
  },
  "cache_control": { "type": "ephemeral" }
}

configs ajuste les membres individuels :

  • Les clés sont les noms des membres, et chaque valeur n'accepte que enabled et defer_loading.
  • Un membre que vous omettez conserve ses valeurs par défaut. Une valeur absente, {} et une valeur par défaut réaffirmée sont équivalentes.
  • Un nom de membre inconnu ou tout autre champ dans la valeur d'un membre est rejeté, tout comme un configs qui désactive tous les membres (omettez plutôt l'entrée).
  • Un membre désactivé est retiré des outils que Claude voit. Si Claude le nomme malgré tout, renvoyez un tool_result d'erreur.

Définissez defer_loading par membre, jamais sur l'entrée, et donnez la même valeur à chaque membre activé : avec la recherche d'outils, l'ensemble d'outils se charge et se développe comme une seule définition. Lorsque chaque membre activé est différé, seul un outil de recherche d'outils qui n'est pas lui-même différé peut faire apparaître l'ensemble d'outils ; déclarez-en donc un dans la même requête. Ne placez pas cache_control sur une entrée d'ensemble d'outils dont les membres sont différés ; définissez plutôt le point d'arrêt sur un outil non différé, car les définitions différées ne font pas partie du préfixe mis en cache.

cache_control se place uniquement sur l'entrée ; pour savoir où le point d'arrêt se situe, y compris les marqueurs à l'intérieur d'une action par lot, consultez Utilisation d'outils avec la mise en cache des prompts.

Gérer les appels aux outils membres. Claude appelle un membre avec un bloc tool_use dont le name est le nom du membre et dont le toolset_name est computer ou browser ; input contient les paramètres de ce membre et aucun champ action. Effectuez la répartition sur la paire toolset_name et name, car un outil personnalisé peut partager le nom d'un membre et les deux ensembles d'outils partagent des noms tels que screenshot. Seuls les résultats des membres renvoient toolset_name. Plusieurs appels de membres dans un même tour forment une action par lot que vous exécutez dans l'ordre (utilisation de l'ordinateur, utilisation du navigateur). De nouveaux membres n'arrivent qu'avec un nouveau type daté.

Non pris en charge sur les entrées d'ensembles d'outils. L'API rejette chacun des éléments suivants avec une invalid_request_error :

  • strict: true ou input_examples.
  • defer_loading sur l'entrée, ou des membres activés dont les valeurs defer_loading diffèrent (définissez-le par membre dans configs, tous à la même valeur).
  • Un appelant d'exécution de code dans allowed_callers (pas d'appel d'outils programmatique).
  • L'en-tête bêta hérité fine-grained-tool-streaming-2025-05-14. Lorsque vous utilisez le streaming, l'input de chaque membre arrive sous la forme d'un seul input_json_delta complet.
  • Un tool_choice de type tool qui nomme l'ensemble d'outils ou un membre (utilisez auto, any ou none).
  • Deux entrées du même ensemble d'outils, ou un autre outil qui porte le nom de cet ensemble d'outils : un outil nommé computer aux côtés de computer_toolset_20260801, ou un outil nommé browser aux côtés de browser_toolset_20260801. Les deux ensembles d'outils peuvent être déclarés ensemble.

Propriétés de définition d'outils

Chaque outil du tableau tools, y compris les outils définis par l'utilisateur, accepte des propriétés optionnelles qui contrôlent la façon dont l'outil est chargé, qui peut l'appeler et comment ses entrées sont validées. Ces propriétés se combinent : vous pouvez définir defer_loading, cache_control et strict sur le même outil.

PropriétéObjectifDisponible surGuide détaillé
cache_controlDéfinir un point d'arrêt de cache de prompt au niveau de cette définition d'outilTous les outils (sur computer_toolset_20260801 et browser_toolset_20260801, définissez-le sur l'entrée de l'ensemble d'outils elle-même, et non à l'intérieur des configs des membres)Mise en cache des prompts
strictGarantir la validation du schéma sur les noms et les entrées des outilsTous les outils sauf mcp_toolset, computer_toolset_20260801 et browser_toolset_20260801Utilisation d'outils stricte
defer_loadingExclure l'outil de l'invite système initiale ; le charger à la demande lorsque la recherche d'outils renvoie une tool_reference pour celui-ciTous les outils (pour mcp_toolset, consultez la configuration des outils). Sur les ensembles d'outils d'utilisation de l'ordinateur et d'utilisation du navigateur, définissez-le par membre à l'intérieur de configs ; consultez Ensembles d'outils client.Outil de recherche d'outils
allowed_callersRestreindre les appelants autorisés à appeler l'outilTous les outils sauf mcp_toolset (sur computer_toolset_20260801 et browser_toolset_20260801, seul ["direct"] est accepté ; consultez Ensembles d'outils client)Appel d'outils programmatique
input_examplesFournir des exemples d'objets d'entrée pour aider Claude à comprendre comment appeler l'outilOutils définis par l'utilisateur et outils client à schéma Anthropic, sauf computer_toolset_20260801 et browser_toolset_20260801. Non disponible sur les outils serveur.Définir des outils
eager_input_streamingActiver le streaming d'entrée à granularité fine (true) ou conserver le streaming standard avec mise en mémoire tampon (false) pour cet outilOutils définis par l'utilisateur uniquementStreaming d'outils à granularité fine

Valeurs de allowed_callers

allowed_callers est un tableau qui accepte n'importe quelle combinaison de :

ValeurSignification
"direct"Le modèle peut appeler cet outil directement dans un bloc tool_use. C'est la valeur par défaut si allowed_callers est omis.
"code_execution_20260120"Le code s'exécutant à l'intérieur d'un bac à sable code_execution_20260120 ou ultérieur peut appeler cet outil.

"code_execution_20260120" et "code_execution_20260521" sont tous deux acceptés dans allowed_callers et sont interchangeables : une requête utilisant l'une ou l'autre version de l'outil d'exécution de code satisfait les outils qui listent l'un ou l'autre appelant. Les blocs de réponse étiquettent toujours l'appelant comme code_execution_20260120, quelle que soit la version déclarée par la requête.

Omettre "direct" du tableau (par exemple, "allowed_callers": ["code_execution_20260120"]) incite Claude à n'appeler l'outil que depuis l'exécution de code. Le bloc tool_use de la réponse inclut un champ caller qui identifie quel appelant a appelé l'outil. Consultez Appel d'outils programmatique pour le traitement complet, y compris la forme de la réponse caller et le comportement en cas d'erreur.

defer_loading et mise en cache des prompts

Les outils avec defer_loading: true sont retirés de la section des outils rendue avant le calcul de la clé de cache. Ils n'apparaissent pas du tout dans le préfixe de l'invite système. Lorsque la recherche d'outils découvre un outil différé et renvoie une tool_reference pour celui-ci, la définition complète de l'outil est développée en ligne à cet endroit du corps de la conversation, et non dans le préfixe.

Cela signifie que defer_loading: true préserve votre cache de prompt. Vous pouvez ajouter des outils différés à une requête sans invalider une entrée de cache existante, et le cache reste valide entre le tour où l'outil est découvert et le tour où il est appelé.

Pour savoir comment combiner defer_loading avec les points d'arrêt cache_control, consultez les conseils sur la mise en cache des prompts de l'outil de recherche d'outils.

Was this page helpful?