← 返回目录
F

FastAPI-MCP

社区
将FastAPI端点暴露为MCP工具,并支持认证!
GitHub 源仓库 ↗
★ 12.0k Stars 分类 · 开发工具 热门 源版本 e5cad13cabfc
48FMRS · D
可靠性
6/20
安全与权限
10/20
维护活跃度
10/20
文档质量
10/20
安装易用性
12/20

FastAPI-MCP是一个成熟的库,用于将FastAPI端点转换为MCP工具,并提供认证支持。它采用FastAPI原生方法,使其对现有FastAPI用户特别有用。文档和示例非常全面,社区活跃,拥有MIT许可证。它不适用于非FastAPI项目,可能需要谨慎处理敏感端点的安全问题。

查看 FMRS 评分方法 →

FastAPI-MCP是一个旨在将现有FastAPI应用程序转换为模型上下文协议(MCP)服务器的库。它不是简单的OpenAPI到MCP转换器,而是FastAPI的原生扩展,允许您将MCP服务器直接挂载到FastAPI应用上。它内置了使用现有FastAPI依赖项的认证功能,保留请求和响应模型的架构,保留了Swagger中已有的文档,并支持灵活部署——您可以将MCP服务器挂载到同一个应用,也可以单独部署。它使用ASGI传输直接与FastAPI应用通信,无需HTTP调用。

工具能力

暂未整理工具清单。

安装接入

使用uv或pip安装FastAPI-MCP:

uv add fastapi-mcp

或者

pip install fastapi-mcp

选型与风险

适合谁

  • 已部署FastAPI应用的开发者,希望以最小配置添加MCP支持。
  • 需要确保MCP端点安全,并利用现有FastAPI依赖进行认证和授权的团队。
  • 希望将MCP服务器与FastAPI应用一起部署,或作为独立服务部署的场景。

不适合谁

  • 尚未使用FastAPI的开发者——此服务器针对FastAPI应用设计。
  • 需要支持stdio传输的客户端——FastAPI-MCP使用ASGI/HTTP传输。
  • 需要完全控制MCP工具定义,而不依赖自动从端点生成的用户。

所需权限

  • 需要访问您的FastAPI应用实例。
  • 可能要求MCP端点具备网络访问权限(例如,通过HTTP)。
  • 认证和授权使用您FastAPI应用中现有的依赖项。

风险与副作用

  • 如果认证配置不当,暴露的MCP端点可能会成为未经授权访问的入口。
  • 自动生成的工具可能暴露敏感端点——请确保正确配置认证和授权。
  • 依赖FastAPI版本和Python版本的兼容性——需要Python 3.10+。

常见排障

  1. 确保您使用的是Python 3.10或更高版本。
  2. 验证FastAPI应用是否正确初始化,且MCP服务器已挂载。
  3. 检查认证依赖项是否按预期工作,以防出现权限错误。
  4. 查看文档和示例,了解高级配置和部署选项。

使用场景

将现有FastAPI服务暴露为MCP工具,供Claude、Cursor或Windsurf等AI客户端使用。
为AI代理提供受保护的API端点访问,并利用现有FastAPI认证机制。
无需重写API代码,即可将MCP功能快速集成到FastAPI服务中。

支持客户端

暂未确认支持的客户端。