malek-messaoudii commited on
Commit
3c58a94
·
1 Parent(s): c2e9c8f

correct main

Browse files
Files changed (3) hide show
  1. main.py +2 -2
  2. routes/mcp_routes.py +4 -8
  3. services/mcp_service.py +1 -1
main.py CHANGED
@@ -61,7 +61,7 @@ stance_model_manager = None
61
  kpa_model_manager = None
62
  try:
63
  from services.stance_model_manager import stance_model_manager
64
- from services.label_model_manager import kpa_model_manager # Corrigé: import depuis kpa_model_manager.py
65
  logger.info("✓ Gestionnaires de modèles importés")
66
  except ImportError as e:
67
  logger.warning(f"⚠ Impossible d'importer les gestionnaires de modèles: {e}")
@@ -209,7 +209,7 @@ except Exception as e:
209
 
210
  # MCP Routes
211
  if MCP_ENABLED and mcp_router:
212
- app.include_router(mcp_router, prefix="/api/v1/mcp", tags=["MCP"])
213
  logger.info("✓ Routes MCP chargées")
214
  else:
215
  logger.warning("⚠ Routes MCP non chargées (MCP désactivé ou router manquant)")
 
61
  kpa_model_manager = None
62
  try:
63
  from services.stance_model_manager import stance_model_manager
64
+ from services.label_model_manager import kpa_model_manager # Corrigé: import depuis kpa_model_manager.py (cohérent partout)
65
  logger.info("✓ Gestionnaires de modèles importés")
66
  except ImportError as e:
67
  logger.warning(f"⚠ Impossible d'importer les gestionnaires de modèles: {e}")
 
209
 
210
  # MCP Routes
211
  if MCP_ENABLED and mcp_router:
212
+ app.include_router(mcp_router, prefix="/api/v1", tags=["MCP"]) # Corrigé: prefix="/api/v1" pour matcher le mount (évite double /mcp/mcp)
213
  logger.info("✓ Routes MCP chargées")
214
  else:
215
  logger.warning("⚠ Routes MCP non chargées (MCP désactivé ou router manquant)")
routes/mcp_routes.py CHANGED
@@ -1,19 +1,15 @@
1
  """Routes pour exposer MCP via FastAPI"""
2
 
3
  from fastapi import APIRouter
4
- from starlette.routing import Mount
5
  from services.mcp_service import mcp_server # Importe l'instance
6
 
7
  router = APIRouter(prefix="/mcp", tags=["MCP"])
8
 
9
- # Monter l'app FastMCP entière comme sub-app (gère /tools, /call, etc. automatiquement)
10
- from starlette.applications import Starlette
11
- mcp_starlette = Starlette(routes=[Mount("/", app=mcp_server.streamable_http_app())])
12
-
13
- # Inclure le Starlette comme route FastAPI (via sub-app mounting)
14
  @router.get("/health")
15
  async def mcp_health():
 
16
  return {"status": "MCP ready", "tools": [t.name for t in mcp_server.tools]}
17
 
18
- # Le mounting principal se fait dans main.py via app.include_router
19
- # Mais pour compat, on peut exposer directement
 
1
  """Routes pour exposer MCP via FastAPI"""
2
 
3
  from fastapi import APIRouter
 
4
  from services.mcp_service import mcp_server # Importe l'instance
5
 
6
  router = APIRouter(prefix="/mcp", tags=["MCP"])
7
 
8
+ # Endpoint simple pour health MCP (fallback si mounting direct ne suffit pas)
 
 
 
 
9
  @router.get("/health")
10
  async def mcp_health():
11
+ """Health check pour MCP"""
12
  return {"status": "MCP ready", "tools": [t.name for t in mcp_server.tools]}
13
 
14
+ # Note : Le mounting principal des routes MCP (/tools, /call, /resources) se fait via app.mount dans init_mcp_server
15
+ # Pas besoin de Starlette ici pour éviter les conflits de path/double mounting
services/mcp_service.py CHANGED
@@ -7,7 +7,7 @@ import logging
7
  from fastapi import FastAPI # Ajouté pour résoudre l'erreur Pylance "FastAPI is not defined"
8
 
9
  from services.stance_model_manager import stance_model_manager
10
- from services.label_model_manager import kpa_model_manager # Corrigé : import depuis kpa_model_manager (cohérent avec main.py)
11
  from services.stt_service import speech_to_text
12
  from services.tts_service import text_to_speech
13
  from services.chat_service import generate_chat_response
 
7
  from fastapi import FastAPI # Ajouté pour résoudre l'erreur Pylance "FastAPI is not defined"
8
 
9
  from services.stance_model_manager import stance_model_manager
10
+ from services.label_model_manager import kpa_model_manager # Corrigé : import depuis kpa_model_manager.py (cohérent avec main.py)
11
  from services.stt_service import speech_to_text
12
  from services.tts_service import text_to_speech
13
  from services.chat_service import generate_chat_response