使用说明
项目简介
本仓库提供了一个基于Model Context Protocol (MCP) 的UETA Agent Demo服务器实现。该服务器旨在演示AI驱动的代理如何与法律框架和电子交易集成,特别关注错误处理、审计和事务确认。它模拟了一个现代商品生产商的业务API,并允许自主代理和人工操作员与之互动。
主要功能点
- 资源管理 (Resources):
- 提供账户信息查询 (wallet://info)。
- 提供商品目录查询 (products://list)。
- 提供待处理订单查询 (pending://orders)。
- 提供代理状态查询 (agent://status)。
- 提供服务器统计信息查询 (stats://overall)。
- 提供审计日志查询 (audit://log)。
- 工具注册 (Tools):
- 'create-account': 创建新的用户账户。
- 'place-order': 下达商品订单。
- 'approve-order': 审批待处理的订单。
- 'start-autonomous-agent': 启动自主代理模式,自动下单。
- 'stop-autonomous-agent': 停止自主代理模式。
- 'get-dashboard-url': 获取代理仪表板URL (纯内存模式下不可用)。
- 'ueta-check-balance': 查询账户余额和近期交易记录。
- 'ueta-add-funds': 向账户充值。
- 'ueta-withdraw-funds': 从账户提现。
- 'ueta-transaction-stats': 查看交易统计信息。
- 'ueta-get-pending-orders': 查看待处理订单列表。
- 'ueta-list-products': 列出可用的商品。
- 'ueta-get-audit-log': 获取审计日志。
- 'ueta-revoke-order': 撤销订单。
- Prompt 模板 (Prompts):
- 'get-started': 提供快速上手指南的Prompt。
安装步骤
-
克隆仓库
git clone https://github.com/agentoverlay/ueta-agent-error-handling-demos.git cd ueta-agent-error-handling-demos -
选择运行方式 (Docker 或 本地)
a) 使用 Docker 运行 (推荐)
cd demo docker-compose up -d这将启动包括 MCP 服务器在内的完整演示系统。
b) 不使用 Docker 运行
- 确保已安装 Node.js (v18+) 和 pnpm。
cd demo pnpm install pnpm run agent-api请注意,不使用 Docker 运行时,需要手动启动 Seller API Server 和 Demo Frontend 才能体验完整功能。
服务器配置
MCP 客户端需要配置以下信息才能连接到 UETA Agent Demo MCP 服务器:
{ "serverName": "UETA Agent Server", "command": "node", "args": ["demo/src/api/server.ts"] }
- 'serverName': MCP 服务器的名称,客户端用于识别。
- 'command': 启动 MCP 服务器的命令,这里使用 'node' 运行 'server.ts' 文件。
- 'args': 启动命令的参数,指定服务器脚本的路径。
基本使用方法
- 启动 MCP 服务器:根据上述安装步骤启动服务器。
- 配置 MCP 客户端:在 MCP 客户端中,配置服务器连接信息,指定服务器启动命令和参数。
- 通过 MCP 客户端与服务器交互:
- 使用客户端调用服务器提供的 Resources 获取信息,例如查询商品列表 (products://list)。
- 使用客户端调用服务器提供的 Tools 执行操作,例如创建账户 (ueta-create-account)、下订单 (ueta-place-order) 等。
- 具体操作和参数请参考 MCP 协议文档和服务器提供的工具及资源定义。
示例 (使用 MCP 客户端调用 'ueta-check-balance' 工具):
客户端发送 JSON-RPC 请求:
{ "jsonrpc": "2.0", "method": "tool_ueta-check-balance", "params": {}, "id": 1 }
服务器返回 JSON-RPC 响应:
{ "jsonrpc": "2.0", "result": { "content": [ { "type": "text", "text": "Current wallet balance: 999900\n\nAccount ID: xxx\n\nRecent transactions:\n... (交易记录)" } ] }, "id": 1 }
更多工具和资源的使用方法,请查阅仓库代码和 MCP 协议文档。
信息
分类
商业系统