Harness + MCP:打通企业工具链的最后一步

上周我在 Harness 里跑了一个多 Agent 工作流,任务拆得漂漂亮亮的,Agent 们各司其职,结果到最后一步卡住了------它需要把产出的报告自动提交到公司的 Jira 工单上,我折腾了整整一个下午。你猜怎么着?Harness 本身没有直接对接 Jira 的能力。当时我差点就放弃了,心想"这玩意儿好看是好用,但进不了生产环境啊"。

后来我翻了一下 Harness 的插件接口文档,发现我漏了一个关键的东西------MCP。如果你还不知道 MCP 是什么,简单说,它就是 AI 应用和外部工具之间的"万能插座"。你不需要为每个工具写一套独立的集成代码,只要工具暴露了 MCP Server,Agent 就能直接调用它。Harness 的插件机制天然支持 MCP------这意味着,你只需要写一次 MCP 配置,Harness 就能访问你公司里的任何工具。

你别说,我一开始也没当回事。不就是又一个协议嘛。但当我真正试了一次之后,我发现这玩意儿比我想象的实用得多。

先说最简单的场景。我公司的代码仓库是 GitLab 自托管,没有公网访问。以前要让 Agent 看代码,我得写个 Python 脚本把仓库拉下来,再让 Agent 读本地文件。用 MCP 的话,只需要启动一个 GitLab MCP Server,告诉它仓库地址和 Token,Harness 里的插件就能直接调用 gitlab.get_filegitlab.list_issues 这些方法。你想想,这省了多少代码量。

再说一个我踩过的坑------MCP Server 的启动方式。我第一次跑的时候,直接把 MCP Server 放在 Harness 的同一个容器里,结果端口冲突了。后来翻文档才发现,Harness 的插件和 MCP Server 是通过 stdio 通信的,不是网络端口。也就是说,你不需要操心端口分配,直接在插件配置里指定 MCP Server 的启动命令就行。比如:

json 复制代码
{
  "mcp_servers": {
    "gitlab": {
      "command": "node",
      "args": ["mcp-gitlab-server", "--token", "xxx"]
    }
  }
}

然后插件里直接 call_mcp("gitlab", "get_file", {path: "src/main.py"}) 就行了。简单到让我有点怀疑之前为集成 GitLab 写的那些胶水代码到底值不值。

说实话,最让我兴奋的不是单个工具的集成,而是"组合拳"。我试了一个场景:让 Agent 先通过 MCP 查 Jira 上当前 Sprint 的 Bug 列表,然后通过 GitLab MCP 拉取相关代码,分析完以后自动在 Jira 上创建评论。整个流程跑下来 3 分钟,比我手动处理快太多。而且因为 MCP 是标准化协议,你换一个工具只要换 MCP Server 就行,Agent 的逻辑完全不用改。

但也有坑。MCP 的生态目前还在早期,很多工具没有官方的 MCP Server。我当时要接飞书文档,发现没有现成的,只能自己写一个。写一个 MCP Server 其实不复杂,本质上就是一个符合 MCP 协议的 HTTP 服务或者 stdio 程序。问题是------你得自己维护。万一飞书 API 升级了,你的 MCP Server 也得跟着升级。Harness 本身不帮你管这事。

笑死,我写第一个 MCP Server 的时候,搞混了 Tool 和 Resource 的概念。MCP 里 Tool 是"动作"(比如发消息、创建文档),Resource 是"数据"(比如读取文档内容)。我一开始把 Resource 当 Tool 用,结果 Agent 调用的时候一直报参数错误。后来才搞清楚,Tool 是 Agent 主动调用的,Resource 是 Agent 按需读取的------这两个分开设计是有道理的,但第一次接触确实容易搞混。

我觉得 Harness + MCP 的组合,最大的价值不是"让 Agent 能调用工具",而是"让企业不需要重复造轮子"。你公司可能已经有一套工具链------Jira、Confluence、GitLab、Jenkins、飞书、钉钉......如果每个都要跟 Harness 做深度集成,开发量是巨大的。但通过 MCP,你只需要一个轻量级的适配层,就能让 Harness 里的所有 Agent 访问所有工具。

不过话说回来,MCP 也不是银弹。它的性能瓶颈在于 MCP Server 本身的处理能力,如果你把几十个 Agent 同时指向同一个 MCP Server,它可能会成为瓶颈。还有就是安全问题------MCP Server 能访问什么,Agent 就能访问什么,权限控制完全靠 MCP Server 自己实现。Harness 目前没有在插件层做细粒度的权限拦截。

你目前在用 MCP 吗?如果你们公司已经接了 MCP 生态,是用现成的 Server 还是自己写的?踩过什么坑,欢迎评论区聊聊,我也想看看大家的实践方案。

相关推荐
回眸&啤酒鸭17 小时前
【回眸】Minicart 电商购物车核心功能落地指南
人工智能
一隅论数智17 小时前
给AI一张“业务概念地图“:本体如何从哲学走向企业智能
大数据·人工智能·经验分享·笔记·学习·学习方法·政务
AI的探索之旅17 小时前
97 个 OpenCV 实例(三十):双目立体,从标定到点云
人工智能·opencv·计算机视觉
AlbertZein17 小时前
Step-5-Preview 上手实测:3D 游戏、金融分析、网页设计一次跑完
人工智能·aigc
LaughingZhu18 小时前
Product Hunt 每日热榜 | 2026-09-19
人工智能·深度学习·神经网络·搜索引擎·百度
美狐美颜SDK开放平台18 小时前
开发直播APP时如何接入视频美颜SDK?开发流程与注意事项
android·人工智能·计算机视觉·音视频·直播美颜sdk
wukangjupingbb18 小时前
智能网联汽车安全能力框架
人工智能
龙亘川19 小时前
明月照湾区,智启新赛道:从顶流文旅IP盛会看智慧文旅升级路径
人工智能·智慧城市·开源软件·数据可视化
飞猫的边缘AI19 小时前
边缘AI应用:家用AI摄像头怎么做数据训练?
人工智能·边缘计算·ai算法·边缘ai