Создание пользовательских инструментов
Используйте вспомогательные функцииcreateSdkMcpServer
и tool
для определения типобезопасных пользовательских инструментов:
Использование пользовательских инструментов
Передайте пользовательский сервер в функциюquery
через опцию mcpServers
в виде словаря/объекта.
Важно: Пользовательские MCP-инструменты требуют режима потокового ввода. Вы должны использовать асинхронный генератор/итерируемый объект для параметра
prompt
- простая строка не будет работать с MCP-серверами.Формат имени инструмента
Когда MCP-инструменты предоставляются Claude, их имена следуют определенному формату:- Шаблон:
mcp__{server_name}__{tool_name}
- Пример: Инструмент с именем
get_weather
на сервереmy-custom-tools
становитсяmcp__my-custom-tools__get_weather
Настройка разрешенных инструментов
Вы можете контролировать, какие инструменты может использовать Claude, через опциюallowedTools
:
Пример с несколькими инструментами
Когда ваш MCP-сервер имеет несколько инструментов, вы можете выборочно разрешить их:Типобезопасность с Python
Декоратор@tool
поддерживает различные подходы к определению схем для типобезопасности: