MCP

Model Context Protocol。一种把外部工具服务器接入 Harness 的协议——Agent 借此获得 Harness 自带工具之外的 Tool。Agent 从不“调用 MCP”;它调用的是 Tool,只是 Harness 恰好从 MCP 服务器拿到了这个 Tool。MCP 也暴露资源(只读数据)和 Prompt(可复用模板),但提供工具是其主要用途。

这个协议解决的是集成问题。没有标准的话,每个 Harness 都需要自己写 Linear 集成、Slack 集成、数据库集成——分别编写和维护。有了 MCP,集成只需写成一次服务器,任何兼容 MCP 的 Harness 都能使用。Harness 连接服务器,服务器宣告提供哪些工具,这些工具就会和内置工具一起可供 Agent 调用。

代价由上下文支付。服务器宣告的每个工具都会作为定义到达——名称、描述、参数 schema——而模型只能调用它知道的工具。朴素的做法是预先把所有定义都加载进上下文窗口:装几个大方的服务器,Session 还没输入任何内容就已经有几千 Token 的工具 schema,把注意力预算花在任务永远用不到的工具上。

许多 Harness 现在通过工具搜索来缓解这个问题:上下文里不存完整定义,而是保存一个指向可用工具的上下文指针——Agent 按名称或用途搜索工具,只在需要时才加载其定义。如果你的 Harness 不这样做,预先加载的成本依然存在,那就值得只开启项目实际需要的 MCP 服务器。

用法:

“Agent 需要从 Linear 读取 Ticket。”

“配置 Harness 使用 Linear MCP 服务器——它把 Linear API 暴露成 Agent 可调用的 Tool。省得你自己写自定义工具包装。”