当前位置: 首页 > news >正文

8种主流LLM Agents开发框架盘点及MCP Server集成教程,小白程序员必备收藏!

本文介绍了8种主流的LLM Agents开发框架,包括OpenAI Agents SDK、LangGraph、LlamaIndex、AutoGen 0.4+、Pydantic AI、SmolAgents、Camel和CrewAI,并详细讲解了如何在每种框架中集成MCP Server,以便更方便地接入外部工具。文章还提供了每种框架集成MCP Server的代码示例,适合想要学习大模型开发的程序员参考。

1、Open AI Agents SDK

【框架简介】

OpenAI Agents SDK是OpenAI官方推出的轻量级Agent开发框架,旨在方便开发者构建多Agent协作的智能体系统。该SDK源于OpenAI内部实验项目Swarm,并在近期正式推出生产版本。OpenAI Agents SDK的特点是:简单易用、轻量级、专注在最小集功能,并支持转交(Handoffs)、护栏(Guardrails)等很有特点的功能。

【集成MCP】

以下代码演示了如何将OpenAI Agent实例连接到一个搜索的MCP Server,并将其中的工具集成Agent中:

import asyncio, osfrom agents import Agent, Runner, AsyncOpenAI, OpenAIChatCompletionsModel, RunConfigfrom agents.mcp import MCPServerStdioasyncdefmain(): # 1. 创建MCP Server实例 search_server = MCPServerStdio( params={ "command": "npx", "args": ["-y", "@mcptools/mcp-tavily"], "env": {**os.environ} } ) await search_server.connect() # 2. 创建Agent并集成MCP Server agent = Agent( name="助手Agent", instructions="你是一个具有网页搜索能力的助手,必要时使用搜索工具获取信息。", mcp_servers=[search_server], # 将MCP Server列表传入Agent ) # 3. 运行Agent,让其自动决定何时调用搜索工具 result = await Runner.run(agent, "Llama4.0发布了吗?",run_config=RunConfig(tracing_disabled=True)) print(result.final_output) await search_server.cleanup()if __name__ == "__main__": asyncio.run(main())

有趣的是,在使用远程MCP Server时,Agents SDK提供了自动缓存工具列表的选项(通过设置cache_tools_list=True)。如果需要手动使缓存失效,可以调用MCP Server实例上的invalidate_tools_cache()方法 。

2、LangGraph

【框架简介】

LangGraph来自著名的LangChain,是一个用于构建Agentic Workflow的强大框架,它将任务过程建模为有状态的Graph结构,从而可以实现更复杂和结构化的交互。在该框架内集成MCP Server可以在工作流程的各个阶段更精确地控制何时以及如何调用外部工具,从而实现复杂的Agentic系统。 LangGraph的特点是功能强大,你可以使用Prebuilt的接口快速创建Agent,也可以使用Graph定义复杂的Agentic工作流与多Agent系统;缺点是略显复杂。

【集成MCP】

将前面的示例修改为LangGraph+MCP Server的代码实现:

import asyncio, osfrom langchain_mcp_adapters.client import MultiServerMCPClientfrom langchain_core.messages import SystemMessage, HumanMessagefrom langchain_openai import ChatOpenAIfrom dotenv import load_dotenvfrom langgraph.prebuilt import create_react_agent# 加载环境变量load_dotenv()# 定义大语言模型model = ChatOpenAI(model="gpt-4o-mini")# 定义并运行agentasyncdefrun_agent(): # 定义MCP服务器,用于访问Tavily搜索工具 asyncwith MultiServerMCPClient( { "tavily": { "command": "npx", "args": ["-y", "@mcptools/mcp-tavily"], "env": {**os.environ} # 传递环境变量给MCP工具 } } ) as client: # 创建ReAct风格的agent agent = create_react_agent(model, client.get_tools()) # 定义系统消息,指导如何使用工具 system_message = SystemMessage(content=( "你是一个具有网页搜索能力的助手,必要时使用搜索工具获取信息。" )) # 处理查询 agent_response = await agent.ainvoke({"messages": [system_message, HumanMessage(content="Llama4.0发布了吗?")]}) # 返回agent的回答 return agent_response["messages"][-1].content# 运行agentif __name__ == "__main__": response = asyncio.run(run_agent()) print("\n最终回答:", response)

