geronimo-pericoli commited on
Commit
fafd1b9
·
verified ·
1 Parent(s): 71b13e7

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +23 -23
app.py CHANGED
@@ -1,42 +1,42 @@
1
  from fastapi import FastAPI, Request
2
  from fastapi.responses import RedirectResponse
3
  import gradio as gr
4
- from server import mcp # Tu servidor MCP original
5
  import datetime
6
 
7
- app = FastAPI(title="MCP Server")
8
 
9
- # Interfaz Gradio mejorada
 
 
 
 
 
 
10
  def create_demo():
11
  with gr.Blocks(title="MCP Dashboard") as demo:
12
- gr.Markdown("# 🚀 MCP Server Dashboard")
13
- with gr.Row():
14
- gr.Markdown("Bienvenido al panel de control del servidor MCP")
15
 
16
  with gr.Row():
17
- status = gr.Textbox(label="Estado", value="✅ Servidor activo")
 
 
 
18
  btn = gr.Button("Actualizar")
19
 
20
- def update_status():
21
- return f"✅ Servidor activo (Última verificación: {datetime.datetime.now().strftime('%H:%M:%S')}"
22
-
23
- btn.click(update_status, outputs=status)
24
 
25
  gr.Markdown("### Endpoints disponibles:")
26
- gr.Markdown("- `/get_document_info` - Información de documentos")
27
- gr.Markdown("- `/sse` - Stream de eventos")
28
-
29
- return demo
30
 
31
- # Redirección inteligente para Hugging Face Spaces
32
- @app.get("/")
33
- async def root(request: Request):
34
- # Verifica si el acceso viene de la página principal del Space
35
- if "hf.space" in request.headers.get("referer", ""):
36
- return RedirectResponse(url="/gradio")
37
- return {"message": "MCP Server API", "docs": "/gradio"}
38
 
39
- # Montaje de Gradio
40
  gradio_app = create_demo()
41
  app = gr.mount_gradio_app(app, gradio_app, path="/gradio")
42
 
 
1
  from fastapi import FastAPI, Request
2
  from fastapi.responses import RedirectResponse
3
  import gradio as gr
4
+ from server import mcp # Importa tu MCP
5
  import datetime
6
 
7
+ app = FastAPI()
8
 
9
+ # Configuración especial para Hugging Face Spaces
10
+ @app.get("/")
11
+ async def root(request: Request):
12
+ # Redirige SIEMPRE a /gradio cuando se accede desde la web de HF
13
+ return RedirectResponse(url="/gradio")
14
+
15
+ # Crea la interfaz Gradio
16
  def create_demo():
17
  with gr.Blocks(title="MCP Dashboard") as demo:
18
+ gr.Markdown("# 🏥 Pharma IA - MCP Server")
19
+ gr.Markdown("Estado del servidor: **Activo**")
 
20
 
21
  with gr.Row():
22
+ last_check = gr.Textbox(
23
+ label="Última verificación",
24
+ value=datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S")
25
+ )
26
  btn = gr.Button("Actualizar")
27
 
28
+ def update_time():
29
+ return datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S")
30
+
31
+ btn.click(update_time, outputs=last_check)
32
 
33
  gr.Markdown("### Endpoints disponibles:")
34
+ gr.Markdown("- `/get_document_info` - Consultar documentos")
35
+ gr.Markdown("- `/sse` - Eventos en tiempo real")
 
 
36
 
37
+ return demo
 
 
 
 
 
 
38
 
39
+ # Monta Gradio en /gradio
40
  gradio_app = create_demo()
41
  app = gr.mount_gradio_app(app, gradio_app, path="/gradio")
42