支持代理
基于Cloudflare构建的客户支持聊天代理,由 代理SDK它查找订单,搜索知识库,创建具有人工在环审批的工单,通过多步骤工作流处理工单,并公开其作为MCP服务器的功能。
特性
- AI聊天 --通过Workers AI流式响应(
AIChatAgent+websocket) - 订单查询 --从D1支持的API中按订单号获取订单详细信息
- 知识库搜索 --搜索支持文章以回答客户问题
- 票创建 --在执行之前创建支持票,并获得人工在环审批
- 票务处理工作流程 --多步工作流程,使用人工智能对票证进行分类,尝试自动解决,上报未解决的问题,并将高优先级票证提交给经理审批
- 调度 --延迟、一次性和基于cron的任务调度(例如后续提醒)
- MCP服务器 --将订单查找、知识搜索和工单创建作为MCP兼容客户端(Claude Desktop、Cursor、VS Code等)的工具公开在
/mcp - 调试模式 --在标题中切换以检查原始消息JSON
- 暗/亮模式 --通过Cloudflare的Kumo设计系统进行主题切换
项目结构
src/
server.ts # Chat agent with tools, scheduling, and workflow orchestration
mcp.ts # MCP server exposing support tools
workflows/ticket.ts # Multi-step ticket processing workflow
app.tsx # Chat UI built with Kumo components
client.tsx # React entry point
styles.css # Tailwind + Kumo styles快速开始
npm install
npm run dev打开 http://localhost:5173 看看代理人在行动。
尝试以下提示:
- “ORD-1234订单的状态如何?” --通过支持API查找订单
- “你们的退货政策是什么?” --搜索知识库
- “为我损坏的键盘创建工单” --创建工单(先请求批准)
- “5分钟后提醒我跟进” --安排延迟的任务
运作原理
聊天代理(server.ts)
这 ChatAgent 类扩展 AIChatAgent 并定义了AI模型可以调用的工具:
| 工具 | 类型 | 描述 |
|---|---|---|
lookupOrder | 自动执行 | 从支持API获取订单详细信息 |
searchKnowledge | 自动执行 | 搜索知识库 |
createTicket | 审批 | 用户审批后创建工单 |
scheduleTask | 自动执行 | 安排提醒或定期任务 |
runTicketWorkflow | 自动执行 | 启动工单处理工作流程 |
approveWorkflowTool | 自动执行 | 批准等待经理签字的工作流 |
rejectWorkflowTool | 自动执行 | 拒绝等待经理签字的工作流 |
票务工作流程(workflows/ticket.ts)
一个持久的、多步骤的工作流程,由 AgentWorkflow:
- 分类 --使用Workers AI(Llama 3)对机票进行分类(计费、技术、运输、一般)。最多可进行3次指数回退。
- 解决 --在知识库中搜索匹配的文章。如果找到,自动解析。
- 升级 --如果未解决,则上报给支持团队。
- 审批门 --高优先级升级的工单暂停并等待经理批准(最多7天)。已批准的门票将获得退款;被拒绝的票将被关闭。
每个步骤都有检查点——如果工作流崩溃,它将从最后一个完成的步骤恢复。
MCP服务器(mcp.ts)
这 SupportMCP 类通过模型上下文协议公开了三个工具 /mcp:
lookup-order--查找客户订单search-knowledge--搜索知识库create-ticket--创建支持票
将任何兼容MCP的客户端连接到 /mcp 使用这些工具。
部署
npm run deploy了解更多
许可证
麻省理工学院
