Semiotic
Verified React chart generation: select, validate, repair, render, and inspect charts through MCP.
¿Debería usar esto?
Calidad y seguridad
Hallazgos (1)
- LOWen getChartSchema
Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.
Costo de contexto
Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.
Instalar
Instalación con un clic
Agrega esto a tu archivo `claude_desktop_config.json`:
{
"mcpServers": {
"semiotic": {
"command": "npx",
"args": [
"semiotic"
]
}
}
}Paquetes ejecutables
3.10.4stdioPuntos de conexión remotos
https://semiotic-mcp-server-481507046413.us-west1.run.app/mcpstreamable-httpQué puede hacer
Inventario de herramientas
Herramientas (5)
🟢createChart(data, intent, audience, identifiers, fieldRoles, ...)
Select, validate, diagnose, render, and prove a static-data Semiotic chart. This is the default public workflow.
Esquema de entrada
{
"type": "object",
"properties": {
"data": {
"minItems": 1,
"type": "array",
"items": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
}
},
"intent": {
"anyOf": [
{
"type": "string"
},
{
"type": "array",
"items": {
"type": "string"
}
}
]
},
"audience": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"receptionModality": {
"type": "string",
"enum": [
"visual",
"screen-reader",
"sonified",
"agent"
]
}
},
"additionalProperties": {}
},
"identifiers": {
"description": "Fields that identify records and must not be used as visual encodings or measures.",
"type": "array",
"items": {
"type": "string"
}
},
"fieldRoles": {
"description": "Per-field semantic or exact encoding-role hints used before chart ranking.",
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {
"anyOf": [
{
"type": "string",
"enum": [
"identifier",
"measure",
"dimension",
"temporal",
"x",
"y",
"size",
"category",
"series",
"time",
"ignore"
]
},
{
"type": "array",
"items": {
"type": "string",
"enum": [
"identifier",
"measure",
"dimension",
"temporal",
"x",
"y",
"size",
"category",
"series",
"time",
"ignore"
]
}
}
]
}
},
"component": {
"description": "Optional chart preference; the fit-ranked result remains authoritative.",
"type": "string"
},
"props": {
"description": "Optional props to merge over the selected chart recipe.",
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"theme": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {
"type": "string"
}
}
},
"required": [
"data"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}Esquema de salida
{
"type": "object",
"properties": {
"status": {
"type": "string",
"enum": [
"render-proven",
"blocked",
"no-suggestion"
]
},
"component": {
"type": "string"
},
"evidenceEnvelope": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"evidenceGate": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"surfaceVersion": {
"type": "string"
}
},
"required": [
"status",
"surfaceVersion"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟢improveChart(component, props, data, intent, identifiers, ...)
Diagnose a chart configuration, assess data fit, and propose repairs or variants.
Esquema de entrada
{
"type": "object",
"properties": {
"component": {
"type": "string"
},
"props": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"data": {
"type": "array",
"items": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
}
},
"intent": {
"anyOf": [
{
"type": "string"
},
{
"type": "array",
"items": {
"type": "string"
}
}
]
},
"identifiers": {
"description": "Fields that identify records and must not be used as visual encodings or measures.",
"type": "array",
"items": {
"type": "string"
}
},
"fieldRoles": {
"description": "Per-field semantic or exact encoding-role hints used before chart ranking.",
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {
"anyOf": [
{
"type": "string",
"enum": [
"identifier",
"measure",
"dimension",
"temporal",
"x",
"y",
"size",
"category",
"series",
"time",
"ignore"
]
},
{
"type": "array",
"items": {
"type": "string",
"enum": [
"identifier",
"measure",
"dimension",
"temporal",
"x",
"y",
"size",
"category",
"series",
"time",
"ignore"
]
}
}
]
}
}
},
"required": [
"component",
"props"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}Esquema de salida
{
"type": "object",
"properties": {
"status": {
"type": "string",
"enum": [
"reviewed",
"repair-needed"
]
},
"component": {
"type": "string"
},
"diagnostics": {
"type": "array",
"items": {}
},
"repair": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"variants": {
"type": "array",
"items": {}
},
"accessibilityRecommendation": {
"type": "object",
"properties": {
"location": {
"type": "string",
"const": "direct-component-props"
},
"props": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {
"type": "string"
}
},
"chartContainer": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
}
},
"required": [
"location",
"props",
"chartContainer"
],
"additionalProperties": false
},
"evidenceFragment": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"surfaceVersion": {
"type": "string"
}
},
"required": [
"status",
"component",
"diagnostics",
"repair",
"variants",
"surfaceVersion"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟢explainChart(component, props)
Return reader grounding: chart description, communicative intent, and navigable data structure.
Esquema de entrada
{
"type": "object",
"properties": {
"component": {
"type": "string"
},
"props": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
}
},
"required": [
"component",
"props"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}Esquema de salida
{
"type": "object",
"properties": {
"status": {
"type": "string",
"const": "grounded"
},
"grounding": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"evidenceFragment": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"surfaceVersion": {
"type": "string"
}
},
"required": [
"status",
"grounding",
"surfaceVersion"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟢auditChart(component, props, viewportWidth)
Run design diagnostics plus accessibility and mobile audits, returning prioritized structured findings.
Esquema de entrada
{
"type": "object",
"properties": {
"component": {
"type": "string"
},
"props": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"viewportWidth": {
"type": "integer",
"minimum": 240,
"maximum": 1600
}
},
"required": [
"component",
"props"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}Esquema de salida
{
"type": "object",
"properties": {
"status": {
"type": "string",
"enum": [
"passed",
"findings"
]
},
"component": {
"type": "string"
},
"evidenceEnvelope": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"evidenceGate": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"surfaceVersion": {
"type": "string"
}
},
"required": [
"status",
"component",
"surfaceVersion"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟢getChartSchema(component)
Return canonical Semiotic prop-schema guidance for code editing and advanced configuration.
Esquema de entrada
{
"type": "object",
"properties": {
"component": {
"type": "string"
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}Esquema de salida
{
"type": "object",
"properties": {
"status": {
"type": "string",
"enum": [
"component-list",
"component-schema",
"unknown-component"
]
},
"component": {
"type": "string"
},
"renderable": {
"type": "boolean"
},
"availableComponents": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"renderable": {
"type": "boolean"
}
},
"required": [
"name",
"renderable"
],
"additionalProperties": false
}
},
"schema": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"accessibility": {
"type": "object",
"properties": {
"directProps": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"chartContainer": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
}
},
"required": [
"directProps",
"chartContainer"
],
"additionalProperties": false
},
"behaviorContracts": {
"type": "array",
"items": {}
},
"surfaceVersion": {
"type": "string"
}
},
"required": [
"status",
"surfaceVersion"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}Comunidad
Evidencia