功能预览

功能介绍

把内容系统接到外部 AI 客户端时,高危操作为什么要默认关掉

把 AnQiCMS 通过内置 MCP 服务接入 Claude、Cursor 等外部 AI 客户端时,接入不等于交出全站控制权。工具面按意图目录收敛,用令牌鉴权确认调用方身份,用回合级操作审批把写操作合并成一次可确认的动作;备份、升级、多站点等全站级高危域默认关闭、需显式开启,缩小可被误调的接口面。

AI 集成 MCP

功能介绍

把内容系统接到外部 AI 客户端时,最容易犯的判断是:既然要让它帮忙操作后台,就顺手把所有能力都敞开。AnQiCMS 的做法相反——内置 MCP 服务可以被 Claude、Cursor 等外部客户端接入,但接入不等于交出全站控制权。高危操作之所以默认关掉,就是为了在「让 AI 帮上忙」和「不让它替你做出不可逆的动作」之间划一条明确的线。

外部客户端能直接调什么

MCP 服务不把后台所有功能平铺给客户端,而是按意图目录收敛:能力被归类到不同意图域,客户端能看到和调用的,是这套目录里当前被暴露出来的那部分。这样做的直接好处是可被误调的接口面变小了——没列进当前暴露范围的操作,客户端根本碰不到,也就不存在「模型一时兴起调了危险功能」的可能。

收敛的对象是能力面,不是单次调用。它决定了「这个客户端能看见哪些类型的动作」,接下来的身份与分寸判断,才轮到鉴权和审批上场。

令牌鉴权管的是身份

第一层是身份。MCP 服务用 Bearer 令牌做鉴权,先确认「调用方是谁、有没有资格连进来」。这一步只回答身份问题:令牌对得上,才是一个被认可的客户端;对不上,直接拒。

但要清楚令牌管不到「这次调用危不危险」。一个合法令牌同样能发出危险请求,身份通过不代表动作该放行。所以光有鉴权不够,还要有针对操作本身的那道审批。

回合级审批管的是分寸

第二层是分寸,靠回合级操作审批来实现。它的关键设计是把写操作合并确认:不是每个细碎改动都单独弹窗打扰,而是在一个回合里,把这一批要落地的写操作汇总成一次可审阅、可确认的动作,由人点头后再执行。

这个机制防的是「静默改数据」。读类操作风险低,可以不惊动人;但涉及写入、修改、删除的动作,会被归拢到一次显式确认里。外部 AI 客户端因此不能在你看不见的时候,把一串改动一条条写进后台——它得在回合结束时,把要做的事摊开让你确认。身份确认了「能不能连」,回合级审批确认了「这次要不要真做」。

高危域为什么默认关

即便有了收敛、鉴权和审批,备份、升级、多站点这类全站级操作仍被单独设成默认关闭。原因是它们的爆炸半径和其他操作不在一个量级:误改一篇文章能回退,误触发一次全站升级或多站点切换,影响的是整站甚至多个站点,且未必能一键撤回。

默认关闭是一种保守但有效的边界:能力还在,但要显式开启才可用。平时接入 AI 客户端做内容、SEO、运维查询这些高频操作,用不到这些高危域,它们就一直关着,可被误触的范围自然收窄。等确有全站级维护需求,再由人来显式打开,用完可再收回。高危操作默认关,防的不是正常用途,而是「本来没必要冒的风险」。

常见问题

问:接入外部 AI 客户端是不是等于给了它后台全部权限? 答:不是。能力按意图目录收敛,高危域默认关闭,能调的范围由暴露配置决定。

问:令牌鉴权通过了,调用就安全了吗? 答:鉴权只确认身份,不判断动作危险与否;写操作仍要经回合级审批合并确认才落地。

问:为什么要默认关备份、升级、多站点这些操作? 答:它们是全站级、影响大且不易一键回退,默认关闭能缩小被误调的风险面。

问:需要这些高危操作时怎么办? 答:能力仍在,按需显式开启对应意图域,用完再收回,而不是长期敞着。