Этот проект представляет собой реализацию AI агента с интеграцией Google ADK (Agent Development Kit), поддерживающего A2A (Agent-to-Agent) протокол для взаимодействия с другими агентами и расширяемого через MCP (Model Context Protocol) серверы. Проект включает в себя готовую инфраструктуру для разработки, тестирования и развертывания AI агентов с мониторингом и трейсингом.
Подробная документация по A2A протоколу: документация и Postman-коллекция
- Google ADK Integration - Использование передового SDK для разработки агентов
- MCP Tools Support - Интеграция с Model Context Protocol для расширяемых инструментов
- LiteLLM - Поддержка различных LLM моделей через единый интерфейс
- Phoenix Monitoring - Опциональный мониторинг и трейсинг выполнения
- Docker Ready - Полная контейнеризация с автоматической настройкой
- A2A Protocol - Agent-to-Agent коммуникация
- Flexible Configuration - Настройка через переменные окружения
a2a-adk-mcp-example/
├── agent/ # Директория агента
│ ├── app/ # Основной код приложения
│ │ ├── __main__.py # Точка входа с Click CLI
│ │ ├── agent.py # Класс AgentEvolution
│ │ └── agent_executor.py # Исполнитель агента
│ ├── .env.example # Пример файла конфигурации
│ ├── pyproject.toml # Конфигурация проекта и зависимости
│ └── README.md # Документация агента
├── mcp-weather/ # MCP сервер погоды
│ ├── server.py # Основной сервер
│ ├── Dockerfile # Docker конфигурация
│ └── README.md # Документация MCP сервера
├── nginx/ # Nginx конфигурация
├── docker-compose.phoenix.yml # Конфигурация с Phoenix
├── docker-compose.yml # Основная конфигурация Docker Compose
├── Makefile # Автоматизация команд
└── .gitignore # Игнорируемые файлы
# Сборка образов
make build
# Запуск основных сервисов
make up
# Агент будет доступен на http://localhost:10002
# MCP сервер будет доступен на http://localhost:8001
# Просмотр всех доступных команд
make help
# Запуск основных сервисов
make up
# Запуск с Phoenix мониторингом
make phoenix
# Режим разработки
make dev
# Просмотр логов
make logs
# Остановка всех сервисов
make down
# Создание .env файла из примера
make env
# Или вручную
cp agent/.env.example .env
В файле .env
можно настроить следующие параметры:
# Основные настройки агента
AGENT_NAME=jira_mcp_agent
AGENT_DESCRIPTION="Jira MCP агент для управления проектами, задачами, спринтами и agile-процессами"
AGENT_VERSION=1.0.0
# Конфигурация модели
LLM_MODEL="evolution_inference/model-for-agent-space-test"
LLM_API_BASE="https://your-model-api-base-url/v1"
# MCP Configuration
MCP_URL=http://mcp-weather:8001/sse
# Phoenix мониторинг (опционально)
PHOENIX_PROJECT_NAME="ip_agent_adk"
PHOENIX_ENDPOINT="http://phoenix:6006/v1/traces"
# Серверные настройки
HOST="0.0.0.0"
PORT="10002"
# Мониторинг
ENABLE_PHOENIX="false"
ENABLE_MONITORING="true"
# Запуск основных сервисов
make up
# Агент будет доступен на http://localhost:10002
# Запуск в режиме разработки с live reload
make dev
# Запуск с Phoenix мониторингом для отладки
make dev-phoenix
# Статус всех сервисов
make status
# Проверка здоровья
make health
# Просмотр логов
make logs
Основной компонент проекта - AI агент на базе Google ADK с поддержкой MCP инструментов. Агент реализует A2A Protocol для взаимодействия с другими агентами.
GET /
- Информация об агенте (Agent Card)POST /tasks
- Создание новой задачиGET /tasks/{task_id}
- Получение статуса задачиGET /tasks/{task_id}/stream
- SSE поток выполнения задачи
Сервер предоставляет инструменты для получения данных о погоде через MCP протокол. Использует бесплатное Open-Meteo API.
get_today_weather(city: str)
- Получает актуальную погоду на сегодня для указанного городаget_weekly_forecast(city: str)
- Получает прогноз погоды на неделю для указанного города
- SSE:
http://localhost:8001/sse
- Messages:
http://localhost:8001/messages/
Для включения Phoenix мониторинга установите переменную окружения:
ENABLE_PHOENIX=true
Запустите с Phoenix:
make phoenix
Phoenix Dashboard будет доступен на http://localhost:6006
# Основные команды
make build # Сборка образов
make up # Запуск сервисов
make down # Остановка сервисов
make restart # Перезапуск
make logs # Просмотр логов
# Phoenix мониторинг
make phoenix # Запуск с мониторингом
make phoenix-down # Остановка Phoenix
# Утилиты
make shell # Вход в контейнер агента
make clean # Очистка Docker ресурсов
- Docker: Для контейнеризации
- Make: Для автоматизации команд
- MCP Server: Для инструментов (опционально)
Этот проект распространяется под лицензией MIT. См. файл LICENSE
для подробностей (если имеется).