注意这里使用MultiServerMCPClient可以灵活的支持多个MCP Server的同时连接,对于单个Server场景,你也可以借助load_mcp_tools方法直接从MCP SDK的session中导入Tools(无需MultiServerMCPClient)。

3、LlamaIndex

【框架简介】

LlamaIndex最初是一个专注于构建基于外部数据的LLM应用程序的框架,其独特之处在于构建以数据为中心的LLM应用的能力,特别是复杂的企业级RAG应用。但随着LlamaIndex Workflows与AgentWorkflow功能的推出,LlamaIndex也发展为一个更全能的专注于企业级RAG+Agent系统的开发框架。特点是功能强大、预置大量RAG应用优化模块;事件驱动的Workflows在Agent开发上比LangGraph更简单。

【集成MCP】

LlamaIndex目前也支持与MCP Server集成,快速导入Tools使用:

from llama_index.tools.mcp import McpToolSpec,BasicMCPClientimport asynciofrom llama_index.llms.openai import OpenAIfrom llama_index.core.agent import ReActAgentimport osllm = OpenAI(model="gpt-4o-mini")asyncdefmain(): mcp_client = BasicMCPClient("npx", ["-y", "@mcptools/mcp-tavily"], env={**os.environ}) mcp_tool = McpToolSpec(client=mcp_client) tools = await mcp_tool.to_tool_list_async() agent = ReActAgent.from_tools( tools, llm=llm, verbose=True, system_prompt="你是一个具有网页搜索能力的助手,必要时使用搜索工具获取信息。" ) response = await agent.aquery("Llama4.0发布了吗?") print(response) if __name__ == "__main__": asyncio.run(main())

如果你的MCP Server是远程SSE模式运行,只需要更换BasicMCPClient初始化时的参数,将命令及参数(如npx)更换为url即可。

4、AutoGen 0.4+

【框架简介】

AutoGen是微软开发的一个框架,用于构建具有多Agent对话的下一代企业级AI应用。其独特之处在于专注于通过多个Agent之间的协调交互来实现协作和解决复杂任务,在最新的AutoGen0.4中,微软进行了颠覆性的架构修改,特别是开放了AutoGen-Core这一更底层的API层,可用于构建更底层与细粒度控制的分布式多Agent系统。其特点是功能强大,支持分布式多Agent,可根据需要选择不同层次的API使用;缺点是较复杂。

【集成MCP】

在Autogen 0.4的扩展中提供了MCP集成的组件,演示如下(代码有省略):

from autogen_ext.tools.mcp import StdioServerParams, mcp_server_tools...async def get_mcp_tools(): server_params = StdioServerParams( command="npx", args = [ "-y", "@mcptools/mcp-tavily", ],env={**os.environ} ) tools = await mcp_server_tools(server_params) return tools...classToolUseAgent(RoutedAgent):...async defmain(): """主函数,设置并运行agent系统""" # 创建单线程agent运行时 runtime = SingleThreadedAgentRuntime() mcp_tools = await get_mcp_tools() tools = [*mcp_tools] # 注册agent类型 await ToolUseAgent.register(runtime, "my_agent", lambda: ToolUseAgent(tools))... message = Message('Llama4.0发布了吗?) response = await runtime.send_message(message, AgentId("my_agent", "default"))

如果需连接远程MCP Server,请使用SseServerParams组件,并使用url参数初始化。

5、Pydantic AI

【框架简介】

Pydantic AI来自于著名的Pydantic库开发者,是一个将Pydantic与LLM集成的Agents开发框架。其独特之处在于专注于在AI应用中利用Pydantic的类型验证、序列化与结构化输出等功能。Pydantic AI的特点是天然的结构化输出与强类型验证,且简洁易用,与其他框架也有良好的集成,可以结合使用。

【集成MCP】

