PrefectHQ/fastmcp
AI 工程用 Python 快速构建 MCP 服务器、客户端和交互式应用的框架,把 LLM 与工具和数据连接起来。
项目介绍
FastMCP 是面向 Model Context Protocol 的 Python 框架,MCP 是让 LLM 调用工具、读取数据的协议标准。它覆盖三块能力:服务器把 Python 函数暴露为 MCP 工具、资源和提示词;客户端连接任意本地或远程 MCP 服务器;应用让工具在对话中直接渲染交互界面 三项能力。
工具就是一个普通 Python 函数,FastMCP 自动生成参数 schema、校验逻辑和基于 docstring 的说明;连接服务器时,传输协商、认证和协议生命周期由框架处理。使用者只需要写业务逻辑,MCP 层交给框架。它适合用 Python 开发 Agent 工具、把内部 API 包装给 LLM,或编写 MCP 客户端的开发者。
项目说明 FastMCP 1.0 于 2024 年被并入官方 MCP Python SDK,当前独立维护的版本被广泛用于各类 MCP 服务器 README。TypeScript 版本 @prefecthq/fastmcp-ts 采用同样的设计 FastMCP for TypeScript。
快速使用
前提:已安装 Python 和 uv。
- 把包加入项目:
uv add fastmcp
- 新建服务器文件,例如
server.py:
from fastmcp import FastMCP
mcp = FastMCP("Demo")
@mcp.tool
def add(a: int, b: int) -> int:
"""Add two numbers"""
return a + b
if __name__ == "__main__":
mcp.run()
- 运行后,用支持 MCP 的客户端连接。
add会以自动生成的 schema 暴露,客户端看到的是一个接收两个整数的add工具。
安装校验、升级和接入真实客户端的完整步骤见 安装指南 和 快速入门。
使用约束
- Python 运行时:服务器和客户端代码都是 Python;TypeScript 版本是独立仓库中的单独包。
- 版本迁移:项目提供从 FastMCP 3、FastMCP 2 以及 MCP SDK v1/v2 升级的指南 升级指南,迁移已有服务器前应先对照。
- 许可证:Apache-2.0 LICENSE。
- 供 Agent 使用的文档:完整文档另以
llms.txt形式发布,llms-full.txt可能超出 LLM 的上下文窗口,更适合作为参考而非默认输入 文档入口。 - Gateway 独立提供:跨团队扩展、SSO、RBAC 和审计日志由 Prefect 的商业产品 FastMCP Gateway 提供,不在本仓库中。
HotRepo 点评
按已记录的日榜快照,该项目在 2026-07-20 新增 77 星、2026-07-21 新增 96 星;2026-11-15 进入 Python 日榜第 10 名,当日新增 76 星。这些数字分属不同周期和语言榜,只反映单日表现,不能当作趋势。更有参考价值的是结构:FastMCP 同时提供服务器、客户端和应用三层,而不是单一工具,其升级指南覆盖了多个此前的 SDK 代际,这让它有条件成为 Agent 工具类项目的基础框架。一个关于 Supabase Auth 与 FastMCP 的 HN 讨论显示,实际难点在 OAuth 2.1 握手:有评论者花数小时才跑通认证,并称这个过程加深了对流程的理解 评论。因此需要预留精力的是认证集成,而不是工具声明。
本文由 AI 根据项目 README 生成,更新于 ,以项目官方文档为准。
Hacker News 讨论
相关推荐
- Shubhamsaboo/awesome-llm-apps面向开发者的 AI Agent、RAG 与 Agent Skill 示例合集,每个模板都能直接跑起来。
- mcpjungle/MCPJungle自托管的 MCP 网关:注册一次服务器,即可让各类 AI 客户端和 Agent 通过单一端点访问其工具。
- patchy631/ai-engineering-hub面向想动手搭建 LLM 应用的人,提供 RAG、智能体、MCP 等可运行教程项目与学习路线。
- JosssphZhou/poki让 Claude Code、Codex 等 MCP 客户端通过 Mac 操控真实 iPhone,无需越狱或额外硬件。
- crewAIInc/crewAI一个用 Python 编排角色化 LLM 智能体、并把它们包进可控事件驱动工作流的框架。