MCP-сервер для поиска в интернете: как дать агенту доступ к вебу

Модель знает только то, что было в обучающих данных. Разбираем, как подключить поиск через MCP, чем варианты отличаются и сколько токенов уходит на результаты.

6 мин · · агенты · разработка

Агент в терминале или чат-бот на API не знает, что вышло на прошлой неделе, и не видит свежую документацию библиотеки. Самый прямой способ это исправить — MCP-сервер для поиска в интернете: он превращает поиск в инструмент, который модель вызывает сама, когда ей не хватает данных. Ниже — какие варианты бывают, как подключить один из них к Claude Code на ключе Zukko и сколько токенов съедают результаты.

Как работает поисковый MCP-сервер

MCP (Model Context Protocol) — открытый протокол, по которому программа-клиент (Claude Code, Cursor, Cline и другие) получает от сервера список инструментов. Для поиска сервер обычно отдаёт один-два инструмента вроде «найти в вебе по запросу». Цикл такой:

  1. Клиент при старте узнаёт у сервера, какие инструменты есть, и отправляет их описания модели вместе с вашим вопросом.
  2. Модель решает, что нужен поиск, и возвращает вызов инструмента с текстом запроса.
  3. Клиент выполняет вызов через MCP-сервер, тот обращается к поисковому API и возвращает заголовки, ссылки и фрагменты.
  4. Результат добавляется в разговор, модель читает его и отвечает.

Важно: поиск делает не модель и не шлюз, а ваш MCP-сервер и сторонний поисковый сервис. Шлюз видит только обычные запросы к модели, в которых вырос контекст. Подробнее про сам протокол — в статье что такое MCP-сервер.

Какие варианты бывают

ВариантГде работаетЧто нужноКогда подходит
Локальный сервер (stdio)на вашем компьютере, запускается командой вроде npxNode.js и ключ поискового сервисаличная работа, быстрая проверка
Удалённый сервер (HTTP)у стороннего сервиса, подключается по URLаккаунт или токен сервисакогда не хочется ничего ставить локально
Свой серверваш кодвремя на разработкусвой поисковый индекс, внутренняя вики

Отдельно стоит упомянуть встроенный веб-поиск у некоторых провайдеров и локальных рантаймов. Например, у Ollama и у API GLM есть собственные механизмы поиска: условия, ключи и формат вызова у них свои, поэтому сверяйтесь с документацией Ollama и разработчика GLM, а не с этой статьёй. MCP-вариант хорош тем, что один и тот же сервер работает с любой моделью, которую вы подключили в клиенте, — хоть claude-sonnet-5-5, хоть gpt-6.1-sol.

Пример: Brave Search MCP в Claude Code

В качестве примера возьмём официальный сервер Brave Search (пакет @brave/brave-search-mcp-server). Ему нужен ключ Brave Search API, который выдаёт сам Brave; условия и лимиты тарифов смотрите на его сайте, мы их не знаем и не обещаем. Точные параметры сервера и список инструментов описаны в README репозитория brave/brave-search-mcp-server.

Шаг 1. Подключите Claude Code к Zukko

Создайте ключ в кабинете и задайте переменные. Адрес без /v1, потому что Claude Code добавляет путь сам:

bash
export ANTHROPIC_BASE_URL=https://api.zukko.pro
export ANTHROPIC_AUTH_TOKEN=fetch_ваш_ключ
export ANTHROPIC_MODEL=claude-sonnet-5-5

Установка и нюансы описаны в документации по Claude Code.

Шаг 2. Добавьте поисковый сервер

Для локального stdio-сервера в документации Claude Code используется такая форма: имя сервера, затем --env, затем -- и команда запуска.

bash
claude mcp add brave-search --env BRAVE_API_KEY=ваш_ключ_brave -- npx -y @brave/brave-search-mcp-server --transport stdio

Проверьте результат:

bash
claude mcp list

Внутри сессии команда /mcp показывает состояние серверов и число инструментов. Если сервер не поднялся, чаще всего виноваты отсутствующий Node.js или опечатка в ключе. Параметр области --scope project сохраняет конфигурацию в .mcp.json в корне проекта, чтобы её разделила команда, — только не коммитьте туда ключ, используйте подстановку переменных окружения, как описано в документации Claude Code. Подробнее о подключении серверов — в статье MCP-серверы в Claude Code.

