Built by Tadata
FastAPI-MCP
Expose your FastAPI endpoints as Model Context Protocol (MCP) tools, with Auth!
](https://pypi.org/project/fastapi-mcp/) ](https://pypi.org/project/fastapi-mcp/)   
特性
- 认证 内置,使用您现有的FastAPI依赖项!
- FastAPI原生: 不仅仅是另一个OpenAPI->MCP转换器
- 零/最小配置 必需的-只需将其指向您的FastAPI应用程序,即可正常工作
- 保留架构 您的请求模型和响应模型
- 保存文档 在所有端点中,就像在Swagger中一样
- 灵活部署 -将MCP服务器安装到同一应用程序,或单独部署
- ASGI运输 -直接使用FastAPI的ASGI接口进行高效通信
托管解决方案
如果您更喜欢托管解决方案,请查看 tadata.com 网站.
安装
我们建议使用 紫外线,一个快速的Python包安装程序:
uv add fastapi-mcp或者,您可以使用pip进行安装:
pip install fastapi-mcp基本用法
使用FastAPI MCP的最简单方法是将MCP服务器直接添加到您的FastAPI应用程序中:
from fastapi import FastAPI
from fastapi_mcp import FastApiMCP
app = FastAPI()
mcp = FastApiMCP(app)
# Mount the MCP server directly to your FastAPI app
mcp.mount()就是这样!您的自动生成MCP服务器现在可以在 https://app.base.url/mcp.
文档、示例和高级用法
FastAPI MCP提供 全面的文件此外,请查看 示例目录 用于演示这些功能的代码示例。
FastAPI优先方法
FastAPI-MCP被设计为FastAPI的本地扩展,而不仅仅是从API生成MCP工具的转换器。这种方法具有几个关键优势:
- 本地依赖关系:使用熟悉的FastAPI保护您的MCP端点
Depends()用于身份验证和授权
- ASGI运输:使用其ASGI接口直接与您的FastAPI应用程序通信,消除了从MCP到API的HTTP调用的需要
- 统一的基础设施:您的FastAPI应用程序不需要与MCP服务器分开运行(不过 单独部署 也支持)
这种设计理念确保在将MCP功能添加到现有的FastAPI服务时,摩擦最小。
发展与贡献
感谢您考虑为FastAPI MCP做出贡献!我们鼓励社区发布问题并创建拉取请求。
在您开始之前,请查看我们的 贡献指南.
社区
加入 MCParty Slack社区 与其他MCP爱好者联系,提出问题,分享您使用FastAPI MCP的经验。
需求
- Python 3.10+(推荐3.12)
- 紫外线
许可证
MIT许可证。版权所有(c)2025 Tadata股份有限公司。
