解析Claude Code(Agent工具)、Agent SDK(多Agent编排)、Claude API(底层控制)、MCP(协议)各自适用场景与边界。
有四个基础组件:
Claude Code 是 Anthropic 的命令行 Agent 工具,用于代码生成、重构和调试。它运行在你代码所在的地方,通过 CLAUDE.md 文件、自定义技能和 MCP 集成来配置其行为。
关键区别在于:这不是一个你粘贴代码进去的聊天窗口。它是一个 Agent,能够读取你的文件、进行编辑、运行命令,并在你的项目内部检查自己的 work。
如果你的任务是"操作这个代码库",Claude Code 就是为它量身打造的表面。
Agent SDK 是一个用于构建多 Agent 应用的框架。它把那些你本来需要自己写的原语交到你手上:Agent 循环、子 Agent 编排、工具调用和完整的生命周期钩子。
这里的价值在于,Agent 管道中那些困难的部分已经被解决了。你描述 Agent 和工具;SDK 运行循环、在子 Agent 之间路由,并给你钩子来观察或拦截每一步。
如果你正在自己写一个围绕模型调用的 while 循环,并手动分发工具,SDK 很可能才是你真正想要的。
Claude API 是访问模型的 HTTP 层,用于程序化调用。这就是 messages.create()、tool_use、结构化 JSON 输出、批处理和流式响应。没有 Agent 框架,没有 CLI,只有模型和你的代码。
这是最低层、的最高控制力的表面。你拥有循环、状态和编排。作为交换,你获得最大的灵活性,并能够规模化运行。
如果你想要一个定义良好的单一转换、运行多次、并产生可预测的结构化输出,API 是最直接的路径。
MCP 是一个标准,而不是客户端。它定义了 Claude 如何通过工具和资源接口连接到你的数据库、API 和服务。你编写(或安装)一个暴露能力的 MCP 服务器,任何 MCP 感知的客户端(包括 Claude Code 和 Agent SDK)都可以使用它们。
MCP 的意义在于:你构建一次连接器,然后到处复用。与其把一个数据库硬编码到三个不同的应用中,不如写一个 MCP 服务器,让所有表面都能与它对话。