Создание пользовательских инструментов
Используйте вспомогательные функции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 поддерживает различные подходы к определению схем для типобезопасности: