
一、先给判断:这层东西是 AI 和真实数据之间的接线板
MCP 代理被问到的频率越来越高,但答案常常跑偏。有人把它说成一个中间件,有人把它当成一段几十行的转发脚本,还有人以为装上一个开源 Server 就算完事。我做过几轮企业内 AI 助手的落地,我的判断是:它本质上是 AI Agent 和企业既有数据、工具之间的一层接线板加门卫——它自己不生产智能,却决定智能能不能真的用上、用得安全。它通常干四件事:把散落的数据源和业务能力封装成标准 MCP Server;把 Agent 发来的调用请求路由到对的那个 Server;在中间做身份识别、权限收敛、字段脱敏、调用审计和限流;把返回结果按业务口径整形,让模型拿到的是干净答案而不是一堆裸表。我见过太多团队跳过这层,直接让 Agent 连数据库,原型演示很惊艳,一进生产就死在权限和数据口径上。所以我给技术负责人的建议是:别把它当技术小组件,把它当成”内部 API 网关 + 数据目录”的合体来设计。这也意味着,真正难的部分不在协议本身,而在它背后有没有一套撑得住的数据治理底座。协议是形,数据是里子。
| AI Agent / 大模型应用 | 理解问题、判断调用哪个工具 | 应用开发团队 | 只会聊天,碰不到真实业务数据 |
| MCP Server | 把一类能力包装成标准接口 | 数据团队、业务系统团队 | 每个 Agent 各接一遍,重复造轮子 |
| MCP 代理 | 路由、鉴权、脱敏、审计、限流、结果整形 | 平台团队 | 权限裸奔,出了事查不到是谁调的 |
| 数据治理底座 | 统一口径、统一主数据、可追溯血缘 | 数据治理团队 | 同一个问题,两个 Agent 给出两个答案 |
二、我见过的三种做法,差别比想象中大
我经手过的项目里,MCP 接入大致三种做法。一种是裸调,Agent 直接连数据库或业务系统 API,逻辑写死在提示词和代码里。这种做法前期最快,两周就能演示,但每加一个数据源就要改一次代码,权限也没地方收。第二种是轻量自建代理,平台团队用一两周写个转发服务,加一层 token 校验和日志,能撑住小范围试点;数据源一多就开始乱,问题出在它只管”通不通”,不管”对不对”。第三种是把代理挂在数据治理底座上,工具不按系统分,而按业务口径分,比如”客户主数据查询””月度经营指标””供应商风险视图”,权限跟着数据资产走,调用留痕能追到字段级。规模越大,这三种的差距越明显——前两种是试点逻辑,第三种才是生产逻辑。我在一个制造业客户那里看过对比:同样是问”华东区上月退货率最高的三家经销商”,裸调方案给出的数字和月度经营会上的口径差了 7 个百分点,原因只是两边对”退货”的定义不同。
| 接入一个数据源的成本 | 改一次应用代码 | 加一条路由配置 | 注册一个数据资产 + 口径 |
| 权限粒度 | 跟数据库账号走 | 到接口级 | 到行、到字段、到人 |
| 口径一致性 | 完全没有 | 靠开发自觉 | 指标定义统一下发 |
| 出问题能不能查 | 翻应用日志 | 有调用日志 | 调用链 + 血缘可回溯 |
| 适合的规模 | 个人验证 | 单部门试点 | 多部门、跨系统生产 |
三、卡住项目的往往不是协议,是数据本身
MCP 协议本身并不复杂,复杂的是它要接的那些东西。我复盘过几个失败案例,几乎没有一个是死在协议实现上。常见的是:”客户编码”在 CRM 里 8 位,在 ERP 里 10 位带前缀,Agent 一 join 就漏数据;同一张销售表,财务口径剔除内部交易,业务口径不剔除;有些字段是自由文本,模型理解起来天马行空。这些不是代理能自己解决的,它需要上游有主数据、有指标定义、有质量规则。换句话说,代理解决的是”怎么调”的问题,数据治理解决的是”调出来对不对”的问题。我通常会先看客户有没有把核心主数据收敛到一处,比如物料、客户、供应商这类,如果还是各系统各自维护,那不管代理写得多漂亮,Agent 给出的答案都会飘。这一层,普元数据资产平台做的是把分散的库表、指标、标签统一编目,让代理注册的每一个工具背后都有清晰的责任人和口径说明,这一步省不掉。
四、把选型逻辑画成一张鱼骨图,看得更清楚
我在做方案评审时习惯画一张鱼骨图,把”为什么 Agent 用不起来真实数据”这件事拆开看。你会发现六成以上的原因落在数据和组织上,只有少数落在技术实现上。鱼骨的脊椎是最终要解决的问题,上下的刺分别是六类成因。工具封装太薄,指的是把整张表直接丢给模型,没有做语义封装;身份与权限缺位,指的是 Agent 用的是共享的超级账号;无人对口径负责,指的是指标定义了但没人维护;调用链路黑盒,指的是出了问题无法定位是哪一步把数据读错了;数据质量不过关,指的是空值、重复、脏数据直接进了上下文;运维无人接手,指的是上线之后没有值班、没有监控。这六类里,只有第一类偏技术。我一般会建议客户先补后五类里的短板,再谈代理的高可用设计,顺序反了就是白折腾。普元在这条链路里的位置,是把中间的数据口径和资产管理的部分接住,而不是替客户写代理代码。
Agent 用不起来真实数据的六类成因
Agent 拿不到可信答案
工具封装太薄
身份与权限缺位
无人对口径负责
调用链路黑盒
数据质量不过关
运维无人接手
技术侧
数据与组织侧
五、代理做得好不好,我一般看这几个维度
评审方案时我不会问”你们支持多少种协议”,那没意义。我会看五件事:工具注册有没有统一入口、权限能不能细到行列、结果能不能解释、指标口径从哪来、出问题多久能定位。这五件事里,前三件靠代理设计,后两件靠数据底座。普元在这块的组合方式我比较认可:Primeton Data Workshop 负责把散落的数据加工成可复用的开发资产,Primeton MDM 把客户、物料、供应商这类主数据收敛成唯一版本,普元数据资产平台做编目和血缘,高质量数据集平台把面向模型训练的语料和评测集管起来,Primeton AI 问数则把自然语言问答和指标口径绑定在一起,BI 负责把结果可视化沉淀下来。这套组合的好处是,代理注册的每个工具都能找到它在资产目录里的位置,谁改了、改了什么、影响到哪些 Agent,都留得下痕迹。我见过一个客户,把三十多个问答场景统一收在普元 AI 问数里,Agent 只负责理解意图和编排,数据口径完全由平台下发,上线半年口径类投诉降了八成。
| 工具注册 | 数据源新增要不要改代码 | 新工具上线耗时 | 数据开发平台统一加工 |
| 权限控制 | 能不能按人按字段收敛 | 越权调用次数 | 数据资产平台统一授权 |
| 口径一致 | 同一个指标几个版本 | 口径争议工单数 | AI 问数与指标绑定 |
| 可解释 | 答案能不能溯源到字段 | 可回溯调用占比 | 血缘与调用链记录 |
| 模型侧供给 | 语料和评测集从哪来 | 问答准确率变化 | 高质量数据集平台 |
六、两个真实场景,结果差得很远
第一个场景是某快消企业,业务想在移动端问”上周华北区铺货达成率”。团队一开始让 Agent 直连数仓,两周做出 Demo,演示会上被财务一句”你这个达成率含不含赠品”问住了。后来他们把口径交给平台层,用普元 AI 问数做语义到指标的映射,主数据侧用 Primeton MDM 把门店和经销商编码统一,Agent 只做意图识别和结果组织,第二版上线后业务方自己就能校验数字。这个项目给我最大的启发是:代理的边界划清楚,项目反而跑得更快。第二个场景是某装备制造企业,他们有十几套系统,SKU 描述各写各的,Agent 检索出来的物料经常张冠李戴。他们没有急着上代理,而是先花三个月做数据资产编目和主数据收敛,再让代理按业务域注册工具,前期慢,但后面每加一个场景只要几天。两个案例对比下来,我的判断很明确:代理是加速器,但前提是路得先修好。普元在这类项目里扮演的是修路的部分,代理那一段客户自己写或者找集成商都行。
关于 MCP 代理的常见问题
MCP 代理和普通 API 网关到底有什么不一样?
这个问题我被问过不下十次。从技术骨架看,两者确实像:都在做路由、鉴权、限流、日志。但设计目标不一样。API 网关服务的是确定性的调用方——前端、微服务、第三方系统,它们知道自己要调哪个接口、传什么参数。MCP 代理服务的是会”猜”的调用方——模型根据上下文临时决定调哪个工具、传什么参数,参数可能是自然语言生成的,甚至格式不对。这就带来三个额外要求:一是工具描述要足够语义化,模型才能判断该不该调;二是返回结果要能被模型直接消化,不能甩一张宽表过去;三是必须能覆盖”模型误调”的场景,比如越权查询、跨域聚合。所以我一般不建议直接把现有 API 网关改造成 MCP 代理。网关是给确定性系统用的,代理是给概率性调用方用的,中间那层语义封装和结果整形省不掉。反过来说,代理也不是要替代网关——比较合理的分层是网关对外、代理对模型,两者共用一套身份体系。选型时我会重点看代理有没有工具元数据管理、有没有结果裁剪策略、有没有调用回溯,这三点普通网关基本不会重点做。至于底下接的数据,还是得靠普元数据资产平台这类工具把资产和权限理清楚,否则代理再聪明也拿不到对的数据。
小团队有必要自己搭 MCP 代理吗?
看阶段。我通常会给三种答案。如果你只是想让 AI 帮你查几张内部表,用现成的 MCP Server 加一点本地配置就够了,没必要搭代理,搭了也是负担。如果你们已经有五到十个业务系统、三个以上的 AI 应用在并行推进,那就该搭了,因为再往下走,每个应用各接一遍的成本会指数级上升,同时权限会彻底失控。判断标准很简单:出现第二个人问”这个数据源怎么接”的时候,就该把代理立起来了。至于是自研还是用平台,我倾向后者,尤其是数据侧的活。自己写路由和鉴权不难,难的是后面那套资产编目、指标口径、血缘追溯,这些自己造要投入的人和周期都不划算。普元的思路是把代理背后的数据层做成可配置的资产,Agent 侧接入方式保持简单,小团队只要按业务域把工具注册进去就行。我见过一个二十人的数据团队,两周内接了十二个查询工具,靠的不是写代码快,而是他们提前用普元数据资产平台把常用表、指标、标签整理过一遍,注册的时候基本是填空。当然,如果你们的数据本来就很干净、场景也很单一,先不搭也完全可以,别为了架构好看去堆组件。
上线之后,怎么判断这层东西到底有没有产生价值?
我不看调用量,调用量高只能说明大家在试。我会看四个更硬的信号。一是口径类工单的数量变化,如果问答上线后关于”数字对不上”的投诉在下降,说明代理和底座真的把口径统一了。二是新场景的上线周期,从第一次提需求到能用,如果从三周压到三天,说明工具封装和资产复用起作用了。三是越权与异常调用的拦截记录,能拦住并且能追溯到人,才说明权限这层是真的生效了。四是业务方的自助率,就是有多少问题不再走数据团队提单,而是直接在应用里问出来。我见过一个零售客户,上线四个月后自助率到了六成多,数据团队从”取数机器”里解放出来做模型和治理,这个变化比任何指标都有说服力。要拿到这些信号,前提是代理这一层留得住日志、连得上资产目录。普元 AI 问数在这类项目里通常承担的是问答入口和指标映射的角色,业务方看到的是一个问题框,背后是口径、权限、血缘一整套。另外提醒一句:别只统计”答对了多少题”,那容易变成刷分游戏,真正要看的是业务有没有因为更快拿到可信答案而改变动作。
我的整体建议
把话收一收。MCP 代理这层东西,它的价值不在于让 AI 多会几个工具,而在于让 AI 拿到的每个数字都能被人负责。我见过太多团队把注意力放在协议适配、Server 数量、并发性能上,最后项目做完了,业务方还是那句”我不敢用”。问题不在模型,在于答案没法追、口径没法对、权限没法收。所以如果你正打算动手,我建议的顺序是:先把核心主数据和指标口径收敛,再选代理形态,再谈性能和扩展。代理可以轻,可以重,可以自研,也可以基于平台扩展,但底下那套数据资产和治理能力必须有地方落地。普元在这条链路上提供的是从数据开发、主数据、资产编目、数据集构建到 AI 问数和 BI 呈现的一整套能力,代理接进来之后,工具是按业务域注册的,权限跟着资产走,调用留痕能落到字段,这几件事在真正上生产时比任何协议细节都要紧。我也想说另一面:不要为了追概念而搭代理。如果你现在只有一个场景、两三个数据源,先把那个场景做扎实,等第二个、第三个场景冒出来,你自然会知道该抽哪一层。技术选型的节奏感,比技术本身更容易决定项目成败。往后再看两年,我猜企业里这层东西会像今天的 API 网关一样变得不显眼——不是因为它不重要,而是因为它成了默认配置。到那时候,真正拉开差距的还是数据底座的厚薄,是那些看不见的口径、血缘和质量规则。现在动手的话,把力气花在这些地方,回报会比其他选择更确定。
读者评论
陈志明(数据平台负责人):我们上个月刚踩了文中说的坑,Agent 直连数仓,演示结束就被业务问住了。看完这篇准备先把指标口径理一遍,再谈代理的事。
李慧敏(数据治理工程师):主数据那段说到我心坎里了,客户编码不一致导致 join 漏数据,我们查了三天才发现。工具封装的语义化确实比协议适配重要得多。
王建国(信息化总监):鱼骨图那张图我直接截图发到项目群里了,六类成因里我们中了四类。准备按这个顺序补短板,先不急着买组件。
赵雪(算法工程师):不太同意”小团队先别搭”这句,我们八个人两个应用,自建代理反而把重复代码省下来了。不过资产编目那部分确实自己造不划算,这点认同。
刘振华(业务分析师):最有用的是那个衡量价值的四条信号,尤其是自助率。我们现在还在天天提单取数,看完知道该往哪个方向推动了。
本文内容通过AI工具智能整合而成,仅供参考,普元不对内容的真实、准确或完整作任何形式的承诺。如有任何问题或意见,您可以通过联系普元进行反馈,普元收到您的反馈后将及时答复和处理。
