Ir al contenido

Capacidades MCP

GitLab MCP Server implementa 7 capacidades del protocolo MCP que mejoran la forma en que los asistentes de IA interactúan con GitLab. Estas capacidades van más allá de las llamadas básicas a herramientas para proporcionar interacciones más ricas e inteligentes.

CapacidadDirecciónQué Habilita
LoggingServidor → ClienteMensajes de log estructurados enviados al cliente MCP para visibilidad
ProgressServidor → ClienteActualizaciones de progreso en tiempo real para operaciones de larga duración
RootsCliente → ServidorContexto del workspace — auto-detectar proyecto de GitLab desde el repositorio git local
SamplingServidor → ClienteAnálisis impulsado por IA — el servidor envía datos de GitLab al LLM del cliente para análisis
ElicitationServidor → ClienteAsistentes interactivos — formularios paso a paso para crear recursos complejos
CompletionsCliente → ServidorAutocompletado de argumentos para nombres de proyectos, ramas, usuarios y más
IconsServidor → ClienteIconos SVG para cada herramienta, recurso y prompt

Las capacidades se negocian durante el handshake de inicialización MCP entre el cliente y el servidor:

sequenceDiagram
    participant C as Cliente MCP
    participant S as GitLab MCP Server

    C->>S: initialize (capacidades del cliente)
    S-->>C: respuesta de initialize (capacidades del servidor)
    Note over C,S: Ambas partes saben lo que<br/>la otra soporta

    C->>S: Llamada a herramienta
    S-->>C: Notificación de progreso
    S-->>C: Mensaje de log
    S-->>C: Resultado de herramienta

Capacidades declaradas por el servidor (Logging, Completions) están siempre disponibles. Capacidades dependientes del cliente (Roots, Sampling, Elicitation) requieren que el cliente MCP declare soporte — el servidor verifica su presencia antes de usarlas y degrada gracefully cuando no están disponibles.

No todos los clientes MCP soportan todas las capacidades. El servidor se adapta automáticamente:

CapacidadClaude DesktopVS Code CopilotCursorClaude Code
Logging
Progress
Completions
Roots
Sampling
Elicitation
Icons