
langchain-mcp-adapters
一行代码把 MCP 工具接进 LangChain Agent
langchain-mcp-adapters 是 LangChain 官方推出的适配层,用于把 Anthropic 提出的 MCP(Model Context Protocol)服务器无缝接入 LangChain 与 LangGraph 生态。MCP 定义了一套标准协议,让 AI 应用能以统一方式发现和调用外部工具、数据源与提示模板;但 LangChain 的工具抽象与 MCP 的协议格式并不一致。本项目解决这一鸿沟:它提供客户端封装,可将任意 MCP 服务器暴露的工具自动转换为 LangChain 的 StructuredTool,从而直接在 Agent、链或 LangGraph 工作流中调用。核心能力包括多服务器会话管理、stdio 与 SSE/HTTP 传输支持、工具列表动态加载与调用、资源与提示读取,并支持在 LangGraph 节点中复用同一会话。对已有 LangChain 项目来说,它能低成本接入不断增长的 MCP 工具生态。
项目数据
使用教程
环境要求
- Python 环境(需可运行 pip)
- 已安装 langgraph 与 langchain(Quickstart 中一并安装)
- 使用 OpenAI 模型时需准备 OPENAI_API_KEY
- 接入 SSE / HTTP(streamable_http) 传输的 MCP 服务器时需准备对应 headers 认证信息
安装与启动步骤
-
1了解维护状态
该仓库已不再主动维护,MCP 支持已迁入 langchain.mcp 命名空间,新项目建议直接迁移。
-
2安装适配器包
最小安装,只装本适配层本身。注意包名结尾是多数的 adapters。
pip install langchain-mcp-adapters -
3安装完整依赖
按 Quickstart 一次性装齐适配器、LangGraph 与带 OpenAI 支持的 LangChain。
pip install langchain-mcp-adapters langgraph "langchain[openai]" -
4配置模型密钥
设置 OpenAI 密钥到环境变量,把示例值换成你自己的真实 key。
export OPENAI_API_KEY=sk-xxxxxxxx -
5Windows 配置密钥
Windows PowerShell 下用 $env: 语法设置同名环境变量。
$env:OPENAI_API_KEY="sk-xxxxxxxx" -
6迁移到新包(推荐)
README 要求迁移到 langchain[mcp] 以获得后续开发、修复与支持。
pip install "langchain[mcp]"
关键配置
| 配置项 | 必填 | 说明 | 示例 |
|---|---|---|---|
OPENAI_API_KEY | 是 | 供 LangGraph agent 调用 OpenAI 模型使用 | sk-xxxxxxxx |
headers | 否 | 连接 MCP 服务器时传入的自定义请求头,用于认证或追踪 | {"Authorization": "Bearer sk-xxxxxxxx"} |
如何确认成功
在 Python 中执行 import langchain_mcp_adapters 不报错、pip list 能查到该包,即安装成功。
常见问题
Q:这个库还在维护吗?
A:不再主动维护。MCP 支持已迁至 langchain 的 langchain.mcp 命名空间,建议按官方迁移指南改用 langchain[mcp] 以获取后续修复与支持。
Q:安装时的包名是哪个?
A:以 langchain-mcp-adapters 为准。README 中另有一处写成 langchain-mcp-adapt,缺少结尾的 s,安装会失败,请勿照抄。
Q:有 JavaScript/TypeScript 版本吗?
A:有。LangChain.js 仓库中提供了对应的 langchain-mcp-adapters 库,路径为 langchainjs/libs/langchain-mcp-adapters。
Q:怎么给 MCP 服务器传认证信息?
A:在连接配置中使用 headers 字段传入自定义请求头,例如认证或链路追踪信息。该能力仅支持 sse 和 http(streamable_http) 两种传输方式。
注意事项
- 本仓库已停止主动维护,生产使用前优先评估迁移到 langchain[mcp]
- 安装命令中的包名必须是 langchain-mcp-adapters,README 里出现过漏写 s 的拼写错误
- headers 传参不支持所有传输类型,仅 sse 与 http/streamable_http 可用
- README 未提供可直接运行的完整示例代码,请以官方迁移指南与文档站为准
核心亮点
- 官方维护,与 LangChain/LangGraph 版本同步更新,兼容性有保障
- 自动把 MCP 工具转成 LangChain StructuredTool,无需手写包装层
- 同时支持 stdio 与 SSE/HTTP 两种传输,覆盖本地和远程 MCP 服务器
不足之处
- MCP 协议仍在演进,接口存在变动风险,需跟随上游升级
- 示例与文档偏基础,复杂多服务器编排场景的实践指南较少
适用场景
- 给已有 LangChain Agent 快速接入社区 MCP 工具服务器
- 在 LangGraph 多节点工作流中共享同一 MCP 会话调用外部工具
- 把本地 stdio 或远程 HTTP 的 MCP 服务统一封装成标准工具集
替代项目
mcp-use、fastmcp
项目介绍
上一篇:genai-stack
同类项目推荐
ComfyUI_Custom_Nodes_AlekPet
开源
给 ComfyUI 装上语音翻译和姿态检测,工作流更全能
Custom nodes that extend the capabilities of Comfyui
langchain
开源
组装 AI 应用的乐高积木,从想法到上线不换工具
The agent engineering platform.
transformers
开源
全球最大的模型仓库全家桶,想用的模型一把抓
Transformers: the model-definition framework for state-of-the-art machine learning m···
bruno
开源
把 API 测试当代码管理,用 Git 搞定协作与版本追踪
Opensource IDE For Exploring and Testing API's (lightweight alternative to Postman/I···