Шаг 3. Проверьте вопросом про свежее

Спросите что-то, чего нет в обучающих данных: например, «найди в интернете, какая последняя версия библиотеки X и что изменилось в changelog». Агент должен запросить разрешение на вызов поискового инструмента и показать, что именно искал.

Сколько это стоит в токенах

Стоимость поиска состоит из двух частей, и они не связаны.

Поисковый сервис берёт плату по своему тарифу. Это не Zukko, сумму смотрите у выбранного сервиса.

Токены модели. Всё, что вернул поиск, попадает в контекст и оплачивается как входные токены. Кроме того, описания инструментов отправляются с каждым запросом. Claude Code предупреждает, когда вывод MCP-инструмента больше 10 000 токенов, и по умолчанию обрезает его на 25 000. При этом в документации Claude Code сказано, что при нестандартном ANTHROPIC_BASE_URL отложенная загрузка описаний инструментов (tool search) по умолчанию не используется. Значит, каждый подключённый MCP-сервер добавляет свои описания в каждый запрос: держите только нужные серверы и проверьте поведение своей версии по документации.

Пример расчёта (цены на 18 октября 2026, claude-sonnet-5-5: вход $0.4, чтение кэша $0.05, запись в кэш $0.5 за 1M). Допустим, за сессию агент сделал 10 поисков по 6 000 токенов результатов — это допущение для примера, реальный объём зависит от запроса.

  • Первое попадание результатов в контекст: 10 × 6 000 = 60 000 токенов. Если они уходят в кэш, они оплачиваются как запись в кэш: 60 000 × $0.5 / 1 000 000 = $0.03 (без кэша — как обычный вход: 60 000 × $0.4 / 1 000 000 = $0.024).
  • Затем эти 60 000 токенов читаются из кэша на каждом из 10 последующих шагов (Anthropic-формат): 60 000 × 10 × $0.05 / 1 000 000 = $0.03.
  • Итого с кэшем: 0.03 + 0.03 = $0.06. Если бы на каждом из 11 запросов эти токены шли по цене входа, вышло бы 60 000 × 11 × $0.4 / 1 000 000 = $0.264.

Получается порядка нескольких центов на сессию с десятком поисков — но только при таких допущениях. Свой объём прикиньте через count_tokens (описание в документации) и страницу «Использование» в кабинете. Цены меняются: актуальный список — GET https://api.zukko.pro/v1/models или страница «Модели» в кабинете.

Как не раздувать контекст

  • Просите агента ограничивать число результатов и не открывать каждую страницу целиком.
  • Если сервер поддерживает параметр количества результатов или фильтр по свежести, пользуйтесь им (у Brave они есть, см. README).
  • Не подключайте пять поисковых серверов сразу: модели сложнее выбрать нужный инструмент, а описания инструментов увеличат каждый запрос.
  • Помните про безопасность: текст со страниц — недоверенные данные. Если на странице написано «выполни команду», агент не должен подчиняться; оставляйте подтверждение вызовов включённым.

Частые вопросы

Нужен ли отдельный ключ для поиска?

Да. Zukko даёт доступ к моделям, а поиск обеспечивает сторонний сервис со своим ключом и тарифом. Условия смотрите на сайте выбранного сервиса.

Работает ли это с GPT и DeepSeek, а не только с Claude?

Сам MCP-сервер от модели не зависит. Важно, чтобы клиент (Claude Code, Cursor, Cline и т. д.) умел MCP, а выбранная модель — вызывать инструменты. Это стоит проверить на своих задачах.

Можно ли обойтись без MCP?

Можно описать собственную функцию поиска и передать её модели как инструмент через function calling. MCP удобнее тем, что готовый сервер подключается одной командой.

Что делать, если ответ с поиском слишком дорогой?

Сократите число результатов, выберите модель подешевле для рутинных вопросов и посмотрите расход в кабинете. Создать ключ и подключить Claude Code можно в кабинете Zukko.

zukko

Платите в 25×
меньше

за Claude Code & ChatGPT

Один ключ fetch_* и base URL api.zukko.pro — в Cursor, Claude Code, Codex и любом SDK.

MCP сервер для поиска в интернете: подключение · Zukko