# Инструменты (tools): действия, которые умеет сервер

Курс: MCP: подключаем инструменты — https://zero2claude.ru/learn/mcp
Канонический URL: https://zero2claude.ru/learn/mcp/1-2-tools

Tool — это действие, которое умеет сервер: у него есть имя, описание и схема входа. Вызвать его предлагает модель, а запускать решает человек.

Первый и самый частый примитив MCP — **tool**, инструмент. Tool — это **действие**, которое умеет сервер: «найти задачу в трекере», «создать запись в базе», «выгрузить остатки из 1С». Не данные — именно глагол, что-то, что меняет мир или запрашивает результат.

## Из чего состоит tool

У каждого инструмента три части:

- **имя** — короткий идентификатор, например `create_task`;
- **описание** — человеческим языком: что делает и когда применять;
- **схема входа** (`input_schema`) — какие параметры принимает и какого типа.

Вот как сервер примерно объявляет инструмент:

```
{
  "name": "create_task",
  "description": "Создаёт задачу в трекере. Используй, когда пользователь просит завести новую задачу.",
  "input_schema": {
    "title": "string",
    "assignee": "string",
    "due": "string (дата)"
  }
}
```

Описание тут не украшение. Модель не видит код инструмента — она видит только имя, описание и схему. **По описанию она и решает**, какой инструмент вызвать и с какими параметрами. Плохое описание — модель промахнётся или не вызовет вовсе.

## Вызывает модель — запускает человек

Ключевая граница безопасности: модель **вызывает** инструмент (формирует запрос: имя + аргументы), но **выполнить** действие разрешает человек или хост. Особенно это важно для инструментов, которые меняют состояние: создают записи, удаляют, отправляют.

Когда оцениваешь чужой MCP-сервер, читай не только список инструментов, а их описания и схемы. Это и есть «интерфейс», по которому Claude будет действовать.
