任务3:客户360操作员代理
目标
建立一个 模型上下文协议(MCP)服务器 它整合了现有的核心银行微服务和 MCP客户端聊天机器人 本作业侧重于使用MCP规范对工具暴露进行标准化。
现有服务
您将获得模拟的核心银行客户微服务。
- 基础URL:
https://customer-microservice-eu.proudsky-2219dea3.westeurope.azurecontainerapps.io - 交互式文档: Swagger 用户界面
能力
- 获取客户资料:
GET /api/v1/customers/{id} - 列出帐户:
GET /api/v1/customers/{id}/accounts - 内部调动:
POST /api/v1/transfers/internal
测试数据
数据库在内存中,重新启动时重置。使用这些ID:
- 艾丽斯·约翰逊:
CUST-001(有2个账户) - 鲍勃·史密斯:
CUST-002(有1个帐户)
核心任务
1.构建MCP服务器
- 使用创建新服务器 FastMCP
- 此服务器应将核心银行微服务的POST端点公开为 MCP工具 GET端点为 MCP资源
- 这些工具应处理对所提供的FastAPI应用程序的API调用。
2.构建MCP客户端聊天机器人
- 构建一个充当MCP客户端的聊天机器人应用程序。
- 它应该连接到您的MCP服务器。
- 用户应该能够问自然语言问题,比如:
- “爱丽丝目前的余额是多少?” - “从爱丽丝的支票中转账500美元到她的储蓄中。”
- 聊天机器人使用LLM选择合适的MCP工具并执行操作。
3.前端反应性
- 前端必须 对试剂处理有反应.
- 能见度:当代理调用工具时(例如。,
transfer_money),UI应实时显示此操作(例如,“Agent正在执行传输…”)。 - 技术提示:使用 服务器发送事件(SSE) 将事件从后端流式传输到前端。前端应该监听这些事件并相应地更新UI。
建议团队拆分
为了作为一个3人的团队有效地完成这项任务,我们建议进行以下分工:
- 成员1:MCP服务器实现
- 分析上游API。 - 实现FastMCP服务器。 - 定义工具(POST)和资源(GET)定义。
- 成员2:前端(Streamlit)
- 使用Streamlit构建聊天机器人UI。 - 实现事件循环以呈现SSE更新。 - 确保流畅、反应灵敏的用户体验。
- 成员3:MCP客户端和后端
- 构建MCP客户端逻辑以连接到服务器。 - 处理LLM交互循环。 - 设置后端API以将事件流式传输到前端。
