GitLab MCP Server asigna 50 iconos SVG de dominio a las 1065 herramientas Enterprise/Premium autoalojadas (1071 en GitLab.com Enterprise/Premium con Orbit), 32 meta-herramientas base (49 enterprise autoalojadas, 50 GitLab.com Enterprise), 45 recursos y 37 prompts. Los iconos se almacenan como SVG codificados en base64 (data:image/svg+xml;base64,...) con Sizes: ["any"] para escalabilidad, y ayudan a los clientes MCP a mostrar elementos de interfaz reconocibles para cada dominio de GitLab. Son metadatos de presentación opcionales, no una capacidad de protocolo MCP negociada: un cliente que no puede renderizar iconos simplemente los ignora, y el comportamiento de las herramientas no cambia.
El renderizado de iconos depende del cliente MCP. El servidor adjunta los mismos metadatos de iconos en todos los casos; que aparezcan depende del cliente. Los iconos son opcionales, así que los clientes que no los renderizan no pierden nada funcional.
Codificación: data:image/svg+xml;base64,... (data URIs SVG codificados en base64). Las previsualizaciones de esta página usan SVG con codificación URL (data:image/svg+xml,%3Csvg ...) solo para renderizado en línea en el navegador — los iconos registrados en internal/toolutil/icons.go están en base64.
Viewport: Todos los iconos usan 16×16 con currentColor para adaptación al tema
Registro: Los iconos se asignan mediante specs de acciones y grupos del catálogo, y luego se proyectan en las superficies meta, individual y dinámica
Preguntas frecuentes
¿Qué son los iconos en GitLab MCP Server?
GitLab MCP Server asigna 50 iconos SVG de dominio a cada herramienta, recurso y prompt que expone, más una marca —la 51.ª— en la identidad del propio servidor, para que los clientes MCP puedan mostrar elementos de interfaz reconocibles para cada dominio de GitLab. Las herramientas relacionadas comparten un mismo icono para agrupación visual — por ejemplo, branches, repository y submodules usan todos IconBranch. Los iconos se almacenan como data URIs SVG codificados en base64 con Sizes: ["any"] para escalabilidad, dibujados en un viewport de 16×16 y rellenados con currentColor para que se adapten automáticamente a los temas claro y oscuro. Son metadatos de presentación opcionales, no una capacidad de protocolo MCP negociada.
¿Cómo se diseñan y codifican los iconos de GitLab MCP Server?
Cada icono usa un viewport mínimo de 16×16 optimizado para listas de herramientas y barras laterales, con un relleno currentColor para que se adapte a los temas claro y oscuro. Los iconos se incrustan en línea como data URIs SVG codificados en base64 (data:image/svg+xml;base64,...) directamente en el binario, sin necesidad de peticiones de red, y se comparte un icono por dominio para que las herramientas relacionadas se agrupen visualmente. Se registran mediante specs de acciones y grupos del catálogo, y luego se proyectan en las superficies meta, individual y dinámica. El código fuente está en `internal/toolutil/icons.go`.
¿Qué clientes MCP renderizan los iconos de herramientas?
El renderizado de iconos varía según el cliente. VS Code con GitHub Copilot renderiza por completo los iconos SVG de herramientas, y Continue.dev ofrece soporte parcial según la versión. Claude Desktop no renderiza iconos de herramientas, y Claude Code es una interfaz solo de texto que no los muestra. Como los iconos son metadatos opcionales, los clientes que no admiten su renderizado simplemente los ignoran y la funcionalidad de las herramientas no se ve afectada.
¿Afectan los iconos a la funcionalidad de las herramientas?
No. Los iconos son metadatos de presentación opcionales adjuntos a herramientas, recursos y prompts. Los clientes que no pueden renderizar iconos los ignoran, y cada herramienta se comporta de forma idéntica se muestre o no su icono. Los iconos existen únicamente para ayudar a los usuarios a reconocer visualmente los dominios de GitLab en clientes que admiten el renderizado SVG; nunca cambian los parámetros, el comportamiento ni los resultados de una herramienta.