Инструменты MCP — это функции, которые модель ИИ может вызывать для выполнения задач вне контекста диалога. Например, для поиска по вашим заметкам или выполнения запроса к базе данных. Каждый инструмент находится на сервере MCP (Model Context Protocol) и имеет имя и краткое описание, которые помогают модели решить, когда его использовать.
Термин «инструмент MCP» используется и в других значениях. В повседневной речи люди говорят «инструменты MCP», имея в виду серверы MCP (приложения, которые предоставляют инструменты) или каталоги, в которых перечислены эти серверы. MCP Tools — это также название программы командной строки для перечисления и вызова инструментов на сервере MCP.
Это руководство посвящено функциям протокола, а не серверам, каталогам или командным строкам. В нем объясняется, из чего состоит инструмент, какие виды инструментов предлагают серверы и чем инструменты отличаются от ресурсов, промптов и вызова функций. Затем описываются шаги, которые предпринимает модель для использования инструмента, и в заключение рассматриваются наиболее распространенные проблемы, связанные с их использованием.
Что такое инструменты MCP?
Инструмент MCP — это функция, которая позволяет моделям ИИ выполнять задачи с помощью других программных приложений. Например, мои ИИ-агенты и рабочие процессы используют инструменты MCP для создания черновиков писем в Gmail (create_draft), создания карточек Trello (trelloWriteCard) и получения актуальных результатов поиска из DataForSEO (serp_organic_live_advanced), и это лишь некоторые из них.
Программные приложения часто предлагают несколько инструментов MCP на своих серверах MCP. Например, сервер Trello MCP в настоящее время содержит 14 инструментов MCP, которые позволяют моделям ИИ читать и обновлять доски, списки, чек-листы, карточки и многое другое.
А поскольку MCP стандартизирует способ описания и предоставления инструментов, любое приложение ИИ, поддерживающее этот протокол, может использовать один и тот же инструмент MCP.
Что включает в себя инструмент MCP
Каждый инструмент MCP состоит из трех элементов:
- Имя: Краткий идентификатор, который модель использует при вызове инструмента (например, get_event в Google Calendar).
- Описание: Понятное объяснение того, что делает инструмент и когда он полезен. Большая языковая модель (LLM) читает его, чтобы решить, подходит ли инструмент для вашего запроса (например, «Возвращает одно событие из указанного календаря»).
- Входные данные: Информация, необходимая инструменту для работы, например, имя клиента и дата для поиска в заметках. Она записывается в формате JSON, и разработчики называют это схемой входных данных (input schema), поскольку она задает формат для каждого ввода (текст, число или список).
Некоторые инструменты добавляют дополнительные метаданные: отображаемое имя, описание возвращаемых результатов (выходная схема) и аннотации о том, как ведет себя инструмент.
Модель ИИ никогда не видит код, стоящий за инструментом. Она работает на основе того, что инструмент сообщает о себе, поэтому нечеткое имя или описание приведет к тому, что модель выберет не тот инструмент.
Какие виды инструментов MCP существуют
Инструменты MCP делятся на четыре группы в зависимости от того, что они делают:
- Инструменты поиска и просмотра: Поиск или получение информации (например, поиск по заметкам, чтение файла или запрос к базе данных).
- Инструменты действий: Создание или изменение чего-либо в другом приложении (например, добавление задачи, создание события в календаре, открытие тикета в службу поддержки или отправка электронного письма).
- Инструменты обработки данных: Преобразование или анализ данных (например, анализ файла электронной таблицы или выполнение вычислений).
- Системные инструменты: Взаимодействие с локальной системой (например, выполнение команды в терминале).
Инструменты MCP против ресурсов и промптов
Помимо инструментов MCP, сервер MCP может предлагать два других типа строительных блоков, которые в протоколе называются примитивами: ресурсы и промпты.
Например, официальный сервер MCP для GitHub предлагает:
- Инструмент под названием issue_write, который создает или обновляет задачи (issues),
- Ресурс под названием repository_content, который предоставляет доступ к файлам в репозитории,
- Промпт под названием issue_to_fix_workflow, который настраивает шаги для сообщения о проблеме в виде задачи и позволяет агенту кодирования GitHub Copilot создать pull request для ее исправления.
Разница заключается в том, что именно делает каждый из них и кто решает, когда его использовать: вы, приложение ИИ, в котором вы работаете (например, Perplexity), или модель ИИ, работающая внутри этого приложения.
- Инструмент MCP выполняет действия или ищет информацию. Модель ИИ автономно решает, когда вызвать инструмент, а ваше приложение ИИ передает вызов на сервер. Ваша модель ИИ выбирает инструменты; ваше приложение ИИ должно показывать вам каждый вызов и позволять отклонить его.
- Ресурс — это контент, доступный на сервере MCP, например файл или набор записей, каждый из которых имеет свой адрес (URI). Ваше приложение ИИ запрашивает у сервера, какие ресурсы у него есть, считывает нужный по адресу и добавляет контент в диалог в качестве контекста.
- Промпт — это готовый шаблон сообщения, который предоставляет сервер, иногда с пустыми полями для заполнения. Ваше приложение ИИ показывает вам доступные промпты, и вы выбираете один из них, часто с помощью команды с косой чертой (slash command).
Как модели ИИ используют инструменты MCP
Модель ИИ использует инструмент MCP в пять этапов: обнаружение, выбор инструмента, вызов, получение результатов и обработка ошибок. Ваше приложение ИИ передает все данные между моделью и сервером.
Допустим, вы просите приложение ИИ проверить ваш список Trello «На этой неделе» и составить черновик письма вашему редактору с обновлением. Вот что происходит от начала до конца:
- Обнаружение: Когда ваше приложение ИИ подключается к серверу MCP через клиенты MCP, оно запрашивает список доступных инструментов сервера (запрос под названием tools/list). LLM видит только то, что передает приложение: имя, описание и входные данные каждого инструмента.
- Выбор инструмента: Модель ИИ сравнивает ваш запрос с этими описаниями и выбирает подходящие инструменты. В данном случае это trelloReadList в Trello для чтения списка и create_draft в Gmail для написания письма. Она также заполняет входные данные, например, какой список прочитать.
- Вызов: Модель отвечает структурированным запросом на выполнение инструмента (шаг, называемый «вызовом функции»). Ваше приложение ИИ отправляет этот запрос на нужный сервер (запрос tools/call). Оно также должно показать вам вызов и позволить его отклонить.
- Результаты: Сервер выполняет функцию и отправляет результат обратно, в данном случае — карточки из вашего списка. Ваше приложение ИИ добавляет результат в диалог, и модель решает, что делать дальше: ответить вам или вызвать другой инструмент, например create_draft с письмом, основанным на этих карточках.
- Обработка ошибок: Если инструмент запускается, но происходит сбой, например, из-за того, что список не существует, ошибка возвращается как часть результата. Модель может прочитать ее и попробовать снова с другими входными данными. Если сам запрос некорректен, например, из-за вызова инструмента, которого нет на сервере, приложение получает ошибку протокола. Модель с меньшей вероятностью сможет восстановиться после этого.
Ключевой момент заключается в том, что модель выбирает инструменты исключительно на основе их описаний, а все взаимодействие с серверами берет на себя ваше приложение ИИ.
Распространенные проблемы инструментов MCP и способы их избежать
Проблемы с инструментами MCP сводятся к четырем вещам: сколько инструментов подключено, как они названы и описаны, какой объем данных они возвращают и с каких серверов они поступают.
Вот как выглядит каждая проблема и что помогает:
Проблема
Как это выглядит
Что помогает
Подключено слишком много инструментов
Определение каждого инструмента находится в контекстном окне модели еще до того, как вы о чем-либо спросили, и выбор инструментов ухудшается по мере роста списка.
Подключайте только те серверы, которые нужны для задачи, и отключайте неиспользуемые инструменты там, где это позволяет ваше приложение ИИ. Пример: сервер MCP для GitHub позволяет включать только те группы инструментов (наборы инструментов), которые вам нужны.
Нечеткие или перекрывающиеся описания
Модель вызывает не тот инструмент или правильный с неверными входными данными, потому что два описания похожи друг на друга или одно из них содержит слишком мало информации.
Предоставляйте четкие, конкретные имена и описания, в идеале — с примером того, когда следует использовать этот инструмент. Если инструменты сервера продолжают давать сбои, MCP Inspector, официальный инструмент тестирования, показывает exactamente то, что каждый инструмент говорит о самом себе.
Одинаковое имя инструмента на двух серверах
Два разных сервера предлагают инструмент с названием search, и невозможно определить, какому именно из них предназначен вызов.
Добавляйте к именам инструментов префиксы с именем сервера. Пример: сервер Trello (trelloSearch, trelloReadList).
Слишком большие результаты
Инструмент возвращает больше, чем требуется для задачи, например всю цепочку писем с форматированием, и перегружает контекст модели.
Используйте инструменты, предлагающие компактные форматы. Пример: описание инструмента get_thread в Gmail рекомендует использовать формат обычного текста, «чтобы предотвратить истощение контекста».
Недоверенные серверы
Неосторожный или вредоносный сервер может использовать вызовы инструментов для извлечения данных из вашего разговора.
Подключайте серверы только из надежных источников и не отключайте подтверждения для инструментов, которые вносят изменения или отправляют данные наружу.
Почему инструментам MCP требуется ваше одобрение?
Инструментам MCP требуется ваше одобрение, потому что без него модель ИИ может внести изменения, которых вы не планировали, или передать конфиденциальные данные серверу, который вы не контролируете.
Неправильно понятый запрос или нечетко описанный инструмент могут запустить нежелательное действие. Кроме того, при каждом вызове часть вашей информации отправляется на сервер.
Именно поэтому протокол предполагает, что приложения ИИ оставляют человека «в контуре», наделяя его возможностью отклонить любой вызов инструмента.
Вот практический способ классификации инструментов по степени необходимой проверки:
- Действия, связанные только с чтением: Поиск информации, например чтение списка с помощью trelloReadList от Trello, ничего не меняет. Такие вызовы могут выполняться без предварительного запроса, если ваше приложение ИИ показывает, какой инструмент был запущен и что он искал.
- Действия, которые можно отменить: Создание черновика письма с помощью create_draft в Gmail или добавление карточки в Trello изменяет то, что можно обратить вспять. Проверяйте входные данные до выполнения вызова.
- Действия, которые нельзя отменить: Отправка письма с помощью send_message в Gmail, удаление записей или любые операции, связанные с платежами и конфиденциальными данными, необратимы. Давайте явное разрешение на такие действия каждый раз.
Использование инструментов MCP в Perplexity
Perplexity работает с инструментами MCP в обоих направлениях: она может использовать инструменты с подключаемых серверов MCP, а также предлагает собственные инструменты другим приложениям ИИ.
- Подключение MCP-серверов к Perplexity: В планах Pro, Max и Enterprise вы можете подключить Perplexity к любому внешнему инструменту или источнику данных, у которого есть MCP-сервер, и использовать его в ответах и агентных рабочих процессах Perplexity Computer. В приложении для Mac вы также можете подключать MCP-серверы, запущенные на вашем компьютере
- Использование инструментов Perplexity в других приложениях ИИ: MCP-сервер Perplexity предлагает четыре инструмента (perplexity_search, perplexity_ask, perplexity_research и perplexity_reason) любому приложению ИИ, поддерживающему удаленные MCP-серверы, например Claude Code. Отдельный сервер позволяет другим приложениям ИИ передавать многоэтапные задачи Perplexity Computer.
Часто задаваемые вопросы об инструментах MCP
Является ли MCP просто вызовом функций?
Нет, MCP — это не просто вызов функций (tool calling). Вызов функций — это то, как модель запрашивает инструмент, а MCP — это то, как приложение ИИ находит инструменты и направляет каждый вызов на сервер, который его запускает.
Вызов функций (также известный как function calling) — это задача модели ИИ: модель видит список инструментов и отвечает запросом на запуск одного из них. При использовании только вызовов функций каждое приложение ИИ должно самостоятельно определять и запускать каждый инструмент.
MCP позволяет инструментам находиться на серверах, поэтому любое приложение ИИ с поддержкой MCP может предлагать их своей модели и отправлять запросы модели на правильный сервер.
Заменит ли MCP API?
Нет, MCP не заменит API, потому что MCP и API работают совместно. Инструменты MCP часто надстраиваются над существующими API, и когда модель вызывает инструмент, MCP-сервер обычно делает запрос к API.
Какие приложения ИИ поддерживают инструменты MCP?
Инструменты MCP работают в таких ИИ-ассистентах, как Claude, ChatGPT и Perplexity, а также в средствах разработки, таких как Visual Studio Code и Cursor. В документации MCP они упоминаются, а также отмечается, что многие другие приложения тоже их поддерживают.
Нужно ли самой модели ИИ поддерживать MCP?
Нет. Самой модели ИИ не нужно поддерживать MCP, поскольку этот протокол обрабатывается вашим приложением ИИ. Оно подключается к серверам, передает их инструменты модели и отправляет запросы модели обратно на нужный сервер. От модели требуется лишь поддержка вызова функций (function calling).
Устаревает ли MCP?
Нет, MCP все еще находится в активной разработке. Его разработчики выпустили новую версию спецификации MCP в июле 2026 года и опубликовали обновленную дорожную карту в августе 2026 года, которая включает работы по предоставлению серверам возможности постепенно раскрывать свои инструменты по мере сужения контекста беседы.










