ai4mats-mcp-tools/main.py

31 lines
1010 B
Python

import uvicorn
from starlette.applications import Starlette
from starlette.routing import Mount
from starlette.middleware.cors import CORSMiddleware
from tools.bayesian_mcp_server import mcp as bayesian_mcp
from tools.app_deploy_mcp_server import mcp as app_deploy_mcp
from tools.cvd_chat_recommender_mcp_server import mcp as cvd_chat_mcp
from tools.cvd_param_recommender_mcp_server import mcp as cvd_param_mcp
from tools.tem_analysis_mcp_server import mcp as tem_mcp
# FastMCP 内部就是 Starlette app
routes = [
Mount("/mcp/bayesian", bayesian_mcp.sse_app()),
Mount("/mcp/app-deploy", app_deploy_mcp.sse_app()),
Mount("/mcp/cvd-chat", cvd_chat_mcp.sse_app()),
Mount("/mcp/cvd-param", cvd_param_mcp.sse_app()),
Mount("/mcp/tem-analysis", tem_mcp.sse_app()),
]
app = Starlette(routes=routes)
app.add_middleware(
CORSMiddleware,
allow_origins=["*"],
allow_methods=["*"],
allow_headers=["*"],
)
if __name__ == "__main__":
uvicorn.run(app, host="0.0.0.0", port=8000)