diff --git a/fastapi_mcp/server.py b/fastapi_mcp/server.py index bb75106..4f7f7f7 100644 --- a/fastapi_mcp/server.py +++ b/fastapi_mcp/server.py @@ -3,7 +3,7 @@ from typing import Dict, Optional, Any, List, Union, Literal, Sequence from typing_extensions import Annotated, Doc -from fastapi import FastAPI, Request, APIRouter, params +from fastapi import FastAPI, Request, APIRouter, params, Response from fastapi.openapi.utils import get_openapi from mcp.server.lowlevel.server import Server import mcp.types as types @@ -19,6 +19,11 @@ logger = logging.getLogger(__name__) +class VoidResponse(Response): + async def __call__(self, scope, receive, send) -> None: + pass + + class FastApiMCP: """ Create an MCP server from a FastAPI app. @@ -201,6 +206,7 @@ async def handle_mcp_connection(request: Request): self.server.create_initialization_options(notification_options=None, experimental_capabilities={}), raise_exceptions=False, ) + return VoidResponse() def _register_mcp_messages_endpoint_sse( self,