Langgraph-Mcp-Agents: AI-агентная система на базе LangGraph с интеграцией MCP 135

小编 ·

Langgraph-Mcp-Agents: AI-агентная система на базе LangGraph с интеграцией MCP

Langgraph-Mcp-Agents — это агентная система на базе LangGraph с интеграцией MCP, позволяющая AI-ассистентам легко обращаться к различным источникам данных и API. Система оснащена веб-интерфейсом на Streamlit для удобного взаимодействия с LangGraph и инструментами MCP. Пользователи могут динамически добавлять, удалять и настраивать инструменты MCP через интерфейс без перезапуска приложения, поддерживается формат Smithery JSON. Кроме того, реализована потоковая передача ответов — вывод агента и вызовы инструментов видны в реальном времени.

Langgraph-Mcp-Agents: AI-агентная система на базе LangGraph с интеграцией MCP

Что такое Langgraph-MCP-Agents?

Langgraph-Mcp-Agents — это система агентов ai на базе LangGraph, которая благодаря интеграции с MCP позволяет Ai-ассистенту легко получать доступ к различным источникам данных и API. Система оснащена веб-интерфейсом на Streamlit, что обеспечивает удобное взаимодействие пользователя с LangGraph и инструментами MCP. Пользователи могут динамически добавлять, удалять или настраивать инструменты MCP через интерфейс без перезапуска приложения, а также поддерживается формат Smithery JSON. Кроме того, система поддерживает потоковые ответы, позволяя пользователям в реальном времени видеть ответы агента и вызовы инструментов.

Langgraph-Mcp-Agents:一个集成MCP基于LangGraph的AI智能体系统.webp

Функции Langgraph-Mcp-Agents

  • Разделение логики задач и реализации инструментов: разработчики могут независимо расширять библиотеку инструментов, не затрагивая ядро агента.

  • Поддержка долгосрочного контекста: благодаря возможностям персистентности LangGraph обеспечивается непрерывность задач между сессиями.

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

  • Динамическая настройка и развёртывание: динамическая настройка и развёртывание AI-агентов через интерфейс Streamlit.

  • Интеграция инструментов: лёгкое подключение к множеству источников данных и внешних инструментов.

  • Управление состоянием: управление состоянием на каждом этапе рабочего процесса.

  • Гибкое развёртывание: поддержка односерверного и многосерверного развёртывания для удовлетворения потребностей приложений различного масштаба.

Техническая архитектура и основные компоненты

Фреймворк LangGraph

LangGraph — это расширение библиотеки LangChain, ориентированное на построение рабочих процессов агентов с сохранением состояния и множеством ролей.

  • Управление состоянием: поддержание контекста диалога с помощью StateGraph, поддержка долговременной памяти и непрерывности задач.

  • Динамическое управление потоком: поддержка циклов, ветвлений и условной логики, что подходит для задач, требующих самокоррекции или итераций (например, генерация кода).

  • Интеграция множества инструментов: преобразование инструментов MCP в инструменты LangChain с помощью langchain-mcp-adapters для взаимодействия с внешними сервисами (поиск, базы данных и т.д.).

Протокол MCP

MCP — это открытый стандарт, определяющий протокол взаимодействия модели с внешними инструментами.

  • Слабо связанная архитектура: позволяет AI динамически обнаруживать и вызывать инструменты, повышая гибкость.

  • Поддержка нескольких серверов: подключение к нескольким серверам MCP через MultiServerMCPClient для расширения возможностей вызова инструментов.

Сценарии использования

Обработка сложных задач

  • Многошаговые рабочие процессы: например, в задачах анализа данных LangGraph может координировать этапы получения, очистки и визуализации данных, а инструменты MCP обеспечивают конкретные возможности исполнения (вызов библиотек Python или запросы к базам данных).

  • Межсистемное взаимодействие: подключение к сервисам вроде GitHub, Slack через MCP для интеграции информации между платформами.

Взаимодействие агентов

  • Разделение ролей: разные агенты могут специализироваться на конкретных задачах (генерация кода, построение диаграмм), обмениваясь промежуточными результатами через MCP.

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

Повышение эффективности разработки

  • Инструменты как сервис: MCP инкапсулирует инструменты в стандартизированный интерфейс, позволяя разработчикам расширять функциональность без изменения базовой логики агента.

  • Асинхронная поддержка: async_tool_executor обрабатывает синхронные и асинхронные вызовы инструментов (такие как генерация кода и поиск в реальном времени), оптимизируя эффективность выполнения.

Реализация проекта

  • Клиент-серверная архитектура: MCP использует модель клиент-сервер, где LangGraph выступает клиентом, подключающимся к серверам MCP.

  • Интеграция узлов инструментов: преобразование инструментов из серверов MCP в узлы инструментов LangGraph.

  • Поддержка нескольких серверов: возможность подключения к нескольким серверам MCP для гибкого использования инструментов на разных серверах.