Empezar

Carbon: el sistema de diseño de código abierto que lanzó un servidor MCP

La mayoría de los artículos sobre Carbon describen una librería de componentes de 2017. Lo interesante de Carbon ahora es su estructura: separa el lenguaje de marca de la implementación y de la capa de dominio, soporta seis implementaciones de frameworks con diferentes niveles de soporte y lanza un servidor de Model Context Protocol para que un agente de código pueda consultar el sistema directamente en lugar de intentar adivinarlo.

Actualizado 2026-07-27

Qué es realmente Carbon

IBM describe Carbon como su sistema de diseño de código abierto para productos y experiencias digitales, con el IBM Design Language como base, compuesto por código funcional, herramientas y recursos de diseño, guías de interfaz humana y una comunidad de colaboradores. Está financiado y construido por IBM para las necesidades comerciales de IBM, y se publica abiertamente para que cualquiera pueda usarlo y contribuir.

Vale la pena detenerse en ese modelo de financiación, porque determina qué es lo que se está adoptando. Carbon no es un proyecto comunitario que casualmente tiene usuarios corporativos; es un sistema corporativo que casualmente es abierto. Las decisiones de la hoja de ruta sirven a los productos de IBM. En la práctica, esto es mayormente positivo (significa que el sistema se mantiene genuinamente en lugar de quedar abandonado cuando un mantenedor cambia de trabajo), pero también significa que es poco probable que llegue una funcionalidad que su producto necesite y los de IBM no.

El nombre es una metáfora que el equipo declara directamente: el carbono en la naturaleza construye estructuras complejas a partir de compuestos más simples, reflejando cómo se combinan los estilos y componentes individuales. Es útil saberlo porque explica la tendencia del sistema hacia la composición frente a la prescripción.

Las tres capas

La decisión estructural que hace que Carbon merezca ser estudiado es que no es un solo sistema. IBM publica un stack, y la separación entre los niveles es explícita en la propia navegación del sitio.

Qué contieneQuién lo modifica
IBM Design LanguageBase de marca: el lenguaje visual y expresivo en todo IBMLa marca IBM, raramente, y nunca por la conveniencia de un producto
Carbon Design SystemTokens, componentes, patrones, guías de interfaz humana, códigoEl equipo de Carbon más colaboradores de código abierto
Sistemas de dominioCarbon for IBM Products, Carbon for Cloud, Carbon for IBM.com: componentes específicos de un contextoEl equipo de ese dominio, sin tocar el núcleo
Las capas de Carbon y de qué es responsable cada una.

Esta es la misma estructura a la que Spotify llegó con Encore, alcanzada desde una dirección diferente, y resuelve el mismo problema: ¿dónde va un componente cuando solo un producto lo necesita? Sin una capa de dominio, la respuesta es o bien "al núcleo, haciéndolo más pesado para todos" o "fuera del sistema, donde se desvirtúa". Con ella, el trabajo especializado tiene un hogar que no puede filtrarse.

Si está construyendo un sistema para más de un producto, esto es lo más transferible de Carbon. No necesita tres sitios publicados. Necesita una regla sobre a cuál de sus tres niveles pertenece una decisión determinada, y la disciplina de no permitir que una necesidad específica de un producto sea promovida a la base solo porque resultaba más fácil.

El soporte de frameworks no es uniforme, y la documentación lo indica

Carbon soporta múltiples implementaciones de código y la documentación enumera cada una con su mantenedor. Esa lista es lo más importante desde el punto de vista práctico en el sitio si está evaluando su adopción:

MantenedorQué significa esto para usted
ElementsEquipo de CarbonFirst-party. Tokens, tipografía, color, iconos, grid
ReactEquipo de CarbonFirst-party y la más completa. La opción predeterminada
Web ComponentsEquipo de CarbonFirst-party. Independiente del framework, viable si no utiliza React
AngularComunidadEvalúe la cadencia de lanzamientos y la respuesta a los problemas antes de comprometerse
VueComunidadMisma advertencia
SvelteComunidadMisma advertencia
Implementaciones de Carbon y quién las mantiene.

"Mantenido por la comunidad" no es una crítica, sino un riesgo que usted asume en lugar de IBM. Antes de adoptar una implementación comunitaria, compruebe la fecha del último lanzamiento, cuánto se ha quedado atrás respecto al núcleo y con qué rapidez se responden los problemas. Un sistema de diseño que tiene un retraso de dos versiones mayores respecto al núcleo representa una migración que no ha presupuestado.

Esta honestidad es digna de mención como una práctica de documentación por derecho propio. Muchos sistemas de diseño enumeran paquetes de frameworks sin decir quién es responsable de ellos, lo que deja que los adoptantes descubran la diferencia durante un incidente.

Carbon MCP: la parte de la que nadie ha escrito

