Tseha
Sirve el sistema de diseño y los estándares de codificación de tu equipo a los agentes de codificación, para que dejen de adivinar nombres de componentes, props y tokens.
Documentación
Inicio rápido
Agrega un archivo .mcp.json a la raíz de tu repositorio apuntando al servidor MCP de Tseha:
{
"mcpServers": {
"tseha": {
"url": "https://tseha.io/mcp"
}
}
}
Esa es toda la configuración. La primera vez que tu agente se conecta, abre un inicio de sesión OAuth (a través de Auth0) en tu navegador; aprueba una vez y el agente queda conectado. A partir de ahí, el agente consulta Tseha automáticamente en las tareas que realiza. Puedes encontrar tu fragmento listo para copiar en el panel de control bajo Conexión MCP.
Configuración del cliente
La misma URL del servidor funciona para cualquier cliente MCP. Dónde vive la configuración depende del cliente:
- Claude Code — un archivo
.mcp.jsonen la raíz de tu proyecto (mostrado arriba), o ejecutaclaude mcp add --transport http tseha https://tseha.io/mcp. - Cursor — agrega el mismo bloque
mcpServersa.cursor/mcp.json(por proyecto) o~/.cursor/mcp.json(global). - Otros clientes MCP (GitHub Copilot con soporte MCP y cualquier herramienta que implemente el protocolo) — apunta el cliente a la URL del servidor
https://tseha.io/mcpusando el transporte HTTP.
Autenticación y tokens
- OAuth 2.1 + PKCE. La autenticación ocurre automáticamente en la primera conexión — para agentes interactivos no hay clave API que pegar. Tseha publica documentos de descubrimiento estándar (
/.well-known/oauth-authorization-servery/.well-known/oauth-protected-resource) y admite registro dinámico de clientes, por lo que los clientes compatibles se configuran solos. - Alcance. El token emitido está limitado a tu organización y tu rol. El servidor MCP es de solo lectura para todos los roles — las escrituras ocurren solo en el panel de administración, donde se aplica tu rol (Owner, Admin, Developer pueden escribir; User es solo lectura). La visibilidad de proyectos se aplica además de eso.
- Revocación. La membresía y el rol se verifican nuevamente en cada solicitud, por lo que eliminar un miembro o cambiar un rol tiene efecto inmediato — no se necesita rotación de tokens. Cerrar sesión finaliza la sesión. Las acciones administrativas de tokens se registran en el registro de auditoría.
- Tokens de máquina (Team y superiores). Los trabajos de CI y los ejecutores de automatización no tienen navegador para iniciar sesión. Para ellos, un administrador puede emitir un token API de larga duración y solo lectura en el panel de administración y pasarlo como un encabezado
Authorization: Bearer. Los tokens están limitados a todos los proyectos o a un conjunto elegido, tienen una caducidad opcional, se muestran solo una vez y pueden revocarse en cualquier momento.
Herramientas disponibles
Tseha expone herramientas granulares orientadas a lectura para que tu agente obtenga solo lo que necesita para la tarea actual (carga diferida) en lugar de una instantánea voluminosa:
| Herramienta | Qué devuelve |
|---|---|
| list_projects | Lista los proyectos en esta organización con id, nombre y framework. El id es el project_id que requieren todas las demás herramientas. |
| list_packages | Devuelve todos los paquetes de componentes disponibles en esta organización y marca cuál está activo para el proyecto dado. Llama a esto para saber de qué paquete npm importar cuando un componente necesario no aparece en list_components. |
| list_components | Lista los componentes de UI disponibles del paquete activo. |
| get_component | Devuelve detalles del componente: props, ejemplos de uso, patrones. |
| search_components | Busca componentes semánticamente basándose en una descripción. La clasificación semántica requiere funciones de IA (plan Team y superiores); otros planes recurren a la coincidencia por nombre y ruta de importación, que devuelve una puntuación nula. |
| get_style | Devuelve información de estilo (colección de tokens de diseño). |
| get_style_tokens | Devuelve tokens de diseño por categoría: color, tipografía, espaciado. |
| get_standards | Devuelve estándares de desarrollo. Sin una sección, devuelve un índice de secciones disponibles; con una sección, devuelve el contenido completo de esa sección. |
| get_component_updates | Devuelve cambios de componentes en relación con una versión especificada. Requiere el plan Team o superior. |
Una secuencia típica mientras se escribe código: list_components → search_components → get_component → get_style_tokens. Tu código fuente nunca se envía a Tseha; el servidor solo sirve los estándares que publicas.
La clasificación semántica es una función de Team+. search_components clasifica por significado solo cuando tu plan incluye funciones de IA (Team y superiores) y tu organización tiene las funciones de IA habilitadas en la configuración. De lo contrario, la herramienta aún responde, pero recurre a la coincidencia por nombre de componente y ruta de importación, y cada resultado lleva score: null.
Límites y errores
- Límite de velocidad. 1,000 solicitudes por minuto por token (ventana deslizante), más un presupuesto de volumen de respuesta correspondiente. Exceder cualquiera devuelve HTTP 429 con un encabezado
Retry-After. Los límites personalizados están disponibles en acuerdos Enterprise. - Tamaño de respuesta. Una sola respuesta de herramienta está limitada (~25,000 tokens). Los resultados sobredimensionados se truncan con una sugerencia de usar una herramienta más específica (por ejemplo
get_componenten lugar del payload completo delist_components).
Los errores siguen JSON-RPC 2.0. Los que es más probable que veas:
-32001— no autorizado (sesión faltante/inválida o proyecto inaccesible).-31002— límite de velocidad excedido (devuelto con HTTP 429).-32602— parámetros inválidos (por ejemplo, unproject_idfaltante o malformado).
Un proyecto sin paquete de componentes asignado, o componentes que aún no están indexados, no es un error JSON-RPC: la herramienta devuelve un resultado normal que lleva un campo note o error (por ejemplo "No packages configured") para que tu agente pueda reaccionar sin fallar la llamada.
Solución de problemas
- El agente nunca solicita iniciar sesión. Confirma que la URL del servidor sea exactamente
https://tseha.io/mcpy que tu cliente admita el transporte HTTP de MCP; reinicia el cliente después de editar la configuración. - 401 / no autorizado. Tu sesión expiró o tu membresía/rol cambió — inicia sesión nuevamente. Si fuiste eliminado de la organización, el acceso se detiene inmediatamente por diseño.
- 429 / límite de velocidad. Retrocede y respeta el encabezado
Retry-After. - Resultados de componentes vacíos. La herramienta devolvió un
notecomo"No packages configured": el proyecto no tiene paquete asignado, o sus componentes aún no han sido indexados — un Admin puede asignar un paquete y activar la indexación desde el panel de administración. - ¿Aún atascado? Envía un correo a [email protected].