先理解:部署不是把服务跑起来就完事
MCP Server 进入团队使用后,真正要关注的是稳定性、权限配置、调用日志、运营反馈和灰度策略。本篇把本地调试、部署说明、灰度指标整理成上线手册。
为什么要灰度给运营团队
运营后台动作和真实业务强相关。先给少量可信用户使用,观察工具调用是否符合预期、权限是否够用、AI 是否误解工具含义,再逐步扩大范围。
成品标准
一个可用的后台 MCP Server 至少应该具备:清晰 Tools、必要 Resources、角色权限、审计日志、高风险二次确认、README、回滚方案。少一个都不建议开放给真实业务。
本篇把 MCP Server 从开发样例变成可灰度试用的内部工具。
环境变量
.env.example:
env
ADMIN_USER_ID=local-dev
ADMIN_ROLE=readonly
AUDIT_LOG_PATH=logs/audit.jsonl不要把真实后台 token 写进代码。生产环境应从密钥管理系统读取。
本地启动
bash
npm install
ADMIN_USER_ID=dev_001 ADMIN_ROLE=operator npm run dev本地调试目标:
- MCP Client 能发现 Tools。
get_order正常返回。update_order_note对 readonly 报权限错误。- 高风险退款只生成确认请求。
logs/audit.jsonl有审计记录。
README 内容
README.md 应包含:
md
# Admin MCP
## Tools
- get_order:只读查询订单
- export_daily_report:只读导出日报
- update_order_note:低风险写入
- prepare_refund_request:生成退款确认请求,不直接退款
## Roles
- readonly:只读
- operator:只读 + 低风险写入
- admin:预留管理员能力灰度检查表
checklist/rollout.md:
md
# 灰度上线检查
- [ ] 所有 Tool 有权限检查
- [ ] 所有 Tool 有审计日志
- [ ] 高风险动作不直接执行
- [ ] readonly 用户无法写入
- [ ] operator 用户只能低风险写入
- [ ] 运营团队完成 1 小时试用培训
- [ ] 每天检查 audit 日志灰度指标
每天检查:
- Tool 调用次数。
- 权限拒绝次数。
- 高风险确认请求次数。
- Tool 错误率。
- 运营反馈问题数。
成品标准
- 能被 MCP Client 连接。
- Tools 和 Resources 能被发现。
- 只读和写入权限分级明确。
- 高风险动作需要人工确认。
- 审计日志可追溯。
- 有灰度检查清单。
到这里,AI 接入后台系统不再是直接暴露 API,而是封装成可治理、可审计、可回滚的 MCP 接口。

