2
0
Просмотр исходного кода

feat(mcp): Change from stdio to HTTP/SSE transport mode

- Modified main() to use run_http_async() instead of run(transport="stdio")
- Server now listens on http://0.0.0.0:8000/sse by default
- Configurable via MCP_HOST and MCP_PORT environment variables
- Uses SSE (Server-Sent Events) for MCP protocol transport

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
d8dfun 3 дней назад
Родитель
Сommit
7754f0e5c7
1 измененных файлов с 17 добавлено и 3 удалено
  1. 17 3
      src/mcp_server/server.py

+ 17 - 3
src/mcp_server/server.py

@@ -738,9 +738,23 @@ async def list_all_progress() -> str:
         }, ensure_ascii=False)
         }, ensure_ascii=False)
 
 
 
 
-def main():
-    """Main entry point for the MCP server."""
-    mcp.run(transport="stdio")
+async def main():
+    """Main entry point for the MCP server (HTTP mode)."""
+    # Get configuration from environment
+    host = os.getenv("MCP_HOST", "0.0.0.0")
+    port = int(os.getenv("MCP_PORT", "8000"))
+
+    print(f"Starting Novel Translator MCP Server on http://{host}:{port}")
+    print(f"Transport: SSE (Server-Sent Events)")
+    print(f"Endpoint: http://{host}:{port}/sse")
+
+    # Run HTTP server with SSE transport
+    await mcp.run_http_async(
+        transport="sse",
+        host=host,
+        port=port,
+        log_level="info"
+    )
 
 
 
 
 if __name__ == "__main__":
 if __name__ == "__main__":