""" MCP (Model Context Protocol) API Router Handles MCP protocol messages for the debug-env tools. Tool execution routes are at /mcp (no /api prefix). """ import logging from fastapi import APIRouter, Request, Response from debug_env.server.handlers.mcp_handler import handle_mcp_request logger = logging.getLogger(__name__) router = APIRouter() @router.post("/mcp") async def handle_mcp(request: Request): """Handle MCP protocol messages""" response = await handle_mcp_request(request) if response is None: # For notifications, return 204 No Content return Response(content="", status_code=204, headers={"Content-Length": "0"}) # Check if response is already a dict or needs to be converted if hasattr(response, "model_dump"): return response.model_dump() else: return response