main.py•1.14 kB
from fastmcp import Context
from fastmcp.server.middleware.error_handling import ErrorHandlingMiddleware, RetryMiddleware
from fastmcp.server.middleware.logging import LoggingMiddleware
from fastmcp.server.middleware.rate_limiting import RateLimitingMiddleware, SlidingWindowRateLimitingMiddleware
from fastmcp.server.middleware.timing import TimingMiddleware, DetailedTimingMiddleware
from fastmcp.utilities import logging
from browser_fastmcp_server import mcp
import os
logger = logging.get_logger(__name__)
mcp.add_middleware(RetryMiddleware())
mcp.add_middleware(TimingMiddleware())
mcp.add_middleware(ErrorHandlingMiddleware())
mcp.add_middleware(DetailedTimingMiddleware())
mcp.add_middleware(RateLimitingMiddleware(burst_capacity=20))
mcp.add_middleware(SlidingWindowRateLimitingMiddleware(max_requests=100))
mcp.add_middleware(LoggingMiddleware(include_payloads=True,max_payload_length=1000))
if __name__ == "__main__":
transport = os.environ.get("MCP_TRANSPORT", "sse")
port = int(os.environ.get("MCP_PORT", 8000))
host = os.environ.get("MCP_HOST", "0.0.0.0")
mcp.run(transport=transport, port=port, host=host)