🔥
🔥
🔥
上期 《大模型基建工程:基于 FastAPI 自动构建 SSE MCP 服务器》中我们使用fastapi-mcp
自动挂载fastapi
到mcp
工具,通过源码分析和实践,我们发现每次sse请求又转到了内部fastapi RESTful api
接口,同时该工程目前只能挂载当前项目中的fastapi接口,
所以决定自己手搓一个自动挂载的功能。


webapi_mcp:自动挂载fastapi接口
import uvicorn
from fastapi import FastAPI
from webapi_mcp import create_mcp_server_app
app = FastAPI()
@app.get("/")
async def fastapi_mcp():
"""FastAPI change to MCP tool。
参数:
param: 参数含义
"""
return {"message":"hello fastapi_mcp"}
mcp_server = create_mcp_server_app(app, auto_mount_fastapi=True)
if __name__ == "__main__":
uvicorn.run(app, host="0.0.0.0", port=8001)

fastapi:openapi.json

fastapi:
docs

MCP Inspector v0.8.0


现有fastapi base_url构建mcp server



tools
其中 fastapi_on_mcp_demo_get
就是将现有的fastapi 8002
端口挂载至 mcp_server
,可以看到8002
的服务日志中,会有对应demo
接口的调用日志。
