将你的FastAPI端点作为模型上下文协议(MCP)工具暴露出来,并支持认证!
内置认证:使用你现有的FastAPI依赖项!
FastAPI原生:不仅仅是另一个OpenAPI -> MCP转换器
零/最小配置:只需指向你的FastAPI应用即可工作
保留请求模型和响应模型的模式
保留所有端点的文档,就像Swagger中的一样
灵活部署:将你的MCP服务器挂载到同一个应用上,或单独部署
ASGI传输:直接使用FastAPI的ASGI接口进行高效通信
我们推荐使用uv,一个快速的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)
# 将MCP服务器直接挂载到你的FastAPI应用上
mcp.mount()

就是这样!你的自动生成的MCP服务器现在可以在https://app.base.url/mcp
访问。
FastAPI-MCP提供了全面的文档。此外,查看示例目录中的代码示例,了解这些功能的实际应用。
FastAPI-MCP被设计为FastAPI的原生扩展,而不仅仅是一个从你的API生成MCP工具的转换器。这种方法提供了几个关键优势:
原生依赖项:使用熟悉的FastAPI Depends()
进行认证和授权,保护你的MCP端点
ASGI传输:直接使用FastAPI应用的ASGI接口进行通信,消除了MCP到你的API的HTTP调用需求
统一基础设施:你的FastAPI应用不需要与MCP服务器分开运行(尽管单独部署也是支持的)
这种设计理念确保在现有FastAPI服务中添加MCP功能时摩擦最小。
感谢你考虑为FastAPI-MCP做出贡献!我们鼓励社区发布问题和创建拉取请求。
在开始之前,请查看我们的贡献指南。
加入MCParty Slack社区,与其他MCP爱好者交流,提问,并分享你使用FastAPI-MCP的经验。
MIT许可证。版权所有(c)2024 Tadata Inc.