Skip to content

Инструменты с чужой машины (MCP)

MCP-сервер — это машина, которой владеет кто-то другой, и её инструменты ваш агент вызывает как свои собственные. Команда регистрирует такой сервер один раз — имя, адрес и названия кредов, которые он просит, — и подключает его скольким угодно агентам.

Регистрация происходит тремя способами: формой, фразой в чате и просто доменом. Эта страница — все три, и что вы увидите после каждого.

Это клиентская половина

Всё остальное в этих доках, где написано «MCP», — это Agentfy в роли MCP-сервера: канал инструментов, которым говорит воркер, и наша собственная выставка наружу. Здесь — противоположное направление: клиент мы, и звоним мы на чужой сервер.

Что такое регистрация

Одна запись, принадлежащая команде, а не агенту:

имякак человек его называет — «DeepWiki». Никогда не имя инструмента: инструменты — это то, чем ответил сервер, без всяких префиксов
адресего Streamable HTTP-адрес, https://mcp.example.com/mcp
названия кредоввида service:Headerdeepwiki:Authorization. Названия, но не значения
куда можно звонитьпотолок оператора, пересечённый с тем, что попросила команда
его инструментыпоследний ответ сервера, сохранённый на записи

Подключение к агенту — второе, отдельное действие. Два агента на одном сервере — это одна регистрация и два подключения, и отключение одного не трогает второго.

Где экраны

список командырабочая панель слева — иконка вилки, подписи у неё нет; слово «MCPs» появляется заголовком уже на самом экране (/teams/<команда>/mcps)
у одного агентаоткройте агента → вкладка MCPs

У типов агентов, которым серверы не положены, вкладки нет: api отказывает им в подключении, и вкладка исчезает из-за этого отказа, а не вместо него.

Три инструмента — если встретите их в трейсе

Агент делает это именованными инструментами, и имена видны в трейсе разговора:

connect_mcp_serverзарегистрировать сервер и подключить его этому агенту
discover_mcp_serverпо голому домену прочитать, что этот домен объявляет
check_mcp_serverпозвонить на подключённый сервер и рассказать, что на самом деле произошло

Ни один из них не принимает ни идентификатор агента, ни идентификатор команды. «Подключи сервер чужому агенту» — это не то, что модель может выразить, не говоря уже о том, чтобы получить отказ.

В базе регистрация — это одна строка AgentMcpServer, а каждое подключение к агенту — одна строка AgentMcpServerUse; именно поэтому отключение одного агента — это удаление единственной строки и второго тронуть не может.

1. Зарегистрировать руками

На командном экране MCPs:

  1. Как назвать — «DeepWiki».
  2. Адресhttps://mcp.deepwiki.com/mcp.
  3. Названия кредов через запятую — оставьте пустым, если серверу ничего не нужно.
  4. Завести сервер.

Что видно, когда получилось: появилась строка, под ней перечислены Инструменты, а Спрашивали несёт время. Этот список — собственный ответ сервера, а не догадка; если он пуст, строка так и говорит: сервер ещё не сказал, что умеет.

Что видно, когда не получилось: строка всё равно появляется, с пометкой «не удалось достучаться» и причиной. Спросить снова перезванивает; удачный звонок стирает сообщение, так что это никогда не устаревший упрёк.

Дальше откройте агента → MCPsПодключить уже заведённый → выберите его. На следующем ходу у агента эти инструменты уже будут.

2. Попросить агента

Экран открывать вообще не обязательно. Вставьте адрес в чат с агентом и скажите «подключи» — инструмент для этого у агента есть, и он знает, что им надо воспользоваться:

Подключи MCP-сервер по адресу https://mcp.deepwiki.com/mcp, назови его DeepWiki.

Агент, который это умеет, не ответит, что это делается в настройках. Он зарегистрирует сервер для команды и подключит его себе, а созданная им строка на командном экране помечена «завёл агент» — так что «кто это сюда положил» остаётся вопросом с ответом.

Никогда не набирайте API-ключ в чате. Если серверу нужен ключ, агент попросит его так же, как просит любой другой: название приедет незаполненным на экран Секреты агента, и значение вы впишете там. Инструмент подключения принимает название ключа и отказывается принимать значение.

