Ir al contenido

Iconos

Los clientes MCP pueden mostrar un icono junto a un servidor y junto a cada herramienta, prompt y recurso que listan. arcane-mcp envía su marca, la “caja” de la guía de marca, sobre su placa oscura, que se lee igual en temas claros y oscuros, así que no hay variantes por tema.

Un PNG de 32 × 32 va con:

  • el propio servidor (serverInfo al inicializar);
  • cada herramienta, en las tres superficies de herramientas;
  • cada prompt;
  • cada recurso y plantilla de recurso, incluido el catálogo de acciones (arcane://tools).

Cada copia ocupa 820 bytes en la respuesta.

Todas las herramientas llevan el mismo icono: una marca para todo el servidor, no una por dominio. A los 16 a 22 píxeles a los que un cliente dibuja el icono de una herramienta, un glifo distinto para cada uno de los 52 dominios no se reconocería, y el nombre de la herramienta ya dice el dominio.

El icono va como URI data: incrustada (base64). Un servidor arrancado por stdio no tiene una dirección web desde la que un cliente pueda cargar una imagen, y los clientes pueden rechazar imágenes de cualquier otra dirección (la especificación MCP lo permite y VS Code lo hace), así que no se descarga nada por la red.

  • PNG porque la especificación MCP obliga a todo cliente que muestre iconos a leer PNG y JPEG, mientras que SVG es opcional. VS Code, por ejemplo, muestra iconos PNG, JPEG, GIF y WebP y descarta los SVG.
  • 32 × 32 porque VS Code pide un icono de 22 píxeles y toma el más pequeño que llegue a ese tamaño, y 32 píxeles cubren también un hueco de 16 píxeles en una pantalla de doble densidad.
  • Un solo icono porque cada uno se repite con cada herramienta listada, y desde la versión de protocolo 2026-07-28 cada respuesta repite la identidad del servidor, iconos incluidos, en su _meta.

Mostrar iconos depende de cada cliente, y un cliente que los ignora funciona exactamente igual. VS Code muestra los iconos del servidor, de las herramientas y de los recursos. Los clientes que no muestran iconos se saltan el campo.

Los iconos son para mostrarse: los clientes no suelen pasárselos al modelo, así que no deberían costar tokens. Lo que añaden son bytes en las respuestas de los listados (el resultado completo de tools/list, con la versión de protocolo 2026-07-28):

SuperficieHerramientastools/list sin iconosCon iconos
dynamic23,3 KB5,8 KB
meta5279 KB122 KB
individual461610 KB988 KB

Con la versión de protocolo 2026-07-28, el icono del servidor añade además unos 820 bytes a cada una de las demás respuestas, también a las llamadas a herramientas.

ARCANE_MCP_ICONS=off quita todos los iconos: el del servidor y los de cada herramienta, prompt y recurso (consulta Configuración). Úsalo si un cliente rechaza un servidor que envía iconos como URI data:, o para ahorrar los bytes de arriba. Como los demás interruptores, un valor que no sea on u off detiene el servidor al arrancar.

El icono se genera con el resto de la marca mediante cmd/gen_brand (make gen-brand) y se incrusta en el binario desde internal/brand/icons/. El generador lo dibuja a partir de la misma geometría que el favicon, así que make check-brand lo verifica junto con los SVG. Solo cambia si cambia la marca.