你是否曾为给大模型(LLM)接入真实世界能力而头疼?比如想让 AI 调用天气 API、读取本地文件、执行 Shell 命令,或与企业内部系统交互——但又苦于协议复杂、开发冗长、调试困难?FastMCP 正是为此而生:它是一个极简、高性能的 Python 框架,专为快速构建符合 Model Context Protocol(MCP) 规范的服务端(Server)和客户端(Client),让开发者只需几行 Python 代码,就能把任意功能封装成 LLM 可理解、可调用的“智能工具”。
核心功能
- 开箱即用的 MCP 服务端:一行装饰器(
@tool)即可将普通 Python 函数发布为标准 MCP 工具,自动处理元数据注册、参数校验与响应序列化 - 零配置 MCP 客户端:内置异步 HTTP 客户端,支持自动发现服务端工具列表、智能参数补全与结构化调用,无需手写 JSON Schema 或 REST 封装
- 原生 FastAPI 集成:默认基于 FastAPI 构建,自带 OpenAPI 文档、实时 Swagger UI 和健康检查端点,开箱即得生产就绪的 Web 服务
- 轻量无依赖设计:核心仅依赖
pydantic和httpx,无重型框架耦合,可嵌入已有项目,也可独立部署为微服务 - 完整 MCP v0.3+ 协议支持:兼容工具发现(
list-tools)、工具执行(call-tool)、流式响应、错误传播等全部核心语义,无缝对接主流 MCP 兼容 Agent(如 LangChain、LlamaIndex 新版) - 开箱即用的本地开发体验:提供
fastmcp serveCLI 命令,一键启动带热重载的开发服务器;搭配 VS Code 插件或 Discord 社区模板,5 分钟完成首个可调用工具
适合哪些人用
如果你是以下角色之一,FastMCP 就是为你量身打造的“生产力加速器”:
• AI 应用开发者:正为 LLM 构建 RAG、Agent 工作流,需要快速接入数据库、API、文件系统等外部能力;
• 后端/全栈工程师:熟悉 Python,希望用最小学习成本对外暴露业务逻辑供 AI 调用,而非从零设计 REST 接口;
• 研究者与教育者:在教学或实验中演示“工具调用”原理,需要清晰、可读、可调试的参考实现;
• 企业内部平台团队:计划统一管理 AI 可用工具资产,需轻量、安全、易审计的标准化协议落地层。
快速上手
安装仅需一条命令:
pip install fastmcp
编写你的第一个 MCP 工具(保存为 weather_tool.py):
from fastmcp import tool
import httpx
@tool
def get_weather(city: str) -> str:
"""获取指定城市的当前天气(模拟)"""
return f"{city} 当前晴,气温 24°C,湿度 65%。"
if __name__ == "__main__":
from fastmcp import serve
serve(__file__)
终端运行:python weather_tool.py,服务即在 http://localhost:8000 启动。打开浏览器访问 /docs 查看交互式文档,或用 curl 测试调用:curl -X POST http://localhost:8000/call-tool -H "Content-Type: application/json" -d '{"name":"get_weather","arguments":{"city":"上海"}}'
项目信息
🚀 The fast, Pythonic way to build MCP servers and clients.
26.6k
今日 +96 stars today
Stars
2.2k
Forks
Python
Apache-2.0
编程语言:Python|Star 数:26593|开源协议:Apache-2.0|GitHub 项目地址
它是 Prefect 团队出品的“极简主义”典范——没有魔法,只有清晰的抽象;不造轮子,只做协议的优雅表达。当你厌倦了在 YAML、JSON 和胶水代码间反复横跳,FastMCP 就是你回归 Python 本质、专注逻辑本身的最佳选择。





