用途:FastMCP 是用于构建 MCP 服务器的 Python 框架,把函数、数据与提示词暴露给 Claude 等大语言模型。
主要能力:通过 @mcp.tool() 定义可被模型调用的工具,支持同步与异步;通过 @mcp.resource() 暴露静态或动态资源,并用 URI 模板实现带参数资源;通过 @mcp.prompt() 提供预置提示词。上下文注入支持向用户请求确认、上报进度、请求 LLM 采样。内置 8 类中间件,包括计时、响应缓存、日志、限流、错误处理、工具注入、提示词工具化和资源工具化,并支持自定义中间件与钩子。存储后端基于 py-key-value-aio,支持内存、磁盘、Redis 等,也可对接 DynamoDB、MongoDB、Elasticsearch、Memcached、RocksDB、Valkey,并支持 Fernet 加密与 OAuth 令牌持久化。服务器生命周期提供初始化与清理钩子,可管理数据库连接和 HTTP 客户端,并可与 FastAPI/Starlette 等 ASGI 应用集成。
使用方式:pip install fastmcp 或 uv pip install fastmcp。最小服务器在模块级创建 FastMCP 实例并 mcp.run(),可用 python server.py、fastmcp dev server.py 或指定 --transport http --port 8000 运行。存储、中间件和生命周期通过 FastMCP 构造参数或 add_middleware 配置。
限制:v2.13.0 起生命周期行为从每会话改为每服务器实例;嵌入 ASGI 应用时必须显式传入 mcp.lifespan;资源模板参数名必须与函数签名精确匹配;平台默认存储不同(Mac/Windows 用磁盘,Linux 用内存),需显式覆盖。文档未提供定价、性能或平台兼容性等更多信息。