Token导航 LogoToken导航TokenDH.com
Multi Agent Customer Service System With A2a And MCP Google Adk logo
浏览器工具stdio官方级别未说明来源级核验

Multi Agent Customer Service System With A2a And MCP Google Adk

MCP Server

一个使用Google Agent Development Kit (ADK) 和 Agent-to-Agent (A2A) 通信协议实现的多代理客服系统,具备客户信息管理、服务请求处理和协调工作流等功能。

工具数

5

提示词数

0

GitHub Stars

0

资源数

0
HTML数据分析浏览器自动化

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

ashhhwin

提供方

ashhhwin

最后核验

2026/5/17 20:21

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

pip install google-adk

详细介绍

多代理客户服务系统-A2A ADK MCP实现

概述

该项目使用谷歌的代理开发工具包(ADK)实现了一个多代理客户服务系统,该工具包具有代理到代理(A2A)通信协议和模型上下文协议(MCP)用于数据库访问。

系统架构

组件

  1. MCP服务器 (端口8000)

- 在SQLite数据库上提供HTTP API层 - 处理客户帐户和支持票的CRUD操作

  1. 客户信息代理 (端口9300)

- 专注于数据检索和客户记录管理 - 执行查找、更新和复杂查询

  1. 支持专家代理 (9301端口)

- 处理客户服务咨询 - 创建和管理具有优先级的支持票

  1. 编排代理 (端口9400)

- 用户请求的主要入口点 - 将查询发送给适当的专业代理 - 协调多代理工作流

文件结构

project/
├── a2a_patch.py              # Compatibility patch for A2A client
├── agent_definitions.py      # Agent configurations and capabilities
├── client_runner.py          # Test client and integration test suite
├── database_utility.py       # SQLite connection utilities
├── mcp_server.py            # MCP HTTP server implementation
├── server_launcher.py       # Multi-server orchestration
├── service_tools.py         # MCP tool wrappers for agents
├── main.py                  # Main entry point
├── .env                     # Environment variables (GEMINI_API_KEY)
└── service_db.sqlite        # SQLite database (auto-created)

先决条件

必需的Python包

pip install google-adk
pip install a2a
pip install httpx
pip install uvicorn
pip install starlette
pip install python-dotenv
pip install nest-asyncio
pip install pandas  # Optional, for database inspection

环境变量

创建一个 .env 项目根目录中的文件:

GEMINI_API_KEY=your_gemini_api_key_here

安装

  1. 将所有项目文件克隆或下载到一个目录
  2. 安装所需的软件包(请参阅先决条件)
  3. 创建 .env 使用GEMINI_API_KEY文件
  4. 确保所有Python文件都在同一目录中

运行系统

选项1:命令行

python main.py

这将:

  • 使用种子数据初始化SQLite数据库
  • 启动所有四台服务器(MCP+3个A2A代理)
  • 自动运行集成测试套件
  • 保持服务器运行直到中断(Ctrl+C)

选项2:Jupyter笔记本

在提供的笔记本中按顺序运行单元格,以便逐步执行和更好的输出可视化。

测试场景

该系统包括5个集成测试用例:

  1. 简单数据检索

- 按ID获取完整的客户记录 - 测试基本代理路由和工具使用情况

  1. 协调服务请求

- 客户要求服务升级 - 测试多代理协调和工单创建

  1. 复杂过滤查询

- 列出有未结票证的活动帐户 - 测试需要多个工具调用的多步骤查询

  1. 高优先级票证记录

- 带有退款请求的紧急账单问题 - 测试优先级检测和高紧急票创建

  1. 多步记录更新

- 更新客户电子邮件并检索票务历史记录 - 测试顺序操作和错误处理

数据库模式

客户_帐户

  • 标识符(主键)
  • full_name
  • contact_电子邮件
  • 联系电话
  • account_status
  • creation_timestamp
  • 最后修改时间戳

支持票

  • ticket_id(主键)
  • account_id(外键)
  • 描述
  • 状态
  • 优先级(低/中/高)
  • 提交时间戳

API终点

MCP服务器(http://127.0.0.1:8000)

  • GET/tools-列出可用操作
  • POST/call-执行数据库操作

代理服务器

  • GET/.knowledge/agent-card.json-代理能力卡
  • POST/-向代理发送消息(A2A协议)

可用的MCP工具

  1. fetch_customer_data(customer_id:int)

- 按ID检索客户帐户

  1. search_customer_accounts(account_status:str,result_limit:int)

- 按状态搜索帐户(活动/禁用)

  1. modify_customer_record(customer_id:int,update_payload:str)

- 更新客户字段(需要JSON字符串)

  1. register_support_issue(客户id:int,查询描述:str,紧急级别:str)

- 创建新的支持票

  1. retrieve_customer_history(customer_id:int)

- 为客户获取所有门票

目录标签

目录标签

HTML数据分析浏览器自动化本地部署多代理系统客户服务A2A通信数据库管理工作流协调

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

工具数量(toolCount,工具数)

5

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP