C
ChaoBro

Anthropic 工程师揭示:大多数人用 MCP 的方式都错了

Anthropic 工程师揭示:大多数人用 MCP 的方式都错了

核心观点

一位 Anthropic 工程师在社区中指出:大多数人只用到了 MCP 的冰山一角

大多数开发者对 MCP 的理解停留在:

“接入一个 MCP Server → 调用一个函数 → 获取结果”

这种”工具调用”模式只是 MCP 能力的最浅层。MCP 的真正价值远不止于此。

MCP 的三层能力模型

第一层:工具调用(大多数人停留的地方)

Agent → MCP Server → 调用工具 → 返回结果

这就是 90% 的开发者目前的使用方式。接入一个 MCP Server,调用一个函数,拿到结果。有用,但远不够。

第二层:资源订阅与流式传输

MCP 支持**资源(Resources)**的概念,不仅仅是工具(Tools):

  • 静态资源:文件、数据库记录、配置信息
  • 动态资源:实时数据流、日志、监控指标
  • 资源订阅:Agent 可以订阅资源变化,而非每次主动查询

这意味着 Agent 不需要反复轮询,而是被动接收更新——这在长期运行的 Agent 场景中至关重要。

第三层:上下文管理与动态发现

MCP 的深层能力:

  • 提示词注入:MCP Server 可以向 Agent 注入系统级提示,告知可用能力和使用约束
  • 动态发现:Agent 运行时动态发现新的工具和能力,而非预定义
  • 多 Server 协调:多个 MCP Server 之间可以共享上下文和资源

被忽视的高价值用法

用法当前采用率价值等级
基础工具调用90%+基础
资源流式订阅~15%
动态工具发现~10%极高
多 Server 上下文共享~5%极高
提示词注入与自描述~20%

实际案例:MCP 不只是”查天气”

假设你有一个数据库查询 MCP Server:

❌ 基础用法:Agent 调用 query_database 函数,传入 SQL,返回结果。

✅ 进阶用法

  1. MCP Server 注入提示词,告知 Agent 数据库 schema、索引情况、查询限制
  2. Agent 订阅特定表的变更事件,数据更新时自动收到通知
  3. MCP Server 根据查询复杂度自动选择最优执行策略
  4. 多个 MCP Server 共享查询缓存,避免重复计算

行动建议

  • 现有 MCP 用户:检查你的 MCP Server 是否启用了资源(Resources)和提示词(Prompts)功能,而不仅仅是工具(Tools)
  • MCP Server 开发者:考虑添加资源订阅能力,让 Agent 可以”被动等待”而非”主动轮询”
  • Agent 框架用户:关注 OpenClaw、Hermes 等框架对 MCP 资源订阅和动态发现的支持进展
  • 架构设计者:将 MCP 视为 Agent 与外部系统的通用通信层,而非简单的函数调用接口

总结

MCP 正在从”工具调用协议”进化为”Agent-系统通信基础设施”。尽早理解并采用其深层能力,将在 Agent 应用架构中建立显著优势。