Когда подключённый сервер перестал работать, спросите агента, что с ним не так. Он позвонит на сервер и расскажет, что на самом деле произошло, вместо того чтобы гадать о себе.

3. Дать только домен

Чаще всего точного адреса нет ни у кого — знают компанию. Этого достаточно:

Подключи MCP от dreamvention.com.

Агент читает один файл по одному адресу: https://<домен>/.well-known/mcp.json — то объявление, которое домен публикует о собственном сервере. Если оно есть, вернутся адрес, транспорт и то, что сервер о себе говорит, и агент пойдёт его подключать. Если объявления нет, агент скажет об этом и попросит адрес — именно в таком порядке, чтобы никого не отправляли к администратору «открывать доступ».

Узость здесь — это и есть смысл, и она намеренная:

один путь/.well-known/mcp.json — попросить другой путь невозможно
один хосттот, который назвал человек
один метод, одна схемаGET, https
никаких кредовни командных, ни чьих-либо — ещё никто не сказал, кто там отвечает
с потолкомпять секунд и 64 КиБ, потому что чужой адрес не должен уметь подвесить ход

Файл на a.com, объявляющий сервер на b.com, — это редирект, написанный словами. Молча за ним не идут: агент приносит это человеку и спрашивает.

Креды, одним правилом

Название имеет вид service:Header, и часть после последнего двоеточия — это HTTP-заголовок, которым уедет значение. deepwiki:Authorization значит: возьми значение, сохранённое командой под этим названием, и отправь его заголовком Authorization. Это весь механизм; второго места, где настраиваются заголовки, нет.

Названия живут на регистрации, значения — в общих секретах команды и через ручку регистрации не проходят никогда. Удаление сервера не удаляет креды: ими может пользоваться другой сервер.

Куда серверу можно звонить

Адрес, который вы вписали, — это адрес, на который звонит api, а api — это процесс, у которого в руках база и ключ шифрования. Поэтому регистрация не вольна указывать куда угодно:

  • оператор задаёт потолок на всю установку;
  • команда может попросить меньше, но не больше — выигрывает более узкое;
  • loopback, приватные диапазоны, link-local и адрес метаданных облака запрещены, и проверка разрешает имя и смотрит на каждый адрес, которым оно обернулось;
  • за редиректами не ходят.

За что на самом деле платит ход

Инструменты, которые ход показывает модели, берутся из сохранённого списка. Пока человек ждёт, никуда не звонят: сервер, который принимает соединение и потом молчит, иначе стоил бы минут на каждом ходу. Спросить снова — вот как список обновляется, и того же обновления агент может попросить из чата.

Две вещи, которых подключённый сервер не получает никогда: разговор и системный промпт. Ему дают аргументы, которые выбрала модель, и его собственные креды — и больше ничего.

Посетителю с вашего сайта эти инструменты не достаются, что бы владелец ни открыл на том канале.

Чего здесь намеренно ещё нет

  • stdio-серверов. Это означает запуск процесса рядом с веб-сервером. Им место в собственном канале воркера, позже.
  • Набора. Карточка в одно нажатие, несущая сервер, его креды и его навыки вместе, — вот то, что заслужит слово «приложение». Одно подключение — это ещё не оно.

Рассуждение за каждой формой на этой странице и замеры, которые её выбрали, лежат в specs/AGNT2-327-agent-app/research.md, specs/AGNT2-329-mcp-step-1/ и specs/AGNT2-330-agent-connects-mcp/. Там оригинал; здесь — пересказ.

Проверить целиком

  1. Рабочая панель, иконка вилки — или сразу /teams/<команда>/mcps.
  2. Зарегистрируйте https://mcp.deepwiki.com/mcp под именем «DeepWiki», без названий кредов.
  3. В строке обязан появиться непустой список Инструментов и время в Спрашивали.
  4. Откройте любого агента, у которого есть вкладка MCPsПодключить уже заведённый → DeepWiki.
  5. В чате с этим агентом попросите воспользоваться одним из инструментов из пункта 3.

Вызов инструмента появится в ходу, и ответ придёт с настоящим результатом сервера. Если на пункте 3 написано «Не удалось достучаться», причина — адрес, потолок оператора или сам сервер, именно в таком порядке вероятности.