文章大师MCP方案

发布时间:2026/6/27 22:47:07

文章大师MCP方案 陀螺匠 MCP 技术方案通过MCP协议连接AI与企业业务系统实现多向协作让AI成为真正懂业务、能交付结果的内部管理专家一、整体架构设计1.1 架构分层┌─────────────────────────────────────────────────────────┐ │ 客户端层 │ │ 网页 / 飞书 / APP / 企业微信 │ └─────────────────────┬───────────────────────────────────┘ │ HTTP 请求 ┌─────────────────────▼───────────────────────────────────┐ │ 业务后端层 │ │ - 接收用户消息 │ │ - 从登录态获取 admin_id、website_id │ │ - 组装可用 Skill 列表工具描述 │ │ - 转发给 Claude API │ │ - 接收 AI 工具调用指令执行对应 Skill │ └──────────┬──────────────────────────┬────────────────────┘ │ Claude API │ 执行 Skill ┌──────────▼──────────┐ ┌──────────▼────────────────────┐ │ Claude AI │ │ Skill 层 │ │ - 理解用户意图 │ │ - getArticleList 文章列表 │ │ - 决策调用哪个Skill │◄──┤ - getLeadRanking 留电排行 │ │ - 多步骤自主编排 │ │ - sendFeishu 飞书通知 │ │ - 整理数据格式输出 │ │ - publishArticle 发布文章 │ └─────────────────────┘ │ - hospital-list 医院列表 │ │ - generate-article 生成文章 │ │ - 其他业务Skill... │ └──────────┬─────────────────────┘ │ HTTP 接口调用 ┌──────────▼─────────────────────┐ │ 业务接口层 │ │ - /api/article/list │ │ - /api/lead/ranking │ │ - 飞书 Webhook │ │ - 其他业务接口... │ └────────────────────────────────┘1.2 核心概念概念说明MCPModel Context ProtocolAI与工具之间的标准通信协议Skill对业务接口的封装等同于MCP Tool是AI可调用的最小执行单元Claude APIAI决策引擎负责理解意图、编排步骤、整理结果admin_id操作者身份标识用于权限校验和租户隔离website_id站点标识用于多站点数据隔离二、双向协作机制2.1 AI → 业务系统AI主动获取数据用户发起自然语言需求 ↓ AI分析意图自主决策调用哪些Skill ↓ Skill调用对应业务接口 ↓ 数据返回给AI处理、整理、输出适用场景查询报表、生成排行、发布内容、多步骤自动化任务2.2 业务系统 → AI业务主动发起调用业务事件触发定时任务 / 用户操作 / 审批节点 ↓ 业务后端主动调用 Claude API ↓ AI执行指定Skill流程 ↓ 结果写回业务系统 或 推送飞书通知适用场景定时生成报表、批量内容生成、自动审批分析、事件驱动通知三、Skill 设计规范Skill 描述告诉AI何时用、用什么参数 执行调哪个接口、怎么处理返回Skill 标准结构Skill文件 ├── 触发描述 用自然语言描述该Skill的功能和触发时机 ├── 入参定义 需要哪些参数从上下文获取 or AI从对话中提取 ├── 接口调用 实际HTTP请求逻辑 └── 返回处理 结果格式化后返回给AI继续处理现有 Skill 清单Skill名称功能说明对应接口web-list获取站点列表webListhospital-list获取医院列表getHospitaldoctor-list获取医生列表getDoctorproject-list获取项目列表getProjectsection-list获取栏目列表getListwork-flow-list获取工作流列表workFlowListgenerate-article生成文章内容内部AI生成generate-flow-task工作流生成发文任务generateFlowTaskpublish-article发布文章到站点publishArticletitle-prompt-list获取标题提示词列表titlePromptList四、完整执行流程详解场景客户说看看上个月发布的文章的留电排行Step 1用户发起请求客户在网页/飞书输入 看看上个月发布的文章的留电排行Step 2前端发送到后端前端 ↓ POST /api/chat { message: 看看上个月发布的文章的留电排行, session_id: abc123 }Step 3后端组装上下文发给 Claude API后端从当前登录态取出用户信息组装完整请求{model:claude-sonnet-4-6,system:你是企业内部管理专家。当前操作者 admin_id1023website_id5,messages:[{role:user,content:看看上个月发布的文章的留电排行}],tools:[{name:getArticleList,description:获取指定时间段内发布的文章列表支持按站点、栏目、时间筛选返回文章ID、标题、发布时间,input_schema:{website_id:string,start_date:string,end_date:string}},{name:getLeadRanking,description:根据文章ID列表获取每篇文章的留电数量按留电数从高到低返回排行,input_schema:{website_id:string,article_ids:array,start_date:string,end_date:string}},{name:sendFeishu,description:将内容发送到飞书群或指定成员,input_schema:{content:string,target:string}}]}关键说明admin_id和website_id后端自动从登录态注入用户无需填写tools列表告诉 Claude 当前有哪些能力可以调用Claude 本身没有记忆每次必须携带完整上下文Step 4Claude 分析意图规划执行链Claude 收到请求后自主分析推理意图拆解 上个月 → 计算日期范围2026-05-01 ~ 2026-05-31 发布的文章 → 需要先查文章列表得到文章ID 留电排行 → 拿到文章ID后再查每篇文章的留电数据 执行规划 第一步调 getArticleList获取上月发布的所有文章ID 第二步调 getLeadRanking查这些文章的留电排行 用户没说发飞书所以不调 sendFeishu直接回复用户Claude 返回第一个工具调用指令{type:tool_use,id:tool_001,name:getArticleList,input:{website_id:5,start_date:2026-05-01,end_date:2026-05-31}}Step 5后端执行 getArticleList Skill后端收到工具调用指令 ↓ 执行 getArticleList Skill ↓ Skill 内部发起 HTTP 请求 GET /api/article/list ?website_id5 start_date2026-05-01 end_date2026-05-31 ↓ 业务接口返回数据 { total: 42, list: [ { id: 1011, title: 北京协和医院隆鼻项目介绍, publish_time: 2026-05-03 }, { id: 1025, title: 双眼皮手术恢复期注意事项, publish_time: 2026-05-07 }, { id: 1033, title: 玻尿酸填充和自体脂肪的区别, publish_time: 2026-05-12 }, { id: 1047, title: 热玛吉适合什么年龄段, publish_time: 2026-05-18 }, { id: 1056, title: 吸脂手术前后对比案例分享, publish_time: 2026-05-22 } // ... 共42篇 ] } ↓ Skill 将数据返回给后端 ↓ 后端将结果作为 tool_result 发回给 ClaudeStep 6Claude 收到文章列表决策第二步Claude 收到42篇文章数据 ↓ 提取所有文章ID[1011, 1025, 1033, 1047, 1056, ...] ↓ 决策调用 getLeadRanking 查留电数据Claude 返回第二个工具调用指令{type:tool_use,id:tool_002,name:getLeadRanking,input:{website_id:5,article_ids:[1011,1025,1033,1047,1056,...共42个],start_date:2026-05-01,end_date:2026-05-31}}Step 7后端执行 getLeadRanking Skill后端收到工具调用指令 ↓ 执行 getLeadRanking Skill ↓ Skill 内部发起 HTTP 请求 POST /api/lead/ranking { website_id: 5, article_ids: [1011, 1025, 1033, ...], start_date: 2026-05-01, end_date: 2026-05-31 } ↓ 业务接口返回数据按留电数排序 [ { article_id: 1033, title: 玻尿酸填充和自体脂肪的区别, leads: 89, views: 3420 }, { article_id: 1011, title: 北京协和医院隆鼻项目介绍, leads: 76, views: 2890 }, { article_id: 1056, title: 吸脂手术前后对比案例分享, leads: 54, views: 1960 }, { article_id: 1047, title: 热玛吉适合什么年龄段, leads: 41, views: 2100 }, { article_id: 1025, title: 双眼皮手术恢复期注意事项, leads: 38, views: 1750 }, // ... 共42篇 ] ↓ Skill 将数据返回给后端 ↓ 后端将结果作为 tool_result 发回给 ClaudeStep 8Claude 整理数据生成最终回复Claude 收到留电排行数据 ↓ 自动整理 - 格式化成排行榜 - 计算总留电数、均值 - 标注高转化率文章 - 提炼关键洞察 ↓ 生成回复内容直接返回给用户Claude 最终回复 上个月2026年5月文章留电排行 共发布 42 篇文章累计留电 687 条 排名 文章标题 留电数 浏览量 转化率 ──────────────────────────────────────────────────────── 1 玻尿酸填充和自体脂肪的区别 89条 3420次 2.6% 2 北京协和医院隆鼻项目介绍 76条 2890次 2.6% 3 吸脂手术前后对比案例分享 54条 1960次 2.8% ⬆️ 4 热玛吉适合什么年龄段 41条 2100次 2.0% 5 双眼皮手术恢复期注意事项 38条 1750次 2.2% ... 洞察 - 案例类文章吸脂对比转化率最高达 2.8% - 玻尿酸和隆鼻类内容流量和留电双高建议持续生产 - 共 18 篇文章零留电建议检查落地页咨询入口是否正常Step 9结果返回用户界面Claude 回复内容 ↓ 后端返回给前端 ↓ 用户在网页/飞书看到完整排行报告五、完整时序图用户 前端 后端 Claude 业务接口 │ │ │ │ │ │─发消息─►│ │ │ │ │ │─POST────►│ │ │ │ │ │─组装上下文────►│ │ │ │ │ admin_id │ │ │ │ │ website_id │ │ │ │ │ Skill列表 │ │ │ │ │ │ │ │ │ │◄─工具调用指令──│ │ │ │ │ getArticleList│ │ │ │ │──────────────────────────►│ │ │ │◄──────────────────────────│ │ │ │ 42篇文章列表 │ │ │ │─tool_result──►│ │ │ │ │ │ │ │ │ │◄─工具调用指令──│ │ │ │ │ getLeadRanking│ │ │ │ │──────────────────────────►│ │ │ │◄──────────────────────────│ │ │ │ 留电排行数据 │ │ │ │─tool_result──►│ │ │ │ │ │ │ │ │ │◄─整理后的排行榜回复─────────│ │ │◄─响应────│ │ │ │◄─显示───│ │ │ │六、AI决策 vs 后端执行 — 职责边界职责由谁完成理解上个月是哪个日期范围Claude决定先查文章、再查留电的执行顺序Claude判断用户没说发飞书所以不发Claude整理数据格式、计算转化率、提炼洞察Claude实际发起 HTTP 请求调业务接口Skill后端执行校验 admin_id 权限业务接口保证A公司看不到B公司数据业务接口 admin_id 隔离七、权限与多租户设计每次请求后端自动注入 admin_id → 确定操作者身份和数据权限范围 website_id → 确定操作的站点范围 业务接口根据这两个参数 - 只返回该租户下的数据 - 校验该用户是否有操作权限 - A公司数据绝对不会出现在B公司的AI响应中 用户无感知无需手动填写任何权限参数八、为什么不直接用接口而要用MCP维度传统接口调用MCP Skill调用时机开发者写死固定触发AI根据理解自主决定执行顺序固定流程不可变AI动态编排按需组合参数来源代码里定义好AI从自然语言中提取新增需求改代码、改流程加一个Skill描述即可用户操作点按钮、填表单直接说需求多步骤任务需要开发多个页面AI自动串联多个Skill核心差异接口满足固定的、已知的业务流程MCP满足自然语言驱动的、动态组合的业务流程。九、部署方案方案一SaaS 模式平台统一运营统一部署后端 Skill库 Claude API ↓ 客户通过网页/飞书入口使用 ↓ 按 admin_id 做租户隔离 ↓ 可按调用量、功能模块向客户收费方案二源码交付模式客户获得完整源码 ↓ 配置文件填入以下参数 CLAUDE_API_KEYsk-ant-xxx # AI服务 DB_HOSTxxx # 业务数据库 FEISHU_WEBHOOKhttps://xxx # 飞书通知 ↓ 一键部署AI能力随系统启动支持替换的AI服务AI服务适用场景Claude API推荐效果最佳推理能力强OpenAI GPT国际化客户文心 / 通义 / 智谱国内合规要求Ollama / vLLM私有化、数据不出内网方案三私有化部署大客户/政企全部部署在客户内网 ↓ AI使用本地模型Ollama等 ↓ 数据不出内网满足等保/合规要求 ↓ 业务系统、AI、Skill全部内网运行十、核心价值总结客户买的不是AI技术本身是一套已经封装好业务逻辑的Skill库加上能把这些Skill智能串联的AI对话入口。AI 负责理解需求、决策步骤、整理结果Skill 负责执行具体操作接口 负责提供真实业务数据权限 负责保障数据安全隔离用户只需说一句话系统自动完成过去需要多个页面、多次点击才能完成的操作。

相关新闻