使用Pydantic AI集成MCP Server中的工具非常简单(与OpenAI Agents SDK非常类似),只需要简单的提供Server配置即可:

from pydantic_ai import Agentfrom pydantic_ai.mcp import MCPServerStdioimport osserver = MCPServerStdio( 'npx', ["-y", "@mcptools/mcp-tavily"], env={**os.environ} )agent = Agent( name="助手Agent", system_prompt="你是一个具有网页搜索能力的助手,必要时使用搜索工具获取信息。", model='openai:gpt-4o-mini', mcp_servers=[server])async def main(): asyncwith agent.run_mcp_servers(): result = await agent.run('"Llama4.0发布了吗?') print(result.data)if __name__ == "__main__": import asyncio asyncio.run(main())

如果需要使用SSE远程MCP,将Server组件更改为MCPServerHTTP即可。

6、SmolAgents

【框架简介】

Smloagents是大名鼎鼎的Hugging Face开发的一个轻量级Agent开发框架。其特点在于简洁易用、基于生成代码的工具调用(核心抽象叫CodeAgent)以及与Hugging Face生态系统的集成。Smloagents与MCP的集成提供了一种直接的方式,可以为Agent添加复杂的功能,而无需为每个工具进行自定义编码。

【MCP集成】

以下代码演示了如何初始化一个Smloagent并将其连接到MCP Server:

from smolagents import ToolCollection, CodeAgentfrom smolagents.agents import ToolCallingAgentfrom smolagents import tool, LiteLLMModelfrom mcp import StdioServerParametersimport osmodel = LiteLLMModel(model_id="gpt-4o-mini")server_parameters = StdioServerParameters( command="npx", args=["-y", "@mcptools/mcp-tavily"], env={**os.environ},)with ToolCollection.from_mcp(server_parameters, trust_remote_code=True) as tool_collection: agent = ToolCallingAgent(tools=[*tool_collection.tools], model=model) response = agent.run("llama4.0发布了吗?") print(response)

如果你需要使用SSE模式的MCP Server,只需要替换服务器配置参数为url即可。

7、Camel

【框架简介】

Camel是一个专注于创建能够进行复杂对话以解决任务的强大的多智能体构建框架 。其独特之处在于使用AI Agent之间的角色扮演和交互协作来完成任务,并内置了多种角色的Agent抽象及大量组件,Camel也可以用来开发RAG应用。现在这些Agent也可以通过MCP Server得到增强。

Camel还提供了一个将Camel中创建的工具集发布成MCP Server的功能。

【MCP集成】

你可以参考如下方式将基于Camel的Agent与MCP Server做集成:

import asynciofrom mcp.types import CallToolResultfrom camel.toolkits.mcp_toolkit import MCPToolkit, MCPClientimport osfrom camel.agents import ChatAgentasync def run_example(): mcp_client = MCPClient( command_or_url="npx", args=["-y", "@mcptools/mcp-tavily"], env={**os.environ} ) await mcp_client.connect() mcp_toolkit = MCPToolkit(servers=[mcp_client]) tools = mcp_toolkit.get_tools() try: agent = ChatAgent(system_message='根据任务描述,使用网页搜索工具获取信息。', tools=tools) response = await agent.astep("llama4.0发布了吗?") print("Response:", response.msgs[0].content) except Exception as e: print(f"Error during agent execution: {e}") finally: # 确保在任何情况下都会断开连接 await mcp_client.disconnect()if __name__ == "__main__": asyncio.run(run_example())

如果需要连接SSE的远程Server,替换这里的MCPClient中的输入参数为url即可。

8、CrewAI

【框架简介】

CrewAI是一个用于编排自主AI智能体像团队一样协作完成复杂任务的多智能系统开发框架。其独特之处在于其“角色扮演”的设计,专注于创建具有特定角色和职责的结构化Agent团队(称为Crew);最新的Flow功能可用于创建更可靠的Agentic Workflow。

【MCP集成】

目前官方的MCP集成正在紧锣密鼓的完善,还没有正式发布,暂时你可以借助一个第三方适配器进行:

