Справочник по инструментам
Каталог предоставляемых Anthropic серверных инструментов, клиентских инструментов и клиентских наборов инструментов, а также справочник по необязательным свойствам определения инструментов.
Эта страница представляет собой справочник по инструментам, которые предоставляет Anthropic, и по необязательным свойствам, которые вы можете задать в любом определении инструмента. Концептуальное введение в «tool use» (использование инструментов) см. в разделе Использование инструментов с Claude. Рекомендации по реализации использования инструментов в вашем приложении см. в разделе Определение инструментов.
Инструменты, предоставляемые Anthropic
Anthropic предоставляет два вида инструментов: серверные инструменты (server tools), которые выполняются в инфраструктуре Anthropic, и клиентские инструменты (client tools), для которых Anthropic определяет схему, а выполнение обрабатывает ваше приложение. Оба вида указываются в массиве tools вашего запроса наряду с любыми пользовательскими инструментами.
| Инструмент | type | Выполнение | Бета-заголовок |
|---|---|---|---|
| Инструмент веб-поиска | web_search_20260318web_search_20260209web_search_20250305 | Сервер | Нет |
| Инструмент веб-загрузки | web_fetch_20260318web_fetch_20260309web_fetch_20260209web_fetch_20250910 | Сервер | Нет |
| Инструмент выполнения кода | code_execution_20260521code_execution_20260120code_execution_20250825 | Сервер | Нет |
| Инструмент-советник | advisor_20260301 | Сервер | advisor-tool-2026-03-01 |
| Инструмент поиска инструментов | tool_search_tool_regex_20251119tool_search_tool_bm25_20251119 | Сервер | Нет |
| Коннектор MCP | mcp_toolset | Сервер | mcp-client-2025-11-20 |
| Инструмент памяти | memory_20250818 | Клиент | Нет |
| Инструмент Bash | bash_20250124 | Клиент | Нет |
| Инструмент текстового редактора | text_editor_20250728text_editor_20250124 | Клиент | Нет |
| Инструмент использования компьютера | computer_toolset_20260801computer_20251124computer_20250124 | Клиент | Нетcomputer-use-2025-11-24computer-use-2025-01-24 |
| Инструмент использования браузера | browser_toolset_20260801 | Клиент | Нет |
Сведения о совместимости с моделями см. на странице каждого инструмента. Поддерживаемые модели различаются в зависимости от инструмента и его версии.
Версионирование инструментов
Большинство инструментов, предоставляемых Anthropic, содержат суффикс _YYYYMMDD в строке type. Новая версия выпускается, когда меняется поведение инструмента, его схема или поддержка моделей. Старые версии остаются доступными, чтобы существующие интеграции продолжали работать.
Когда у инструмента несколько активных версий, соотношение между ними различается:
- По возможностям:
web_search_20260209иweb_fetch_20260209добавляют динамическую фильтрацию контента по сравнению со своими предшественниками;web_fetch_20260309добавляет опцию обхода кэша;web_search_20260318иweb_fetch_20260318добавляют управление включением ответа.code_execution_20260120добавляет программный вызов инструментов изнутри песочницы;code_execution_20260521раскрывает ограничение времени на ячейку в описании инструмента. В каждом случае и новая, и старая версии являются актуальными; какую из них использовать, зависит от того, нужна ли вам новая возможность. - По модели:
text_editor_20250728предназначен для моделей Claude 4 и более поздних, аtext_editor_20250124— для более ранних моделей. Используемая версия зависит от целевой модели. - Вариант, а не версия:
tool_search_tool_regex_20251119иtool_search_tool_bm25_20251119— это два алгоритма поиска, выпущенные одновременно. Ни один из них не заменяет другой. - Устаревшая:
code_execution_20250522поддерживает только Python.code_execution_20250825добавляет Bash и файловые операции. - Преемник:
computer_toolset_20260801— стабильный преемник бета-версийcomputer_20251124иcomputer_20250124, которые остаются доступными для существующих интеграций и для моделей, не поддерживающих набор инструментов (Более ранние версии инструмента).browser_toolset_20260801— первая версия инструмента использования браузера. Оба являются клиентскими наборами инструментов.
Тип mcp_toolset не версионируется по дате; вместо этого версионирование передаётся в заголовке anthropic-beta.
Клиентские наборы инструментов
Инструмент использования компьютера и инструмент использования браузера — это определяемые Anthropic «client toolsets» (клиентские наборы инструментов): одна запись в tools объявляет фиксированный набор инструментов-членов, чьи имена, описания и входные схемы определяет Anthropic, а ваше приложение выполняет каждый вызов. Запись не принимает name, поскольку датированный type фиксирует имена членов. configs, cache_control и allowed_callers (который принимает только ["direct"]) необязательны.
Клиентские наборы инструментов — это инструменты Messages API. В настоящее время они недоступны в качестве агентских инструментов в Claude Managed Agents, который предоставляет собственный встроенный агентский набор инструментов, наборы инструментов MCP и пользовательские инструменты.
{
"type": "browser_toolset_20260801",
"configs": {
"javascript_exec": { "enabled": true }
},
"cache_control": { "type": "ephemeral" }
}configs настраивает отдельных членов:
- Ключи — это имена членов, и каждое значение принимает только
enabledиdefer_loading. - Член, который вы опустили, сохраняет значения по умолчанию. Отсутствующее значение,
{}и повторно указанное значение по умолчанию эквивалентны. - Неизвестное имя члена или любое другое поле в значении члена отклоняется, как и
configs, отключающий всех членов (вместо этого опустите запись). - Отключённый член удаляется из инструментов, которые видит Claude. Если Claude всё же называет его, верните
tool_resultс ошибкой.
Задавайте defer_loading для каждого члена, никогда не на уровне записи, и присваивайте всем включённым членам одинаковое значение: при поиске инструментов набор инструментов загружается и разворачивается как одно определение. Когда все включённые члены отложены, обнаружить набор инструментов может только инструмент поиска инструментов, который сам не отложен, поэтому объявите его в том же запросе. Не помещайте cache_control на запись набора инструментов, члены которого отложены; вместо этого установите точку разрыва на неотложенном инструменте, поскольку отложенные определения не входят в кэшируемый префикс.
cache_control указывается только на уровне записи; чтобы узнать, где оказывается точка разрыва, включая маркеры внутри пакетного действия, см. Использование инструментов с кэшированием подсказок.
Обработка вызовов инструментов-членов. Claude вызывает член блоком tool_use, у которого name — имя члена, а toolset_name — computer или browser; input содержит параметры этого члена и не содержит поля action. Выполняйте диспетчеризацию по паре toolset_name и name, поскольку пользовательский инструмент может иметь то же имя, что и член, а два набора инструментов имеют общие имена, такие как screenshot. Только результаты членов возвращают toolset_name. Несколько вызовов членов за один ход образуют пакетное действие, которое вы выполняете по порядку (использование компьютера, использование браузера). Новые члены появляются только с новым датированным type.
Не поддерживается для записей наборов инструментов. API отклоняет каждое из следующего с ошибкой invalid_request_error:
strict: trueилиinput_examples.defer_loadingна уровне записи или включённые члены с различающимися значениямиdefer_loading(задавайте его для каждого члена вconfigs, всем одинаковое значение).- Вызывающая сторона выполнения кода в
allowed_callers(без программного вызова инструментов). - Устаревший бета-заголовок
fine-grained-tool-streaming-2025-05-14. При потоковой передачеinputкаждого члена поступает как один полныйinput_json_delta. tool_choiceтипаtool, указывающий набор инструментов или член (используйтеauto,anyилиnone).- Две записи одного и того же набора инструментов или другой инструмент, носящий имя этого набора: инструмент с именем
computerрядом сcomputer_toolset_20260801или инструмент с именемbrowserрядом сbrowser_toolset_20260801. Два набора инструментов можно объявлять вместе.
Свойства определения инструмента
Каждый инструмент в массиве tools, включая пользовательские инструменты, принимает необязательные свойства, которые управляют тем, как инструмент загружается, кто может его вызывать и как проверяются его входные данные. Эти свойства сочетаются: вы можете задать defer_loading, cache_control и strict для одного и того же инструмента.
| Свойство | Назначение | Доступно для | Подробное руководство |
|---|---|---|---|
cache_control | Установить точку разрыва кэша подсказок на этом определении инструмента | Все инструменты (для computer_toolset_20260801 и browser_toolset_20260801 задавайте его на самой записи набора инструментов, а не внутри configs членов) | Кэширование подсказок |
strict | Гарантировать проверку схемы для имён инструментов и входных данных | Все инструменты, кроме mcp_toolset, computer_toolset_20260801 и browser_toolset_20260801 | Строгое использование инструментов |
defer_loading | Исключить инструмент из начальной системной подсказки; загружать его по требованию, когда поиск инструментов возвращает для него tool_reference | Все инструменты (для mcp_toolset см. конфигурацию инструментов). Для наборов инструментов использования компьютера и браузера задавайте его для каждого члена внутри configs; см. Клиентские наборы инструментов. | Инструмент поиска инструментов |
allowed_callers | Ограничить, какие вызывающие стороны могут вызывать инструмент | Все инструменты, кроме mcp_toolset (для computer_toolset_20260801 и browser_toolset_20260801 принимается только ["direct"]; см. Клиентские наборы инструментов) | Программный вызов инструментов |
input_examples | Предоставить примеры входных объектов, чтобы помочь Claude понять, как вызывать инструмент | Пользовательские инструменты и клиентские инструменты со схемой Anthropic, кроме computer_toolset_20260801 и browser_toolset_20260801. Недоступно для серверных инструментов. | Определение инструментов |
eager_input_streaming | Включить детализированную потоковую передачу входных данных (true) или сохранить стандартную буферизованную потоковую передачу (false) для этого инструмента | Только пользовательские инструменты | Детализированная потоковая передача инструментов |
Значения allowed_callers
allowed_callers — это массив, принимающий любую комбинацию следующих значений:
| Значение | Смысл |
|---|---|
"direct" | Модель может вызывать этот инструмент напрямую в блоке tool_use. Это значение по умолчанию, если allowed_callers опущен. |
"code_execution_20260120" | Код, выполняющийся внутри песочницы code_execution_20260120 или более поздней, может вызывать этот инструмент. |
И "code_execution_20260120", и "code_execution_20260521" принимаются в allowed_callers и взаимозаменяемы: запрос, использующий любую из версий инструмента выполнения кода, удовлетворяет инструментам, в которых указана любая из этих вызывающих сторон. Блоки ответа всегда помечают вызывающую сторону как code_execution_20260120 независимо от того, какую версию объявил запрос.
Исключение "direct" из массива (например, "allowed_callers": ["code_execution_20260120"]) направляет Claude вызывать инструмент только изнутри выполнения кода. Блок tool_use в ответе включает поле caller, которое указывает, какая вызывающая сторона вызвала инструмент. Полное описание, включая форму caller в ответе и поведение при ошибках, см. в разделе Программный вызов инструментов.
defer_loading и кэширование подсказок
Инструменты с defer_loading: true удаляются из отрисованного раздела инструментов до вычисления ключа кэша. Они вообще не появляются в префиксе системной подсказки. Когда поиск инструментов обнаруживает отложенный инструмент и возвращает для него tool_reference, полное определение инструмента разворачивается непосредственно в этой точке тела разговора, а не в префиксе.
Это означает, что defer_loading: true сохраняет ваш кэш подсказок. Вы можете добавлять отложенные инструменты в запрос, не аннулируя существующую запись кэша, и кэш остаётся действительным на протяжении хода, в котором инструмент обнаружен, и хода, в котором он вызван.
Чтобы узнать, как сочетать defer_loading с точками разрыва cache_control, см. рекомендации по кэшированию подсказок для инструмента поиска инструментов.
Was this page helpful?