本项目实现了一个集成Google ADK(代理开发工具包)的AI代理,支持A2A(代理到代理)协议以与其他代理进行交互,并可通过MCP(模型上下文协议)服务器进行扩展。该项目包含了用于开发、测试和部署AI代理的完整基础设施,具备监控和追踪功能。
A2A协议的详细文档:文档 和 Postman集合
# 构建镜像
make build
# 启动主要服务
make up
# 代理将在 http://localhost:10002 可用
# MCP服务器将在 http://localhost:8001 可用
# 查看所有可用命令
make help
# 启动主要服务
make up
# 启动并开启Phoenix监控
make phoenix
# 开发模式
make dev
# 查看日志
make logs
# 停止所有服务
make down
# 启动主要服务
make up
# 代理将在 http://localhost:10002 可用
# 以实时重载模式启动开发
make dev
# 启动并开启Phoenix监控进行调试
make dev-phoenix
# 查看所有服务状态
make status
# 检查健康状况
make health
# 查看日志
make logs
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 # 忽略文件
# 从示例创建.env文件
make env
# 或者手动创建
cp agent/.env.example .env
在 .env 文件中可以配置以下参数:
# 代理主要设置
AGENT_NAME=jira_mcp_agent
AGENT_DESCRIPTION="Jira MCP代理,用于管理项目、任务、冲刺和敏捷流程"
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配置
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"
项目的主要组件是基于Google ADK的AI代理,支持MCP工具。该代理实现了A2A协议以与其他代理进行交互。
GET / - 代理信息(代理卡片)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) - 获取指定城市的一周天气预报http://localhost:8001/ssehttp://localhost:8001/messages/要启用Phoenix监控,请设置环境变量:
ENABLE_PHOENIX=true
启动并开启Phoenix监控:
make phoenix
Phoenix仪表板将在 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资源
本项目采用MIT许可证分发。详情请参阅 LICENSE 文件(如果有)。