HaveTML
Publica HTML generado por IA como páginas alojadas y compartibles. Conecta Claude, ChatGPT o Cursor para subir artefactos, organizar carpetas y proyectos, y recopilar comentarios en enlaces compartidos.
Servidor MCP alojado
npx add-mcp 'https://havetml.com/mcp/mcpservers'Se instala en Claude Code, Codex, Cursor y más
Documentación
Publica artefactos HTML, Markdown, YAML y JSON como enlaces de compartición permanentes y comentables. Conecta HaveTML a través de MCP y tu asistente podrá publicar lo que haya creado, entregarte el enlace de compartición y leer los comentarios que lleguen.
El servidor MCP es gratuito para todos. 60 herramientas — 21 de ellas de solo lectura — a través de Streamable HTTP en https://havetml.com/api/mcp.
01
Lo que tu asistente puede hacer
- Publicar el HTML, Markdown, YAML o JSON que tu asistente acaba de escribir, y obtener un enlace que puedes enviar a cualquiera.
- Volver a publicar el mismo artefacto y se convierte en una nueva versión detrás del mismo enlace, con las anteriores aún legibles.
- Leer los comentarios que la gente ha anclado en la página renderizada, y el estado JSON que han cambiado al usarla.
- Agrupar el trabajo en proyectos, organizarlo en un lienzo y registrar las decisiones tomadas al respecto.
02
Instálalo en tu herramienta
Cada configuración a continuación está completa excepto el token. Crea una cuenta y el asistente de conexión te entrega el mismo bloque con un token activo ya incluido — o pega un token desde Panel → Acceso API a través de havetml_your_token_here.
Conector de Claude
Name: HaveTML
Remote MCP server URL: https://havetml.com/api/mcp
OAuth Client ID: (leave blank)
OAuth Client Secret: (leave blank)
Claude → Personalizar → Conectores → Añadir conector personalizado. Pega la URL, deja OAuth Client ID/Secret en blanco y luego aprueba el acceso en HaveTML.
Claude Code
claude mcp add --transport http havetml https://havetml.com/api/mcp \
--header "Authorization: Bearer havetml_your_token_here"
Ejecuta en cualquier terminal y luego escribe /mcp en Claude Code para confirmar que se conectó.
Codex
# ~/.codex/config.toml
[mcp_servers.havetml]
url = "https://havetml.com/api/mcp"
bearer_token_env_var = "HAVETML_TOKEN"
# then, in your shell profile:
export HAVETML_TOKEN="havetml_your_token_here"
Añade a ~/.codex/config.toml. El escritorio de ChatGPT, Codex CLI y la extensión de Codex para IDE comparten esta configuración.
Cursor
{
"mcpServers": {
"havetml": {
"url": "https://havetml.com/api/mcp",
"headers": {
"Authorization": "Bearer havetml_your_token_here"
}
}
}
}
Global: ~/.cursor/mcp.json — o .cursor/mcp.json dentro de un proyecto.
Windsurf
{
"mcpServers": {
"havetml": {
"serverUrl": "https://havetml.com/api/mcp",
"headers": {
"Authorization": "Bearer havetml_your_token_here"
}
}
}
}
Añade a ~/.codeium/windsurf/mcp_config.json, o pégalo en Configuración → Cascade → Gestionar MCPs → Ver configuración sin procesar. Los servidores remotos necesitan serverUrl, no url; pulsa Refresh después.
Claude Desktop
{
"mcpServers": {
"havetml": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://havetml.com/api/mcp",
"--header",
"Authorization:${AUTH_HEADER}"
],
"env": {
"AUTH_HEADER": "Bearer havetml_your_token_here"
}
}
}
}
Usa la aplicación de escritorio → Desarrollador → Editar configuración, no Personalizar → Conectores. Esto usa mcp-remote como puente local; reinicia Claude Desktop después de guardar.
Otros clientes MCP
{
"mcpServers": {
"havetml": {
"url": "https://havetml.com/api/mcp",
"headers": {
"Authorization": "Bearer havetml_your_token_here"
}
}
}
}
Usa esto para herramientas que admitan servidores remotos Streamable HTTP. Para clientes solo stdio, usa el patrón de puente de Claude Desktop.
03
Cómo inicia sesión
Conectores de Claude
Inicia sesión, sin token
Pega la URL del servidor en el formulario Añadir conector personalizado de Claude y deja ambos campos de OAuth vacíos. Claude descubre el servidor de autorización de HaveTML por sí mismo y te envía aquí para aprobar el acceso. Si lo deniegas, Claude simplemente no recibe herramientas.
Todo lo demás
Un token portador
Claude Code, Cursor, Codex, Windsurf y Claude Desktop leen un archivo de configuración. Envían Authorization: Bearer havetml_… con cada llamada. Los tokens son por cuenta, tienen nombre y se pueden revocar desde el panel.
04
Las 60 herramientas
21 de lectura, 27 de escritura, 12 que eliminan o reemplazan algo. Cada una está anotada, para que un cliente pueda distinguirlas antes de llamar a una.
upload_artifact escritura
Sube HTML, Markdown, YAML o JSON y obtén un enlace de compartición permanente; volver a subirlo crea versiones.
list_artifacts lectura
Lista tus artefactos, opcionalmente limitados a un proyecto.
set_artifact_visibility escritura
Mueve un artefacto existente entre privado, círculo, no listado y público.
create_encrypted_artifact escritura
Almacena un sobre cifrado en tu propia máquina, para que HaveTML solo tenga el texto cifrado.
create_project escritura
Crea un proyecto — una carpeta compartible de artefactos con su propia página.
list_projects lectura
Lista tus proyectos con sus slugs, nombres y recuentos de artefactos.
set_project_default_visibility escritura
Elige qué heredan los nuevos artefactos que se archivan en un proyecto; no mueve nada que ya esté en él.
add_comment escritura
Añade un comentario a un artefacto, opcionalmente anclado a un lugar o en hilo.
list_comments lectura
Lista todos los comentarios de un artefacto, incluidas las respuestas en hilo.
invite_collaborator escritura
Invita a alguien por correo electrónico a ver o editar un artefacto.
list_collaborators lectura
Lista las personas con acceso a un artefacto.
revoke_collaborator destructiva
Revoca el acceso de un colaborador a un artefacto.
invite_project_member escritura
Invita a alguien por correo electrónico a un proyecto; los editores heredan acceso de edición a sus artefactos.
list_project_members lectura
Lista las personas con acceso a un proyecto.
revoke_project_member destructiva
Revoca el acceso de un miembro a un proyecto.
create_canvas escritura
Crea un lienzo: un tablero de tarjetas, notas adhesivas y las conexiones entre ellas.
get_canvas lectura
Lee un tablero de lienzo: sus nodos, aristas, notas e hilos de comentarios.
update_canvas destructiva
Renombra un tablero, reescribe sus notas o reemplaza los nodos y aristas que contiene.
add_canvas_node escritura
Añade un nodo a un lienzo sin tocar lo que ya está en él.
add_canvas_edge escritura
Dibuja una arista entre dos nodos que ya están en un lienzo.
list_events lectura
Consulta actualizaciones de estado JSON y nuevos comentarios en tus artefactos.
register_webhook escritura
Registra un endpoint HTTPS para recibir eventos firmados de artefactos, comentarios y decisiones.
list_webhooks lectura
Lista tus webhooks con su alcance, eventos y estado de la última entrega.
delete_webhook destructiva
Deja de entregar a un webhook y elimina sus entregas pendientes.
create_decision escritura
Abre una decisión sobre un artefacto: una pregunta que necesita resolverse.
list_decisions lectura
Lista las decisiones de un artefacto, con sus asignados.
get_decision lectura
Lee una decisión por id, con todos sus detalles y asignados.
assign_decision escritura
Registra quién debe decidir una decisión abierta, por id de usuario o correo electrónico.
revoke_assignment destructiva
Elimina un asignado de una decisión; la decisión permanece abierta.
decide_decision escritura
Establece el resultado y la justificación de una decisión, bloqueando el registro permanentemente.
supersede_decision destructiva
Reemplaza una decisión decidida por una nueva; la original permanece legible y bloqueada.
update_decision escritura
Cambia el título o el contexto de una decisión abierta.
delete_decision destructiva
Elimina una decisión que aún no se ha decidido.
list_templates lectura
Explora plantillas listas para copiar: artefactos funcionales con su estado y prompt inicial.
get_template lectura
Lee el prompt inicial, el estado de demostración y el enlace de demostración de una plantilla antes de construir a partir de ella.
use_template escritura
Copia la demostración de una plantilla en tu cuenta como un artefacto privado que puedes editar.
set_artifact_custom_slug escritura
Da a un artefacto público una ruta /f/ legible, o libérala, sin renombrarlo.
add_relation escritura
Dibuja un enlace tipado entre dos artefactos, como supera a o depende de.
list_relations lectura
Lista los enlaces tipados entre tus artefactos, para un artefacto o un proyecto.
remove_relation destructiva
Elimina una relación de artefacto por id; ninguno de los artefactos se toca.
get_artifact_content lectura
Lee el código fuente de un artefacto para la versión actual o una anterior.
update_artifact_json destructiva
Cambia el estado JSON en vivo de un artefacto sin una nueva versión; el modo de reemplazo elimina claves.
list_media lectura
Lista las imágenes, fuentes y hojas de estilo almacenadas con un artefacto, y la cuota de medios utilizada.
remove_media destructiva
Elimina un archivo de medios almacenado de un artefacto y libera su cuota.
list_notes lectura
Lee las notas escritas junto a un artefacto.
add_note escritura
Añade una nota a las notas de un artefacto, conservando lo que ya está allí.
update_notes destructiva
Reemplaza las notas de un artefacto con nuevo markdown, descartando lo que había.
propose_canvas_layout lectura
Calcula un diseño más ordenado para un tablero y devuélvelo sin mover nada.
create_folder escritura
Crea una carpeta dentro de un proyecto para agrupar artefactos; la visibilidad no cambia.
list_folders lectura
Lista cada carpeta de un proyecto con su ruta y recuento de artefactos.
move_artifact escritura
Mueve un artefacto a una carpeta o de vuelta a la raíz del proyecto.
rename_folder escritura
Renombra una carpeta; las URL de los artefactos no se ven afectadas.
move_folder escritura
Mueve una carpeta, con su contenido, bajo otra carpeta o al nivel superior.
delete_folder destructiva
Elimina una carpeta; sus artefactos y subcarpetas suben un nivel.
get_project lectura
Lee el nombre, la descripción, los recuentos y el sistema de diseño fijado de un proyecto.
set_project_design_system escritura
Fija un artefacto como sistema de diseño de un proyecto, o desfijalo.
propose_folder_organise lectura
Calcula una estructura de carpetas para un proyecto y devuélvela para aprobación; no escribe nada.
apply_folder_organise escritura
Aplica una propuesta de carpetas aprobada; se niega si el proyecto cambió desde entonces.
undo_folder_organise escritura
Revierte una organización de carpetas aplicada usando el plan de deshacer de su respuesta.
Los parámetros y descripciones completas están en el README de MCP, y en server-card.json si prefieres leerlo como JSON.
05
Límites, y qué permanece privado
- Privado por defecto. Un nuevo artefacto se abre para ti y las personas que invites, y para nadie más — el enlace solo no hace nada. Tu asistente debe ser solicitado antes de hacer que un enlace sea legible.
- 50 MB por artefacto en HaveTML, pero este endpoint MCP se ejecuta en Vercel, que rechaza cuerpos de solicitud de más de 4.5 MB. Cualquier cosa más grande se sube desde el panel.
- Los archivos cifrados permanecen cifrados. Una herramienta remota no puede hacer cifrado de conocimiento cero, por lo que la ruta cifrada cifra en tu máquina y envía a HaveTML solo texto cifrado. No tiene ninguna clave.
- Gratis para todos. MCP no es una función de pago y nada aquí consulta la facturación.
06
Lee el detalle
- README completo de MCP — Cada herramienta, su etiqueta de lectura o escritura, y la configuración de conexión para cada cliente.
- server-card.json — La tarjeta legible por máquina: endpoint, transporte, autenticación y lista de herramientas.
- Documentación de HaveTML — La API REST, los tokens y la extensión de Chrome junto a MCP.
Obtén tu token
Crea una cuenta y volverás aquí, a un asistente que genera el token, completa la configuración para la herramienta que elegiste y prueba la conexión.