首页
学习
活动
专区
圈层
工具
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
首页
学习
活动
专区
圈层
工具
MCP广场
MCP广场 >详情页
fastapi_mcp2025-05-2628分享
github
一款零配置工具,可自动将FastAPI作为MCP工具。
By tadata-org
2025-05-2628
github
详情内容

fastapi-to-mcp

FastAPI-MCP

将你的FastAPI端点作为模型上下文协议(MCP)工具暴露出来,并支持认证!

PyPI版本
Python版本
FastAPI
CI
覆盖率

fastapi-mcp-usage

功能特点

  • 内置认证:使用你现有的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优先的方法

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的经验。

要求

  • Python 3.10+(推荐3.12)
  • uv

许可证

MIT许可证。版权所有(c)2024 Tadata Inc.

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档