import uvicorn
import sys,asyncio,os
from pathlib import Path
sys.path.append(str(Path(__file__).parent))
from fastapi import FastAPI
from fastapi_mcp import FastApiMCP
from fastapi.middleware.cors import CORSMiddleware
from controller.main_router import main_router
app = FastAPI(
title="opc服务调用",
version="1.0"
)
app.add_middleware(
CORSMiddleware,
allow_origins=["*"],
allow_credentials=True,
allow_methods=["*"],
allow_headers=["*"],
)
async def fetch_plc_data():
print("...")
app.include_router(main_router)
mcp = FastApiMCP(
app,
name="My API MCP",
description="My API description",
)
mcp.mount_sse()
if __name__ == '__main__':
asyncio.run(fetch_plc_data())
uvicorn.run(app, host="0.0.0.0", port=8000)
参考:快速接入MCP服务!将 MCP 服务与 FastAPI 集成_fastapi mcp-CSDN博客