import osfrom crewai import Agent, Crew, Task # type: ignore from mcp import StdioServerParametersfrom mcpadapt.core import MCPAdaptfrom mcpadapt.crewai_adapter import CrewAIAdapterwith MCPAdapt( StdioServerParameters( command="npx", args=["-y", "@mcptools/mcp-tavily"], env={**os.environ} ), CrewAIAdapter(),) as tools: print(f"Tools: {tools}") agent = Agent( role="MyAgent",goal="根据任务描述,使用网页搜索工具获取信息。",backstory="你是一个中文搜索助手", tools=tools,llm='gpt-4o-mini', ) # Create a task task = Task( description="llama4.0的最新消息",agent=agent,expected_output="消息列表") task.execute_sync()

官方的MCP适配器的进展可以参考其Github开源项目的PR #2496(MCP servers tool support in CrewAI #2496)。

以上为大家盘点了8个常见的AI Agent开发框架及其对MCP的支持。由于MCP诞生不久且处于不断完善中,这些框架对MCP的适配也在不断迭代,请及时参考你所使用的开发框架的最新参考文档,了解最新变化。

如何学习大模型 AI ?

由于新岗位的生产效率,要优于被取代岗位的生产效率,所以实际上整个社会的生产效率是提升的。

但是具体到个人,只能说是:

“最先掌握AI的人,将会比较晚掌握AI的人有竞争优势”。

这句话,放在计算机、互联网、移动互联网的开局时期,都是一样的道理。

我在一线科技企业深耕十二载,见证过太多因技术卡位而跃迁的案例。那些率先拥抱 AI 的同事,早已在效率与薪资上形成代际优势,我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在大模型的学习中的很多困惑。我们整理出这套AI 大模型突围资料包

  • ✅ 从零到一的 AI 学习路径图
  • ✅ 大模型调优实战手册(附医疗/金融等大厂真实案例)
  • ✅ 百度/阿里专家闭门录播课
  • ✅ 大模型当下最新行业报告
  • ✅ 真实大厂面试真题
  • ✅ 2026 最新岗位需求图谱

所有资料 ⚡️ ,朋友们如果有需要《AI大模型入门+进阶学习资源包》下方扫码获取~

① 全套AI大模型应用开发视频教程

(包含提示工程、RAG、LangChain、Agent、模型微调与部署、DeepSeek等技术点)

② 大模型系统化学习路线

作为学习AI大模型技术的新手,方向至关重要。 正确的学习路线可以为你节省时间,少走弯路;方向不对,努力白费。这里我给大家准备了一份最科学最系统的学习成长路线图和学习规划,带你从零基础入门到精通!

③ 大模型学习书籍&文档

学习AI大模型离不开书籍文档,我精选了一系列大模型技术的书籍和学习文档(电子版),它们由领域内的顶尖专家撰写,内容全面、深入、详尽,为你学习大模型提供坚实的理论基础。

④ AI大模型最新行业报告

2025最新行业报告,针对不同行业的现状、趋势、问题、机会等进行系统地调研和评估,以了解哪些行业更适合引入大模型的技术和应用,以及在哪些方面可以发挥大模型的优势。

⑤ 大模型项目实战&配套源码

学以致用,在项目实战中检验和巩固你所学到的知识,同时为你找工作就业和职业发展打下坚实的基础。

⑥ 大模型大厂面试真题

面试不仅是技术的较量,更需要充分的准备。在你已经掌握了大模型技术之后,就需要开始准备面试,我精心整理了一份大模型面试题库,涵盖当前面试中可能遇到的各种技术问题,让你在面试中游刃有余

以上资料如何领取?

为什么大家都在学大模型?

最近科技巨头英特尔宣布裁员2万人,传统岗位不断缩减,但AI相关技术岗疯狂扩招,有3-5年经验,大厂薪资就能给到50K*20薪!

不出1年,“有AI项目经验”将成为投递简历的门槛。

风口之下,与其像“温水煮青蛙”一样坐等被行业淘汰,不如先人一步,掌握AI大模型原理+应用技术+项目实操经验,“顺风”翻盘!

