В предыдущей статье мы показали, как интегрировать API поиска и чтения от Jina AI с DeepSeek R1 для создания продвинутого исследовательского агента, но для этого потребовалось много кода и инженерии 提示词. В этой статье мы сделаем то же самое, используя Model Context Protocol (MCP), который требует гораздо меньше кода и переносим на разные 大模型, но при этом все еще подвержен некоторым проблемам.
Чтобы создать нашего агента, мы будем работать с недавно выпущенным MCP сервером, который предоставляет доступ к Jina Reader, Embeddings и Reranker API, а также к инструментам URL-to-markdown, веб-поиска, поиска изображений и 向量模型/重排器.
tagАгенты и протокол контекста модели
В последнее время было много написано об агентах и agentic AI, часто либо чрезмерно восхваляя их (как Gartner, которые ожидают, что к 2028 году около 15 процентов ежедневных рабочих решений будут приниматься автономно AI агентами), либо критикуя их (как Vortex, которые утверждают, что большинство предложений agentic AI не имеют значительной ценности или возврата инвестиций).
Но что же такое агенты? Одно из лучших определений (от Chip Huyen через Simon Willison):
[Агенты — это] 大模型 системы, которые планируют подход, а затем запускают инструменты в цикле до достижения цели
Это определение, которого мы будем придерживаться в этой статье. А те инструменты, которые использует агент? Они связаны с протоколом контекста модели. Этот протокол, первоначально разработанный Anthropic, становится lingua franca для подключения 大模型 к внешним инструментам и источникам данных. Это означает, что агенты могут объединять несколько инструментов в один рабочий процесс. В результате получаются агенты, которые могут планировать, рассуждать и действовать, координируя набор API.

Например, мы могли бы создать агента оптимизации цен, который собирает цены на продукты конкурентов для сравнения и оптимизации цен. Затем мы могли бы оснастить агента MCP сервером Jina AI, 提示词 и списком продуктов конкурентов, позволив ему сгенерировать отчет с практическими рекомендациями, собранными данными и ссылками на источники. Используя дополнительные MCP серверы, агент мог бы экспортировать этот отчет в формат PDF, отправлять его заинтересованным сторонам по электронной почте, хранить его во внутренней базе знаний и многое другое.
В этой статье мы создадим три примера агентов с нашим MCP сервером, который предоставляет следующие инструменты:
primer- Получение текущей контекстной информации для локализованных ответов с учетом времениread_url- Извлечение чистого, структурированного контента с веб-страниц в формате Markdown через Reader API (также доступно в параллельной версии)capture_screenshot_url- Съемка высококачественных скриншотов веб-страниц через Reader APIguess_datetime_url- Анализ веб-страниц на предмет последней даты обновления/публикации с оценками достоверностиsearch_web- Поиск в интернете актуальной информации и новостей через Reader API (также доступно в параллельной версии)search_arxiv- Поиск научных статей и препринтов в репозитории arXiv через Reader API (также доступно в параллельной версии)search_images- Поиск изображений в интернете (аналогично Google Images) через Reader APIexpand_query- Расширение и переписывание поисковых запросов на основе модели расширения запросов через Reader APIsort_by_relevance- Переранжирование документов по релевантности запросу через Reranker APIdeduplicate_strings- Получение топ-k семантически уникальных строк через Embeddings API и субмодульную оптимизациюdeduplicate_images- Получение топ-k семантически уникальных изображений через Embeddings API и субмодульную оптимизацию
Нам также понадобится MCP клиент (VS Code с Copilot, поскольку он бесплатен и широко используется) и 大模型 (Claude Sonnet 4, поскольку он показал лучшие результаты в нашем тестировании).
tagИспользование MCP сервера Jina AI
MCP был описан как универсальная система плагинов, поддерживающая несколько программ, таких как Claude Code, VS Code, Google Gemini CLI и настольные интерфейсы для Claude и ChatGPT. Подключение MCP сервера обычно сводится к редактированию файла настроек, чтобы включить следующее:
{
"mcpServers": {
"jina-mcp-server": {
"url": "https://mcp.jina.ai/sse",
"headers": {
"Authorization": "Bearer ${JINA_API_KEY}" // optional
}
}
}
}
Чтобы проверить, работает ли MCP сервер, давайте используем простой 提示词:
Дайте мне краткое изложение последней новости на jina.ai в виде
одного куплета морской песниНаш агент делает следующее:
- Вызывает
read_urlдля извлечения данных с https://jina.ai/news - Вызывает
search_webс запросом"site:jina.ai \\"Optimizing GGUFs for Decoder-Only Embedding Models\\" August 2025" - Вызывает
read_urlдля извлечения данных из статьи в блоге - Генерирует один куплет морской песни из извлеченных данных:
🎵 *На мотив традиционной морской песни* 🎵
**"Сказание о моряке GGUF"**
*Они плыли со своими 向量模型, три миллиарда сильных и верных,*
*Через квантованные воды глубокие и синие,*
*С ветрами L4 GPU в спину,*
*Четыре тысячи 词元 в секунду на их пути!*
*Тяните, ребята, снимите vision tower вниз,*
*Потому что оптимизации GGUF — лучшие порты в городе!*
Теперь, когда мы увидели, что это работает на практике, давайте действительно проверим это на деле, создав несколько полезных реальных примеров.
tagПример 1: Ежедневные сводки статей arXiv
Чтение последних научных статей — часть нашей работы в Jina AI. Но отфильтровать действительно релевантные и извлечь наиболее важную информацию из каждой может быть настоящей рутиной. Поэтому для нашего первого эксперимента мы автоматизировали эту задачу, создав ежедневный дайджест наиболее релевантных последних статей. Вот 提示词, который мы использовали:
Используя только инструменты Jina, извлеките из arxiv статьи об
大模型, переранжировании и 向量模型, опубликованные за последние 24
часа, затем дедуплицируйте и переранжируйте по релевантности, выводя
топ-10. Для каждой статьи извлеките PDF и извлеките
аннотацию. Затем суммируйте ее и организуйте собранную информацию в
"ежедневное обновление". Включите ссылку и дату публикации
для каждой статьи.Наш агент:
- Ищет релевантные статьи arxiv.org (используя инструмент
parallel_search_arxiv) с запросамиlarge language models LLM,reranking information retrieval,embeddings vector representations,transformer neural networksиnatural language processing NLP - Удаляет дубликаты (используя инструмент
deduplicate_strings) - Переранжирует результаты (используя инструмент
sort_by_relevance), выводя только десять наиболее релевантных результатов. - Извлекает URL-адреса PDF-файлов для переранжированных результатов (используя
parallel_read_url), разделенные на две партии по пять. - Читает каждый URL-адрес (используя инструмент
read_url, вызываемый десять раз) - Создает подробный отчет, включающий аннотации, сводки, тенденции и аналитические выводы, последствия для будущих исследований, пробелы в исследованиях и выводы.

