prthm11 commited on
Commit
a829887
·
verified ·
1 Parent(s): e705ea6

Update server.py

Browse files
Files changed (1) hide show
  1. server.py +17 -6
server.py CHANGED
@@ -2,6 +2,9 @@ from mcp.server.fastmcp import FastMCP
2
  import logging
3
  import sys
4
  from pathlib import Path
 
 
 
5
 
6
  # Configure logging to stderr
7
  logging.basicConfig(
@@ -78,9 +81,17 @@ async def generate_quiz(chapter_name: str, difficulty: str = "medium") -> str:
78
  # # mcp.run(transport="sse") and set env vars MCP_HOST and MCP_PORT
79
 
80
  if __name__ == "__main__":
81
- import sys
82
- if "--stdio" in sys.argv:
83
- mcp.run(transport="stdio")
84
- else:
85
- # 'sse' is the correct internal name for the HTTP/SSE transport
86
- mcp.run(transport="sse")
 
 
 
 
 
 
 
 
 
2
  import logging
3
  import sys
4
  from pathlib import Path
5
+ import os
6
+ # Must set this BEFORE importing FastMCP
7
+ os.environ["MCP_ALLOW_HTTP"] = "1"
8
 
9
  # Configure logging to stderr
10
  logging.basicConfig(
 
81
  # # mcp.run(transport="sse") and set env vars MCP_HOST and MCP_PORT
82
 
83
  if __name__ == "__main__":
84
+ # Patch the SSE validator to accept any host (required for HF Spaces)
85
+ import mcp.server.sse
86
+
87
+ original_validate = mcp.server.sse._validate_request
88
+
89
+ def patched_validate(scope):
90
+ """Accept all requests regardless of host header"""
91
+ return True
92
+
93
+ mcp.server.sse._validate_request = patched_validate
94
+
95
+ # Run the server
96
+ logger.info("Starting FastMCP server with patched host validation...")
97
+ mcp.run(transport="sse", host="0.0.0.0", port=7860)