Carbon MCP está disponible como vista previa pública. Es un servidor de Model Context Protocol que otorga a los agentes de IA y a las aplicaciones de IA acceso directo a la base de conocimientos de Carbon: elementos principales, iconografía, pictogramas, directrices, documentación de uso y librerías de componentes para React y Web Components, además de la librería Carbon for IBM Products.

Las herramientas documentadas son específicas, y leerlas indica exactamente qué problema cree IBM que está resolviendo:

Qué busca
docs_searchDocumentación de Carbon e IBM Products: guía de componentes, uso, accesibilidad, referencia
code_searchEjemplos de código de Carbon React y Web Components, iconos y pictogramas, como archivos de aplicaciones de ejemplo completos
get_chartsEjemplos de Carbon Charts para React, Angular, Vue, Svelte, JS vanilla y HTML
labs_searchComponentes experimentales de Carbon Labs: AnimatedHeader, Processing, Resizer, WhatsNew, Labs UIShell
Las herramientas que Carbon MCP expone a un agente.

Las razones declaradas por IBM son el acceso instantáneo de la IA a los estándares de Carbon, una generación de código de mayor fidelidad a partir de ejemplos reales y una consistencia mejorada gracias a una fuente de verdad compartida que reduce la divergencia y el retrabajo. El acceso durante la vista previa es inmediato para los empleados de IBM; los demás pueden solicitarlo a través de un formulario de acceso anticipado.

La importancia no radica en que IBM haya creado una integración. Radica en lo que la existencia del servidor admite: los datos de entrenamiento de un modelo no son una fuente fiable para la API actual de un sistema de diseño, y pedirle que escriba código de Carbon de memoria produce componentes que parecen plausibles pero son incorrectos. El servidor existe porque la recuperación de información (retrieval) es superior al recuerdo (recall).

El servidor existe porque la memoria de un modelo sobre la API de sus componentes está confidently desactualizada, y el nombre de una prop incorrecta se ve exactamente igual que uno correcto.

Carbon no es el único en esto

Al analizar los tres grandes sistemas de diseño empresariales publicados abiertamente, el mismo movimiento aparece tres veces en dieciocho meses, ejecutado de formas distintas:

El movimientoLa apuesta
IBM CarbonUn servidor MCP que expone documentación y ejemplos de códigoLos agentes deben recuperar el sistema en el momento de la generación
Salesforce Lightning (SLDS 2)Una arquitectura CSS desacoplada del estilo visual, más un linter que valida el marcado según las reglasEl sistema debe permitir suficientes temas para la UI generada, y las infracciones deben detectarse mecánicamente
Shopify PolarisReact deprecado en favor de web components agnósticos al framework servidos desde un CDNEl formato de entrega no debe asumir qué framework generó la página
Cómo tres sistemas de diseño principales se abrieron al código generado por IA.

Tres apuestas diferentes, una premisa compartida: el consumidor de un sistema de diseño ya no es solo un desarrollador humano leyendo documentación. Esa premisa ya no es controvertida, pero el hecho de que los tres hayan actuado en consecuencia en un año y medio es algo que la literatura sobre sistemas de diseño aún no ha procesado.

MCP y DESIGN.md resuelven mitades diferentes

Es tentador interpretar Carbon MCP como algo que hace obsoleta la guía de diseño basada en archivos. No es así, porque ambos responden a preguntas diferentes.

Un servidor MCPUn DESIGN.md en el repositorio
Respuestas¿Cómo utilizo este componente correctamente?¿Qué aspecto debe tener este producto?
Fuente de verdadLos mantenedores de la libreríaUsted
CargaBajo demanda, cuando el agente lo solicitaEn cada sesión, como contexto
CubreSuperficie de la API, props, accesibilidad, ejemplosRoles, escala, prohibiciones, motivos, qué no hacer
Sin elloEl agente inventa props que no existenEl agente inventa un diseño que no es el suyo
Dos superficies orientadas al agente, dos funciones.

Un agente con Carbon MCP y sin guía de diseño produce componentes de Carbon técnicamente correctos organizados en una interfaz sin criterio visual. Un agente con una guía de diseño sólida y sin MCP produce un diseño bien juzgado llamando a props que fueron renombradas en la v11. Se necesitan ambos, y no se solapan.

Analizamos 299 archivos DESIGN.md publicados para que los lean los agentes, y las cifras muestran qué mitad se está descuidando actualmente: el 86% especifica los colores como hex puros sin rol semántico, el 76% no establece ninguna prohibición, el 57% no define motivos distintivos y el 69% no menciona nada sobre el modo oscuro. Todo esto pertenece a la segunda columna: las preguntas que un servidor MCP nunca iba a responder.

Los kits de diseño de Identity Forge completan esa columna: roles de color semánticos para modo claro y oscuro, una escala de tipografía y espaciado, motivos y una lista explícita de lo que se debe y no se debe hacer, serializados en un DESIGN.md que reside junto a cualquier librería de componentes que utilice. Explore los kits o lea qué es un archivo DESIGN.md.

