#!/usr/bin/env python3
"""
Simple server test without database initialization.
"""
from fastapi import FastAPI
from fastapi.staticfiles import StaticFiles
from fastapi.responses import RedirectResponse
import structlog
from src.api.gui_routes import router as gui_router
from src.api.tastytrade_routes import router as tastytrade_router
from src.api.chat_routes import router as chat_router
from src.api.cme_routes import router as cme_router
from src.utils.logger import setup_logging
setup_logging()
logger = structlog.get_logger()
app = FastAPI(
title="CME MCP Server - Test",
description="Test server without database initialization",
version="1.0.0"
)
# Mount static files if they exist
try:
app.mount("/static", StaticFiles(directory="src/static"), name="static")
except Exception as e:
logger.warning(f"Could not mount static files: {e}")
# Include routers
app.include_router(gui_router, prefix="/gui", tags=["GUI"])
app.include_router(chat_router, prefix="/api", tags=["Chat"])
app.include_router(tastytrade_router, prefix="/api", tags=["TastyTrade"])
app.include_router(cme_router, prefix="/api", tags=["CME Data"])
@app.get("/")
async def root():
"""Root endpoint - redirect to GUI dashboard."""
return RedirectResponse(url="/gui/")
@app.get("/health")
async def health():
"""Health check endpoint."""
return {"status": "ok", "message": "Server running"}
if __name__ == "__main__":
import uvicorn
uvicorn.run(
"test_server:app",
host="0.0.0.0",
port=8080,
reload=True,
log_level="info"
)