MCP Server 如何让外部 AI 客户端接入 AnQiCMS

通过 MCP Server,Claude、Cursor 等外部 AI 客户端可以直接用自然语言调用 AnQiCMS 的内容管理、SEO 配置、站点运维等能力,无需编写 API 调用代码。MCP(Model Context Protocol)是面向大语言模型的标准化协议,AnQiCMS 的工具层基于意图目录统一收敛,支持 Bearer Token 鉴权与回合级操作审批,写操作合并确认确保安全。

MCP 协议是什么

MCP 是连接大语言模型与外部系统的桥梁。传统 API 调用需要开发者理解端点、参数、认证方式,而 MCP 将系统能力封装为”工具”,AI 客户端可以用自然语言描述需求,由 MCP Server 解析并执行对应操作。

AnQiCMS 的 MCP Server 基于意图目录重建,将所有可暴露的能力按域分类收敛。每个意图域有明确的输入输出契约,AI 客户端只需说明”我要做什么”,无需关心底层实现细节。这种设计降低了 AI 集成的门槛,也让权限控制更加精细。

意图目录如何统一管理工具面

意图目录是 AnQiCMS MCP Server 的核心架构。它将所有可暴露的操作按业务域分组,例如内容管理域、SEO 配置域、站点运维域等。每个域内的工具共享相同的鉴权策略和审批规则。

意图域 典型工具 默认状态 审批要求
内容管理 创建文章、更新分类、查询标签 开启 单条确认
SEO 配置 设置伪静态、生成 Sitemap、推送链接 开启 批量确认
站点运维 备份恢复、多站点切换、系统升级 关闭 显式开启+逐条确认
用户管理 VIP 分组、权限分配、订单查询 开启 单条确认

高危域如备份、升级、多站点等操作默认处于关闭状态,需要管理员在后台显式开启才能被 AI 客户端调用。这种”默认拒绝”的设计防止了误操作导致的数据丢失或系统故障。

Bearer Token 鉴权配置

MCP Server 使用 Bearer Token 进行身份验证。配置流程:在 AnQiCMS 后台的 MCP 设置页面生成访问令牌,系统会为每个令牌分配独立的权限范围。将生成的令牌配置到 AI 客户端的连接设置中,测试连接是否成功。

令牌的权限应该遵循最小化原则:如果只需要让 AI 帮忙写文章,就不要授予站点运维域的访问权限。定期轮换令牌也是良好的安全实践。

回合级操作审批机制

回合级审批是 AnQiCMS MCP Server 的安全特色。当 AI 客户端发起一个可能修改数据的操作时,系统不会立即执行,而是等待人工确认。

具体流程:AI 客户端向 MCP Server 发送操作请求,Server 解析意图后生成待确认任务,返回给客户端展示给用户。用户确认后,Server 才真正执行操作并返回结果。如果用户拒绝,操作会被取消且不留痕迹。

对于批量操作,例如一次性更新多篇文章的分类,系统会将整个批次作为一个确认单元。用户可以看到完整的操作清单,选择全部确认或部分确认。这种设计既保证了安全性,又避免了逐个确认的繁琐。

写操作合并确认的实际场景

假设你用 Claude 让 AI 帮你整理网站内容:”把过去三个月发布的关于 SEO 的文章都加上’搜索引擎优化’标签”。AI 会先查询符合条件的文章列表,然后向你展示将要执行的操作清单。你可以预览这个列表,确认无误后点击”全部执行”。如果发现有不该加标签的文章,可以手动从列表中移除后再确认。

这种合并确认机制特别适合批量场景。单次操作的确认成本被摊薄,同时保留了人工审核的关键环节。对于只读操作如查询文章列表、获取统计数据,则无需确认直接返回结果,保证交互流畅性。

Claude 和 Cursor 接入

以 Claude Desktop 为例,在 MCP 配置文件中添加 AnQiCMS 的配置项,包括服务器地址和令牌值。重启 Claude Desktop 后,你就可以用自然语言与 AnQiCMS 交互了。例如:”帮我查一下最近一周发布了多少篇文章”,或者”给标题包含’安全’的文章添加标签’网络安全’“。

Cursor 的配置方式类似,在扩展设置中添加 MCP 服务器地址和令牌即可。两个客户端都能自动发现 AnQiCMS 暴露的工具列表,并在对话中智能调用。

常见注意事项

第一,MCP Server 的接口调用高频能力包括文档列表与详情、分类与标签管理、上传图片、留言与评论处理、友情链接管理等。这些能力的完整列表可以在站内接口帮助中查看。

第二,不要将令牌明文保存在代码仓库或公开文档中。建议使用环境变量或密钥管理服务存储令牌值。

第三,定期检查 MCP Server 的操作日志,了解哪些工具被频繁调用,是否有异常行为。

第四,如果某个意图域长期未被使用,可以考虑将其关闭以减少攻击面。

常见问题

问:MCP Server 会影响网站性能吗?

答:MCP Server 作为独立的服务模块运行,只在收到请求时才消耗资源。对于低频使用的场景,性能影响可以忽略不计。

问:能否限制 AI 只能执行只读操作?

答:可以。在生成令牌时,只授予读取类意图域的权限,不授予写入类域的权限。这样 AI 可以查询数据但不能修改任何内容。

问:多个 AI 客户端可以同时连接吗?

答:支持。每个客户端使用独立的令牌,系统会根据令牌的权限范围分别控制访问。你可以在后台查看每个令牌的使用情况,必要时单独撤销某个令牌而不影响其他客户端。