fastmcp
FastMCP 由 Prefect 团队开发,是一个用于构建 MCP Server、Client 和交互式应用的 Python 框架。你只需把工具声明为普通的 Python 函数,FastMCP 就会自动生成 schema、参数校验和文档;连接 Server 时只要提供一个 URL,它会自动处理传输协议的协商。FastMCP 1.0 已于 2024 年并入官方 MCP Python SDK,而独立项目则作为持续活跃开发的框架继续演进。
对于想把内部 API、数据库或脚本开放给 AI 助手的 Python 开发者,它是很自然的选择;也可以用它编写 MCP Client 来测试或编排 Server,或者通过 FastMCP Apps 为工具加上交互式界面。同一团队还维护着 TypeScript 版本 FastMCP for TypeScript。文档非常完善,并以 llms.txt 格式发布,方便编程 Agent 直接阅读。
上手方式:用 `uv add fastmcp` 把它加入项目,写一个带 `@mcp.tool` 装饰器的函数,然后调用 `mcp.run()` 即可。官方提供了从旧版 FastMCP 以及从官方 SDK 迁移的升级指南。
功能特性
为什么选择它
权衡点
维护状况检查
- 最近提交
- 2026-10-24
- 近 90 天提交数
- 100+
- 近 90 天发布数
- 28
- 最新发布
- v4.1.3 (2026-10-20)
- 未关闭 issue
- 565
- 近期 issue 至少有一条评论的比例
- 5/19
最早的一周在左边,最近 4 周为橙色。数据来源:GitHub 提交统计。
状态规则:GitHub 上已归档 = 已归档;最近提交在 90 天内 = 活跃;91 到 365 天 = 放缓;更久 = 停滞。所有数字来自所示日期的 GitHub API。
讨论最多的未关闭 issue
- #1993 FastMCP Azure Provider Auth Failed for Github Copilot in VS Code15 条评论 · 2025-10-03
- #4265 OAuthProxy refresh-token rotation has no grace window — duplicate/late refresh forces re-auth12 条评论 · 2026-06-02
- #508 Force closing a client during a tool call bricks the server12 条评论 · 2025-05-19
- #853 Client returns 405 method not allowed with SSE connections11 条评论 · 2025-06-16
- #4850 OAuthProxy: token issued by /token is immediately rejected as invalid_token at the protected endpoint10 条评论 · 2026-08-16
issue 标题引自 GitHub。请打开链接确认该问题是否仍适用于你使用的版本。
适合谁
- 你希望用最精简的 Python 代码构建 MCP Server 或 Client,直接通过普通 Python 函数类型注解与文档字符串自动生成 Schema 与参数校验。
- 需要一个由 Prefect 团队维护、采用 Apache-2.0 许可且原生支持 stdio、SSE 与 Streamable HTTP 传输协议的成熟框架。
- 你不希望引入额外封装层,倾向直接基于官方参考实现编写底层协议逻辑;可直接使用官方 MCP Python SDK。
- 你已经有现成的 FastAPI 服务,只想把已有路由直接映射为 MCP 工具;FastAPI-MCP 更直接。
与同类的区别
FastMCP 是 Prefect 团队打造的高层易用框架(Apache-2.0),大幅减少了样板代码并增强了客户端与服务端工具链;MCP Python SDK(MIT)则是协议官方组织维护的底层标准参考实现。
FastMCP 适合从头用 Python 函数设计和构建专门的 MCP Server 与 Client;FastAPI-MCP 则专门用于把现有 FastAPI 应用的路由自动转换为 MCP 工具。
兼容性
快速开始
使用场景
同类工具
收录于以下清单
评论
暂无评论,来发表第一条吧