Иногда мы сталкивались с проблемой, когда агент не ограничивал свои результаты последними 24 часами. Дополнительное указание в **提示词** следовать этой инструкции привело к отчету выше.
tagПример 2: Агент для маркетинговых исследований
Для нашего следующего эксперимента мы попросим нашего агента написать отчет о конкурентной разведке о заметной компании, занимающейся видеоиграми (название скрыто). Вот наш **Prompt**:
Создайте всесторонний отчет о конкурентной разведке для
$GAME_COMPANY, сосредотачиваясь на ее недавней деятельности в области ретро
инди-игр. Используйте инструменты Jina для поиска последних новостей,
пресс-релизов и объявлений, затем извлеките чистый контент
из их официальных сообщений. Ранжируйте все результаты по
релевантности для бизнеса и удалите любую повторяющуюся информацию.
Представьте аналитику по их стратегическому направлению, продукту
запуски и изменения в рыночном позиционировании за последний
кварталНаш агент:
- Выполняет несколько циклов
search_webиread_urlдля сбора исследований. - Переранжирует свои результаты, используя
sort_by_relevance, выводя десять лучших результатов. - Генерирует отчет о рыночной разведке, включающий краткое изложение, важные события в бизнесе (ранжированные по стратегической важности), анализ стратегических решений и многие другие разделы.

