From 6b3256c542c8266e04ee773fc67fe9dbcddfb80e Mon Sep 17 00:00:00 2001 From: syui Date: Fri, 23 May 2025 01:38:54 +0900 Subject: [PATCH] add fastapi_mcp --- mcp/scripts/server.py | 24 ++++++++++++++++-------- src/commands/mcp.rs | 3 +++ 2 files changed, 19 insertions(+), 8 deletions(-) diff --git a/mcp/scripts/server.py b/mcp/scripts/server.py index f029b6b..e9771e6 100644 --- a/mcp/scripts/server.py +++ b/mcp/scripts/server.py @@ -1,13 +1,21 @@ # server.py -from fastmcp import FastMCP +from fastapi import FastAPI +from fastapi_mcp import FastApiMCP -mcp = FastMCP( - name="aigpt-agent", - host="127.0.0.1", - port=5000, - timeout=30 +app = FastAPI() + +@app.get("/items/{item_id}", operation_id="get_item") +async def read_item(item_id: int): + return {"item_id": item_id, "name": f"Item {item_id}"} + +# MCPサーバを作成し、FastAPIアプリにマウント +mcp = FastApiMCP( + app, + name="My API MCP", + description="My API description" ) +mcp.mount() if __name__ == "__main__": - print("Starting MCP server...") - mcp.run() + import uvicorn + uvicorn.run(app, host="0.0.0.0", port=8000) diff --git a/src/commands/mcp.rs b/src/commands/mcp.rs index ad486c3..056df9d 100644 --- a/src/commands/mcp.rs +++ b/src/commands/mcp.rs @@ -79,6 +79,9 @@ pub fn mcp_setup() { .arg("openai") .arg("requests") .arg("fastmcp") + .arg("uvicorn") + .arg("fastapi") + .arg("fastapi_mcp") .arg("mcp") .current_dir(&dest_dir) .output()