Ir al contenido

Progreso

GitLab MCP Server envía notificaciones de progreso en tiempo real durante operaciones de larga duración, permitiendo a los clientes MCP mostrar indicadores de progreso al usuario.

Cuando una herramienta realiza múltiples pasos o procesa grandes conjuntos de datos, el servidor envía mensajes notifications/progress al cliente:

sequenceDiagram
    participant U as Usuario
    participant AI as Asistente IA
    participant S as Servidor MCP
    participant GL as API de GitLab

    U->>AI: "Listar todos los issues del proyecto"
    AI->>S: gitlab_issue list
    S-->>AI: Progreso: "Obteniendo página 1..." (25%)
    S->>GL: GET /projects/42/issues?page=1
    S-->>AI: Progreso: "Obteniendo página 2..." (50%)
    S->>GL: GET /projects/42/issues?page=2
    S-->>AI: Progreso: "Obteniendo página 3..." (75%)
    S->>GL: GET /projects/42/issues?page=3
    S-->>AI: Progreso: "Completado" (100%)
    S-->>AI: Resultado de la herramienta con todos los issues

El reporte de progreso se utiliza para operaciones que pueden tardar varios segundos:

OperaciónDetalle del Progreso
Recuperación de listas paginadasProgreso de obtención página por página
Operaciones masivasProgreso por elemento (por ejemplo, actualización masiva de issues)
Análisis por samplingFases de recopilación de datos → análisis LLM
Importación CSVProgreso de importación fila por fila
Actualización automáticaPasos de descarga y aplicación

La forma en que se muestra el progreso depende del cliente MCP:

  • VS Code / Copilot — Indicador de progreso en la barra de estado o panel de salida
  • Claude Desktop — Texto de progreso mostrado durante la ejecución de la herramienta
  • Claude Code — Actualizaciones de progreso en tiempo real en la terminal

Las notificaciones de progreso siguen el formato del protocolo MCP:

{
"jsonrpc": "2.0",
"method": "notifications/progress",
"params": {
"progressToken": "tool-call-123",
"progress": 50,
"total": 100,
"message": "Fetching page 2 of 4..."
}
}
CampoDescripción
progressTokenID de correlación que vincula el progreso con la llamada original a la herramienta
progressNúmero de paso actual
totalNúmero total de pasos (cuando se conoce)
messageDescripción legible del paso actual