tagПример 3: Исследование соответствия законодательству
Как мы говорили ранее, одним из полезных аспектов MCP является то, что мы можем использовать несколько серверов для получения более сложных выходных данных. В этом случае мы используем PDF Reader MCP Server в дополнение к нашему собственному для создания исследовательского отчета о текущем состоянии соответствия законодательству в области искусственного интеллекта в ЕС и США. Мы использовали **Prompt**:
Разработайте раздел базы знаний, посвященный новостям о юридическом
соответствии в области искусственного интеллекта и распространенным ошибкам в ЕС и США по состоянию на
этот момент. Отчет должен быть ориентирован на стартапы в области искусственного интеллекта в ЕС.
Активно применяйте инструменты Jina MCP: выполняйте параллельные веб-
поиски и чтение URL-адресов для эффективного извлечения подробного
контента, устранения семантических перекрытий и переранжирования для выявления
наиболее авторитетной информации. Укажите все источники с
URL-адресами и датами публикации или обновления. Организуйте контент
четко и создайте отформатированный PDF-документ, готовый к
немедленному использованию.Наш агент:
- Выполняет параллельный поиск общей информации (используя
parallel_search) с запросамиEU AI Act 2024 compliance requirements startups legal obligations August 2025,USA AI regulation Biden executive order compliance requirements 2024 2025,AI startup legal pitfalls Europe GDPR data protection compliance 2025,AI liability insurance compliance requirements EU USA startups 2024 2025иAI ethics governance framework startups EU USA regulatory updates 2025, возвращая 25 результатов для каждого запроса. - Удаляет дубликаты возвращенных URL-адресов (используя
deduplicate_strings) - Читает содержимое четырех URL-адресов (используя
parallel_read_url) - Выполняет дальнейший
parallel_searchдля получения более конкретной информации с запросамиAI startup common compliance pitfalls mistakes EU USA 2025,AI liability insurance cybersecurity startup requirements 2025,AI bias discrimination testing requirements EU AI Act compliance startups,AI data protection GDPR violations penalties startups 2025 - Использует
parallel_read_urlдля чтения еще четырех URL-адресов - Генерирует отчет в формате Markdown и преобразует его в 18-страничный PDF-файл

Нам также пришлось немного поработать над **提示词**, чтобы улучшить метаданные и форматирование PDF, а также сделать его больше похожим на отчет, а не на очень длинный список с маркерами, но это то, что мы интегрируем в **提示词** для будущих отчетов.
tagАльтернативные подходы
Прежде чем перейти на Claude Sonnet 4, мы попробовали ряд моделей Ollama, поддерживающих инструменты, включая Qwen3:30b, Qwen2.5:7b и llama3.3:70b. Для клиента MCP мы сначала использовали ollmcp, прежде чем перейти на VS Code. Все вышеперечисленные модели потерпели неудачу одинаковым образом, независимо от того, насколько явно мы указывали им инструменты и как их использовать: когда их просили выполнить даже простую задачу, например, получить последнюю запись в блоге от Jina AI, каждая модель (независимо от размера или поставщика) последовательно:
- Впадала в длительный цикл рассуждений, постоянно переосмысливая себя (и используя **词元**), пока, наконец, не решала просто сделать то, что ей было сказано
- Вызывала
read_urlдля https://jina.ai/news - Изучала заголовки и отрывки сообщений в блоге
- Полностью галлюцинировала, что она извлекла последнюю запись (даже не вызывая
read_urlдля этой страницы) - Представляла сводку на основе отрывка из верхнего результата поиска (а не фактического содержимого страницы)
- При опросе утверждала, что она точно следовала инструкциям и извлекла страницу, как было запрошено
Модели из семейств Claude, GPT и Gemini предоставляли приемлемый вывод, хотя мы довольно быстро остановились на Claude Sonnet 4, поскольку она широко использовала инструменты (часто прибегая к параллельным вариантам инструментов, а не к последовательному подходу, предпочитаемому GPT-4.1) и генерировала более длинные и лучше структурированные выходные данные.
tagЗаключение
Вокруг термина «агентный ИИ» все еще много неясности, но MCP представляет собой шаг к тому, чтобы сделать его чем-то солидным и практичным. По нашему опыту, агенты еще не совсем готовы к прайм-тайму, причем **LLM**, как правило, является слабым звеном, но при небольшой помощи и экспериментах можно получить хорошие результаты. Тем не менее, когда вы получаете правильную комбинацию **Prompt**, **LLM** и серверов MCP, вы можете увидеть, как агенты надежно выполняют многоэтапные задачи без необходимости написания пользовательского кода — то, что было намного сложнее с предыдущими моделями, такими как DeepSeek (которые не поддерживают инструменты), что требовало больше ручной разработки и приводило к хрупкой интеграции.
Несмотря на эти текущие ограничения, траектория выглядит многообещающе. Экосистема MCP быстро растет, предлагая больше интеграций и инструментов, которые упрощают смешивание и сопоставление API, таких как Jina, или замену новых **LLM** по мере их появления. По мере улучшения базовых моделей и развития экосистемы инструментов разрыв между экспериментальными агентами и готовым к производству агентным ИИ продолжает сокращаться, что делает надежные реализации все более доступными для реальных приложений.








