使用说明
多代理客户服务系统(A2A+MCP)
该项目实现了一个多代理客户服务系统,代理通过以下方式进行协调 代理人对代理人(A2A) 通过某种方式与SQLite数据库进行通信和交互 模型上下文协议(MCP) 服务器。
该系统包括:
- 路由器代理 –协调任务和路由查询
- 客户数据代理 –通过MCP与数据库工具交互
- 支持代理 –生成面向客户的最终响应
1.系统架构
下图显示了代理和MCP服务器如何通信:
┌────────────────────┐
│ User Query │
└───────────┬────────┘
│
(intent detection)
│
┌───────────▼───────────┐
│ Router Agent │
└───────┬────────┬──────┘
│ │
customer data │ │ support request
│ │
┌────────────────▼ ┐ ┌──▼─────────────────┐
│ CustomerDataAgent│ │ SupportAgent │
└──────────┬───────┘ └─────────┬──────────┘
│ MCP Tools │ builds final answer
│ │
┌──────────▼─────────────────────▼───────────┐
│ MCP Server │
│ SQLite DB + customers + tickets tables │
└────────────────────────────────────────────┘
2.MCP工具
MCP服务器公开以下操作:
get_customer(customer_id)list_customers(status, limit)update_customer(customer_id, fields)create_ticket(customer_id, issue, priority)get_customer_history(customer_id)
这些工具管理 客户 和 票 表定义于 database_setup.py.
3.安装
git clone https://github.com/KathyLi77/Multi-Agent-Customer-Service-System-with-A2A-and-MCP
cd Multi-Agent-Customer-Service-System-with-A2A-and-MCP
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
# Initialize database
python database_setup.py
4.运行测试
python -m tests.main
这将运行所有主要场景:
简单的客户查找
帐户升级协助
账单上报
列出活跃客户
多意图(更新+票历史)