¿Debería adoptar Carbon?

Carbon es un sistema genuinamente bueno y, sin embargo, adoptarlo suele ser la decisión equivocada. El factor decisivo es si desea que se le proporcione un criterio de diseño predefinido.

Adoptar CarbonNo adoptar
Tipo de productoHerramientas internas, administración empresarial, aplicaciones con alta densidad de datosCualquier producto donde la diferenciación visual sea parte del valor
Lo que se obtieneTrabajo de accesibilidad ya realizado, un conjunto amplio de componentes, mantenimiento realUna interfaz que se percibe como la de IBM, porque lo es
Perfil del equipoSin recursos de diseño dedicados, ingenieros que toman las decisiones de UIUn diseñador con una visión propia que pasará seis meses sobrescribiéndolo
La señal clave"Necesitamos que esto sea usable y consistente, y rápido""Necesitamos que esto se parezca a nosotros"
Cuándo encaja Carbon y cuándo no.

El argumento de la accesibilidad merece su propio peso. En los componentes de Carbon se ha invertido un trabajo real de accesibilidad durante años, respaldado por la práctica de accesibilidad de IBM. Reproducir eso en su propia librería de componentes es un compromiso de varios años que la mayoría de los equipos inician y abandonan. Si su producto es una herramienta interna, adoptar Carbon es prácticamente una victoria gratuita.

El contraargumento es que un sistema de diseño conlleva una identidad, y la de Carbon es la de IBM. Que sea tematizable no significa que sea neutro: la densidad, el lenguaje de formas, el tratamiento tipográfico y los modismos de interacción codifican decisiones tomadas para los productos de IBM. Si su producto compite en parte por cómo se siente, gastará más energía luchando contra esos elementos de la que habría gastado definiendo su propio sistema.

Qué aprovechar aunque nunca lo instale

  1. Separe el lenguaje de marca de la implementación. El IBM Design Language y Carbon son documentos diferentes, con distintos responsables y ritmos de cambio. Fusionarlos implica que cada ajuste de un componente se convierta en una conversación sobre la marca.
  2. Asigne una capa de dominio al trabajo específico de un dominio. Un componente que solo necesita un producto pertenece a una capa superior al núcleo, no dentro de él ni fuera del sistema.
  3. Publique quién mantiene cada implementación. Quienes lo adopten están tomando una decisión de riesgo. Permítales hacerlo basándose en los hechos.
  4. Exponga el sistema a los agentes deliberadamente. Ya sea mediante MCP, una exportación de design tokens legible por máquina o un archivo bien estructurado en el repositorio, el agente escribirá basándose en su sistema de cualquier manera. La única pregunta es si lo hará a partir de su documentación o de sus datos de entrenamiento.
¿Es gratuito el uso del Carbon Design System?

Sí. Carbon es de código abierto, financiado y construido por IBM, pero liberado para que cualquiera lo use y contribuya. Consulte la licencia en el repositorio para conocer los términos actuales antes de lanzarlo comercialmente, ya que la licencia es un hecho por paquete y no para todo el proyecto.

¿Qué implementación de framework de Carbon debería usar?

React si puede. Es la más completa y está mantenida por el equipo de Carbon. Web Components si no usa React y desea mantenimiento de primera mano. Angular, Vue y Svelte están mantenidos por la comunidad, lo cual es viable, pero implica verificar la cadencia de lanzamientos y la respuesta a los problemas antes de comprometer un producto con ellos.

¿Qué es Carbon MCP y lo necesito?

Es un servidor de Model Context Protocol, actualmente en vista previa pública, que permite a los agentes de IA consultar directamente la documentación de Carbon, ejemplos de código de componentes, gráficos y componentes experimentales de Labs. Lo necesita si los agentes escriben código de Carbon en su repositorio; sin él, generan código a partir de datos de entrenamiento, que suelen estar desactualizados en cuanto a nombres de props e importaciones.

¿Puedo hacer que Carbon no parezca IBM?

En parte. Los design tokens le permiten cambiar el color, la tipografía y algunas propiedades de forma. Lo que no puede cambiar fácilmente es la densidad, los modismos de interacción y la composición de los componentes, que es donde reside gran parte de la identidad percibida. Si el requisito de que "debe parecerse a nosotros" es real, presupueste ese esfuerzo antes de adoptarlo.

¿Cómo se compara Carbon con Polaris y Lightning?

Los tres son sistemas empresariales grandes y publicados abiertamente, creados para un producto matriz específico. Carbon es el más plural en cuanto a frameworks y el único que ofrece un servidor MCP. Polaris ha dejado de dar soporte a su librería de React en favor de web components agnósticos al framework. SLDS 2 reconstruyó su arquitectura CSS en torno a propiedades personalizadas para desacoplar la estructura del estilo visual. Sus criterios de diseño difieren más que sus capacidades.