返回博客2025年3月27日1 分钟阅读

OpenAI Agents SDK 支持 MCP:入门指南

摘要

今天发现 OpenAI 的 Agents SDK 已经支持 MCP 了!这真是个好消息。对于我们这些需要让 AI 与各种工具交互的开发者来说,这无疑是个福音。MCP(模型上下文协议)本质上就是一种标准化的方式,让 AI 模型能够与外部工具和数据源进行交互。 简单来说,MCP 就像是 AI 应用的 USB-C 接口。官方文档里有个挺形象的比喻: > 就像 US...

OpenAI Agents SDK 支持 MCP:入门指南

OpenAI Agents SDK 支持 MCP

引言

今天发现 OpenAI 的 Agents SDK 已经支持 MCP 了!这真是个好消息。对于我们这些需要让 AI 与各种工具交互的开发者来说,这无疑是个福音。MCP(模型上下文协议)本质上就是一种标准化的方式,让 AI 模型能够与外部工具和数据源进行交互。

MCP 是什么鬼?

简单来说,MCP 就像是 AI 应用的 USB-C 接口。官方文档里有个挺形象的比喻:

就像 USB-C 为设备连接各种外设提供标准化方式一样,MCP 为 AI 模型连接不同数据源和工具提供了标准化方式。

我个人理解,MCP 就是让 AI 能够"插上"各种工具的标准接口,不用每次都重新发明轮子。OpenAI 把这个支持内置到了 Agents SDK 中,这样我们就能轻松地让 Agent 使用各种 MCP 服务器提供的工具了。

MCP 服务器种类

目前 MCP 有两种类型的服务器:

  1. stdio 服务器:这种就是在本地运行的,作为应用程序的子进程。
  2. HTTP over SSE 服务器:这种是远程的,通过 URL 连接。

OpenAI 提供了对应的类:MCPServerStdioMCPServerSse 来连接这两种服务器。挺方便的!

怎么用 MCP 服务器?

举个例子,如果想用官方的文件系统 MCP 服务器,代码大概是这样:

async with MCPServerStdio(
    params={
        "command": "npx",
        "args": ["-y", "@modelcontextprotocol/server-filesystem", samples_dir],
    },
) as server:
    tools = await server.list_tools()

这段代码会启动一个文件系统 MCP 服务器,然后获取它提供的所有工具。

把 MCP 服务器加到 Agent 里

要让 Agent 使用 MCP 服务器的工具,只需要在创建 Agent 时把服务器实例传进去就行了:

agent=Agent(
    name="Assistant",
    instructions="使用工具完成任务",
    mcp_servers=[mcp_server_1, mcp_server_2]
)

每次 Agent 运行时,SDK 会自动调用 list_tools() 让 LLM 知道有哪些工具可用。当 LLM 决定使用某个工具时,SDK 会调用相应服务器的 call_tool() 方法。整个过程对开发者来说是透明的,不用操心细节。

缓存小技巧

每次 Agent 运行都会调用 list_tools(),如果是远程服务器,这可能会导致一些延迟。有个小技巧是启用缓存:

async with MCPServerSse(
    params={...},
    cache_tools_list=True  # 启用缓存
) as server:
    # ...

不过要注意,只有当你确定工具列表不会变的情况下才应该这样做。如果工具列表变了,可以调用 invalidate_tools_cache() 来刷新缓存。

完整示例在哪?

如果想看完整的代码示例,可以去 examples/mcp 看看。那里有几个不同场景的示例,对入门很有帮助。

跟踪功能很赞

OpenAI 的跟踪功能也支持 MCP 了,它会自动记录:

  1. 调用 MCP 服务器列出工具的操作
  2. 函数调用中与 MCP 相关的信息

MCP 跟踪截图

这对调试超级有用,可以清楚地看到 Agent 是如何使用 MCP 工具的。

总结一下

总的来说,OpenAI Agents SDK 对 MCP 的支持让我们能够更轻松地将各种工具集成到 AI 应用中。不管是本地工具还是远程服务,只要遵循 MCP 协议,都可以无缝接入。这大大扩展了 AI 应用的能力边界,让我们能够构建更加强大和灵活的 AI 系统。

如果你正在开发 AI 应用,强烈建议试试这个功能!

参考资源


往期回顾

相关文章

2025年3月27日

OpenAI Agents SDK 支持 MCP 极简指南

OpenAI Agents SDK 现已支持 MCP!这意味着我们可以更轻松地让 AI 使用各种外部工具了。 MCP(模型上下文协议)就像 AI 的 USB 接口,让 AI 能标准化地连接各种工具和数据源。 - **stdio 服务器**:本地运行,作为子进程 - **HTTP over SSE 服务器**:远程运行,通过 URL 连接 如果工具列表不会变,...

2026年6月8日

【AI早读 0608】Agent 生态加速成熟,多智能体与平台战并进

过去 24 小时 AI 圈关键词是 Agent:Towards Data Science 把 Python 多智能体教程推成中级实践;AI Engineer 频道两场分享指向 Agent 从原型走向规模化 - MCP 管道与 LLM 可观测性;OpenAI 据 FT 报道要把 ChatGPT 重构成集成 Codex 的“超级应用”,内部一句“Chat is dead”;Ramp 数据显示 DeepSeek 登顶增长最快的软件供应商,价格驱动的“Token 经济”成形;Notion 因 Anthropic Opus 4.7/4.8 抖动一度禁用全部 Anthropic 模型;The Algorithmic Bridge 深扒 Anthropic 如何用安全叙事影响特朗普政府的 AI 政策。

2026年6月2日

【AI早读 0602】AWS 与 OpenAI 深度合作

OpenAI 前沿模型 GPT-5.5 / GPT-5.4 / Codex 正式入驻 AWS Bedrock,定价与第一方一致;AgentCore Gateway 把 MCP prompts 和 resources 升级为第一类原生对象,新增 elicitation 与 OAuth 2.0 on-behalf-of token 交换;AWS 同步发了 AgentOps 四支柱方法论;Philipp Schmid 给出 Gemini Managed Agents 实战指南;TDS 长文拆解 RAG 检索的可预测失败模式;Jack Clark 引用 UVA / Anthropic / 加拿大央行的论文,称质量调整后美国 AI 经济 2025 年增速约 2600%。

最近一封 · Sample

【AI早读 0613】智能体主动性飞跃与模型评估新范式

今天聚焦智能体的两个方向加一个底层动向:Simon Willison 记录 Claude Fable 5 的“relentlessly proactive” —— 为查一个滚动条 bug 自主注入代码、自写诊断 HTTP 服务、跨浏览器截图验证,是有意图的多步自纠探索;Google DeepMind 提出“模型 diffing”新范式,让审计智能体自主构造 prompt 主动搜索两个模型的行为差异;Google Cloud 发布 Open Knowledge Format,用带 YAML frontmatter 的 Markdown 为 AI 的结构化知识建开放标准。能力、评估、基础设施三条线正拼成智能体开发的完整图景。

—— william

Letters

来信

里面装的是

  • 新文章 — 写完一篇就寄一封,不攒货
  • 这周读到的、看到的、好用的工具
  • 正在折腾的实验,附带翻车记录

约莫 1–2 周一封 · 随时退订

合作伙伴

CompeteMap — 英国及爱尔兰学生竞赛一站式搜索

数学、编程、科学、写作等各类竞赛信息汇总,支持按年龄和科目筛选,再也不错过报名截止日。

准备开始了吗?

先简单说明目标,我会给出最合适的沟通方式。