这些资料真的有用吗?

这份资料由我和鲁为民博士(北京清华大学学士和美国加州理工学院博士)共同整理,现任上海殷泊信息科技CEO,其创立的MoPaaS云平台获Forrester全球’强劲表现者’认证,服务航天科工、国家电网等1000+企业,以第一作者在IEEE Transactions发表论文50+篇,获NASA JPL火星探测系统强化学习专利等35项中美专利。本套AI大模型课程由清华大学-加州理工双料博士、吴文俊人工智能奖得主鲁为民教授领衔研发。

资料内容涵盖了从入门到进阶的各类视频教程和实战项目,无论你是小白还是有些技术基础的技术人员,这份资料都绝对能帮助你提升薪资待遇,转行大模型岗位。

以上全套大模型资料如何领取?

http://www.jsqmd.com/news/527973/

相关文章:

  • 如何通过专注力训练方法改善多动症儿童的冲动行为?
  • 从零到一:打造你的个人智能图像检索系统
  • 2026年汽车贴膜改色价格大揭秘,哈尔滨这些品牌费用合理 - 工业品网
  • 开源工具KMS_VL_ALL_AIO:零基础安全使用与高效激活方案全指南
  • 北京拆迁补偿律师如何选择不踩坑?2026年靠谱推荐房产纠纷处理专业律师团队 - 十大品牌推荐
  • Cogito-V1-Preview-Llama-3B效果实测:对比Claude Code的代码生成能力
  • 2026年哈尔滨汽车贴膜改色选购攻略,靠谱公司怎么选 - 工业推荐榜
  • 细聊哈尔滨隐形车衣优质公司,选购时关注哪些品牌和价格? - mypinpai
  • 基于卷积神经网络思想的Tao-8k视觉描述优化
  • Java Bean数据校验实战指南,Spring——事务的传播性。
  • GitHub监控脚本改造指南:2023年漏洞情报自动推送(含企业微信对接)
  • 新手友好:bert-base-chinese预训练模型快速入门,无需训练直接使用
  • Playwright MCP:基于结构化可访问性树的智能浏览器自动化框架
  • 2026年3月地面材料厂家最新推荐:木地板、SPC石塑地板、运动地板、PVC地胶厂家选择指南 - 海棠依旧大
  • 一件代发选品三要素:起批量、更新频次、库存可见性
  • # Linux进阶Day01:程序与进程、进程前后台调度、进程查杀、日志管理、systemd服务管理
  • 质量管理系统的核心功能拆解:如何用质量管理解决生产场景中的质量难题
  • 别再只玩LED了!用树莓派4B+PCF8591做个智能光控小夜灯(附完整Python代码)
  • 哈尔滨贴汽车玻璃膜好用的品牌有哪些,费用贵吗 - 工业设备
  • 2026年哈尔滨实力强的汽车贴膜专业公司,口碑好的有哪些 - mypinpai
  • Carsim自动驾驶车辆漂移控制:基于LQR的定圆稳态飘移算法与Simulink联合仿真
  • 3分钟破解Windows/Office激活困局:从失效到永久激活的终极解决方案
  • 毕设程序java环卫管理系统设计 基于Java的智慧城市环卫一体化管理系统 城市清洁作业数字化调度与监控平台
  • 探讨哈尔滨资质齐全的汽车改色膜品牌企业,哪家性价比高 - myqiye
  • 交换机测试,快速温变箱推荐品牌?
  • 遥感数据解析准确率低于82.6%?你缺的不是算法,而是这3个被CV界忽视的辐射一致性校验模块(含ISO 19115元数据自动注入方案)
  • 2026 年评价佳的不锈钢型材厂家分析,给你可靠参考,不锈钢型材厂家解决方案与实力解析 - 品牌推荐师
  • 分析2026年哈尔滨实力强的隐形车衣企业,价格如何 - 工业设备
  • 某大型汽车零部件企业基于威联通 NAS 的海量数据存储与容灾归档实践
  • 从词向量到数字大脑:自然语言处理(NLP)的十年范式革命与技术巅峰