用 MCP 协议搭 Agent?这个框架把 Anthropic 那篇论文直接变成了代码
用 MCP 协议搭 Agent?这个框架把 Anthropic 那篇论文直接变成了代码
Anthropic 去年底发了一篇「Building Effective Agents」的研究文章,讲怎么用几个简单模式(Prompt Chaining、Router、Parallelization、Orchestrator……)把 Agent 搭得靠谱。那篇文章当时在开发者圈子里疯转,但很多人看完还是不知道「这玩意儿到底怎么写代码」。
mcp-agent 就是来填这个坑的。
一句话说清楚:mcp-agent 是一个 Python 框架,把 MCP(Model Context Protocol)和 Anthropic 那篇论文里的所有 Agent 模式,做成了可组合的代码组件。你不需要自己造轮子,直接 import、配置、跑起来就行。
它解决什么问题
MCP 协议现在火得一塌糊涂,但协议本身是偏底层的——它定义了 AI 怎么连接外部工具,但不告诉你怎么组织多个工具、多个 Agent 的协作逻辑。这才是真正写代码时最麻烦的地方。
mcp-agent 做了两件事:
1. 帮你管 MCP 服务器的生命周期
你不用自己处理连接、断连、错误重试,它全包了。声明式写清楚你要用哪些服务器,框架自动初始化。
2. 把论文里的模式变成代码
举几个例子:
- Router:Agent 自动根据输入判断该走哪条分支,代码里就是一个
if/else逻辑 - Parallelization:多个工具并行跑,
asyncio给你安排好 - Orchestrator:一个主 Agent 协调多个子 Agent 干活,结果汇总回来
- Human-in-the-loop:关键节点可以暂停,等人工确认再继续
3. 支持云端部署
uvx mcp-agent deploy,一条命令打包上传,后端跑在 Temporal 持久化运行时上,Agent 跑一半崩溃了也能恢复。
怎么用
装:
pip install mcp-agent
# 或
uv add mcp-agent
快速示例——一个”finder”Agent,可以读本地文件、也可以抓网页:
from mcp_agent.app import MCPApp
from mcp_agent.agents.agent import Agent
app = MCPApp(name="hello_world_agent")
async with app.run() as mcp_agent_app:
finder_agent = Agent(
name="finder",
instruction="你可以读本地文件或抓网页,返回请求的信息。",
server_names=["fetch", "filesystem"],
)
async with finder_agent:
tools = await finder_agent.list_tools()
# 自动连接 MCP 服务器,工具直接用
为什么值得试试
现在社区搭 Agent 的框架很多,LangChain、AutoGen、CrewAI……mcp-agent 的差异化在于两点:
轻量:不需要学一套新方言,就用标准的 Python async/await,会写协程就能上手。
有理论支撑:Anthropic 那篇论文里的每个模式,它都对应一个具体的实现,不是拍脑袋出来的。意味着你不是在踩一个全新的坑,而是在踩一个已经被研究过的坑。
多 Agent 编排:它还实现了 OpenAI Swarm 的多 Agent 编排模式,但做得模型无关——不绑定 OpenAI,可以接任何 LiteLLM 支持的模型。
基本信息
- GitHub:https://github.com/lastmile-ai/mcp-agent
- Star:⭐ 8.4k
- 语言:Python
- 协议:Apache-2.0
- 安装量:pip install 即可,也有 uv 支持
如果你正在做基于 MCP 的开发,或者想搭一套靠谱的多 Agent 工作流,mcp-agent 是个值得放进工具箱的选项。论文看完了,来这儿找答案。
评论区
登录后可评论。