Files
mcp-template-python/src/mcp_template_python/server.py
Sun-ZhenXing e1b112f401 init repo
2025-06-11 11:21:12 +08:00

25 lines
533 B
Python

import contextlib
from fastapi import FastAPI
from .app.math import mcp as math
MCP_MAP = {
"math": math,
}
@contextlib.asynccontextmanager
async def lifespan(app: FastAPI):
async with contextlib.AsyncExitStack() as stack:
for mcp in MCP_MAP.values():
await stack.enter_async_context(mcp.session_manager.run())
yield
app = FastAPI(lifespan=lifespan)
for name, mcp in MCP_MAP.items():
app.mount(f"/{name}/compatible", mcp.sse_app())
app.mount(f"/{name}", mcp.streamable_http_app())