chorus.host

Publica HTML, sitios estáticos y archivos a una URL en vivo desde cualquier agente, sin necesidad de cuenta.

Servidor MCP alojado

npx add-mcp 'https://chorus.host/mcp'

Se instala en Claude Code, Codex, Cursor y más

Documentación

Servidor MCP para publicar un sitio web y obtener una URL pública

https://chorus.host/mcp es un servidor MCP remoto. Añádelo a Claude Code, Codex, Cursor o claude.ai y tu agente podrá publicar HTML, un archivo o un sitio estático completo con una sola llamada a publish_site. Recibe de vuelta un enlace https://<name>.chorus.host en vivo y un enlace de reclamación. Sin cuenta, sin instalación, sin clave API.

De un vistazo

Endpointhttps://chorus.host/mcp
TransporteHTTP transmisible, sin estado
AutenticaciónNinguna. Authorization: Bearer chk_... opcional publica en tu cuenta
Herramientaspublish_site, get_site, get_docs
Por llamada4 MB de archivos sin clave, 10 MB con una; hasta 1.000 archivos
Sitios sin cuentaEn vivo durante 24 horas; un enlace de reclamación los conserva
Publicaciones por hora5 por dirección IP sin clave, 60 por cuenta con una
Nombre en el Registro MCP oficialhost.chorus/mcp
PrecioGratis

Añádelo a tu cliente

Verificado el 1 de octubre de 2026. Los comandos de Claude Code y Codex se ejecutaron contra este servidor ese día; las entradas de Cursor y VS Code siguen el formato de configuración documentado de cada cliente y no fueron ejecutadas por nosotros.

Claude Code

claude mcp add --transport http chorus https://chorus.host/mcp

claude mcp list debería mostrar chorus: https://chorus.host/mcp (HTTP) - ✔ Connected.

Codex CLI

codex mcp add chorus --url https://chorus.host/mcp

Esto escribe una entrada [mcp_servers.chorus] con la URL en ~/.codex/config.toml. El sandbox workspace-write predeterminado de Codex no tiene red, así que aprueba la solicitud de red cuando Codex la pida, o consulta la sección de Codex en la guía de Claude Code y Codex.

opencode

En opencode.json:

{ "mcp": { "chorus": { "type": "remote", "url": "https://chorus.host/mcp" } } }

Cursor

En ~/.cursor/mcp.json (todos los proyectos) o .cursor/mcp.json (un proyecto):

{ "mcpServers": { "chorus": { "url": "https://chorus.host/mcp" } } }

VS Code

En .vscode/mcp.json:

{ "servers": { "chorus": { "type": "http", "url": "https://chorus.host/mcp" } } }

claude.ai y Claude Desktop

Personaliza, luego Conectores, luego + y Añadir conector personalizado. Nómbralo chorus.host y pega https://chorus.host/mcp como URL. No hay paso de OAuth. El plan gratuito permite un conector personalizado.

ChatGPT

ChatGPT solo puede usar herramientas MCP que escriben (publicar es una escritura) en espacios de trabajo Business y Enterprise o Edu, en la web, mediante el modo desarrollador (Configuración, Aplicaciones, Configuración avanzada). En Pro, los conectores del modo desarrollador pueden leer y obtener, pero no escribir, según el centro de ayuda de OpenAI del 1 de octubre de 2026. El artículo no menciona Plus, así que espera lo mismo allí a menos que pruebes lo contrario. En Pro o Plus, descarga el HTML que ChatGPT haya creado y colócalo en chorus.host/html-to-url en su lugar.

Una nota sobre direcciones compartidas: claude.ai y ChatGPT llaman a los servidores MCP desde sus propios servidores, por lo que sus solicitudes comparten un pequeño número de direcciones IP. Publicar sin clave está limitado a 5 por hora por dirección IP, y ese presupuesto puede agotarse en una dirección compartida. Si ves un error de límite de velocidad allí, añade tu clave API como cabecera Authorization: Bearer chk_... (60 por hora por cuenta).

Lo que obtiene tu agente

Esta referencia se genera a partir de las definiciones de herramientas que registra el servidor, por lo que coincide con lo que devuelve tools/list.

publish_site: Publicar sitio web

Publica un sitio web o cualquier archivo (PDF, imagen, HTML, CSS/JS) en una URL HTTPS pública y en vivo en .chorus.host con una sola llamada. Los archivos conservan su tipo de contenido, por lo que los PDF e imágenes se abren en el navegador.

ArgumentoTipoObligatorioQué es
claim_tokenstringnoEl claim_token (ctk_...) devuelto cuando el sitio se publicó por primera vez. Obligatorio para actualizar un sitio anónimo.
expires_atstringnoOpcional. Cuándo debe eliminarse el sitio: RFC 3339 (2026-10-08T00:00:00Z) o una duración desde ahora (90m, 2h, 7d).
filesarray de objetosíCada archivo del sitio. Cada llamada crea una nueva versión con exactamente estos archivos; las versiones anteriores se conservan.
passwordobjetonoOpcional. Coloca el sitio detrás de un aviso de inicio de sesión del navegador (Autenticación Básica HTTP).
slugstringnoOpcional. Subdominio al que publicar (3-63 letras minúsculas, dígitos y guiones).
titlestringnoTítulo legible opcional guardado con el sitio.

Devuelve: anonymous, claim_token, claim_url, expires_at, file_count, file_url, next_steps, page_url, password_protected, slug, tell_the_user, total_bytes, updated, url, version_id, warnings.

Anotaciones: no destructivo (las versiones anteriores se conservan).

get_site: Comprobar estado del sitio

Comprueba un sitio de chorus.host: si está en vivo, su URL, si tiene contraseña y cuándo caduca. Con el claim_token del sitio (o una clave API que sea propietaria del sitio) también devuelve la lista de archivos, el tamaño total, la versión en vivo y el enlace de reclamación.

ArgumentoTipoObligatorioQué es
claim_tokenstringnoclaim_token opcional (ctk_...) del sitio. Desbloquea la lista de archivos y otros detalles.
slugstringsíEl slug del sitio, es decir, el subdominio en .chorus.host.

Devuelve: can_manage, claim_url, claimed, created_at, current_version_id, expires_at, file_count, files, files_truncated, password_protected, slug, status, summary, title, total_bytes, updated_at, url.

Anotaciones: solo lectura.

get_docs: Leer documentación de chorus.host

Devuelve la documentación completa de chorus.host como Markdown (el mismo texto que https://chorus.host/skill.md): la API REST, el CLI beacon, cuentas y claves API, reclamación de sitios, protección con contraseña y Workers, que ejecutan JavaScript del lado del servidor en .worker.chorus.host para APIs y receptores de webhooks (GitHub, Stripe), incluidas aplicaciones Hono, sin necesidad de cuenta de Cloudflare. Léelo antes de construir un backend, cuando el usuario pregunte sobre cuentas o límites, o cuando una tarea necesite algo que publish_site no pueda hacer.

Anotaciones: solo lectura.

Pruébalo sin un cliente

MCP es JSON sobre HTTP, así que curl funciona. Esto publica una página e imprime la URL en vivo:

jq -n --rawfile html index.html \
  '{jsonrpc:"2.0",id:1,method:"tools/call",params:{name:"publish_site",arguments:{files:[{path:"index.html",content:$html}]}}}' \
  | curl -sS https://chorus.host/mcp -H 'Content-Type: application/json' \
      -H 'Accept: application/json, text/event-stream' -d @- \
  | jq -r .result.structuredContent.url

El resultado completo tiene url, page_url, file_url, claim_url, claim_token, expires_at y un mensaje tell_the_user. Si solo quieres curl, el endpoint HTTP simple es más corto: curl -sS https://chorus.host/v1/publish -F file=@index.html.

Consérvalo, actualízalo, bloquéalo

  • Consérvalo. Dale a la persona el claim_url. Lo abre, introduce su correo electrónico y el código de 6 dígitos que recibe, y el sitio es suyo sin caducidad.
  • Misma URL, nuevo contenido. Llama a publish_site de nuevo con el mismo slug y el claim_token de la primera llamada. Cada llamada hace que una nueva versión esté en vivo con exactamente los archivos que envías; las versiones anteriores se conservan y pueden revertirse mediante la API REST.
  • Contraseña. Pasa password: {username, password} y los visitantes verán el aviso de inicio de sesión del navegador. Funciona sin cuenta. Consulta proteger con contraseña una página HTML.
  • Caducidad. Pasa expires_at (2h, 7d o una hora RFC 3339). Sin clave, solo puede ser antes de 24 horas. Consulta alojamiento web temporal.
  • Publica en tu cuenta. Envía tu clave API como cabecera. Claude Code: claude mcp add --transport http chorus https://chorus.host/mcp --header "Authorization: Bearer chk_...". Codex: codex mcp add chorus --url https://chorus.host/mcp --bearer-token-env-var CHORUS_API_KEY.
  • Más de 4 MB. Usa publish.py o el CLI beacon, que suben directamente al almacenamiento (250 MB por archivo sin cuenta).
  • Un backend. Las APIs y los receptores de webhooks se ejecutan como Workers de chorus.host. Se despliegan mediante la API REST o el CLI con una cuenta gratuita, no a través de una herramienta MCP hoy; get_docs devuelve las instrucciones.

¿Qué servidor MCP deberías usar?

Verificado el 1 de octubre de 2026 desde el tools/list de cada servidor y la documentación pública. Las celdas en blanco significan que no pudimos confirmar la respuesta, no que la función falte.

chorus.hostShipStaticJust Publish
Publicar con solo la URL configuradaSíSíLa herramienta de despliegue pide una dirección de correo electrónico
Duración sin cuenta24 horas3 días
Contraseña desde la herramientaSíSí
Iniciar sesión desde clientes en la nubeCabecera de clave APIOAuth
Dominios personalizadosNoSí
Cambiar un archivo sin reenviar el sitioNo, reemplazo completoSí (update_site_file)
Elegir el subdominioSí
Código del lado del servidorWorkers, mediante REST o CLI

Dónde son mejores: ShipStatic conserva los sitios anónimos durante 3 días en lugar de 24 horas, inicia sesión mediante OAuth y admite dominios personalizados. Just Publish puede editar un archivo de un sitio en vivo sin enviar el resto. here.now no tiene servidor MCP público; su tarjeta de agente dice que MCP no es compatible.

¿Quieres alojar tu propio servidor MCP?

Esta página trata sobre un servidor MCP que publica sitios web. Si quieres ejecutar tu propio servidor MCP en la web, la guía de Cloudflare sobre servidores MCP remotos en Workers es el lugar para empezar.

Preguntas

¿Hay un servidor MCP que publique un sitio web y devuelva una URL pública?

Sí. Añade https://chorus.host/mcp a tu cliente MCP. Su herramienta publish_site toma los archivos y devuelve una URL https://<name>.chorus.host en vivo, además de un enlace de reclamación para que una persona pueda conservar el sitio.

¿Necesito una cuenta o una clave API?

No. Sin una, los sitios permanecen en línea durante 24 horas y vienen con un enlace de reclamación. Con una clave API en la cabecera Authorization, los sitios van a tu cuenta y no caducan.

¿Funciona en ChatGPT?

Publicar requiere un espacio de trabajo de ChatGPT Business, Enterprise o Edu con modo desarrollador, en la web. En Pro, los conectores del modo desarrollador son solo de lectura y obtención (el centro de ayuda de OpenAI no cubre Plus), así que en Pro o Plus arrastra el archivo HTML a chorus.host/html-to-url en su lugar.

¿Cuánto tiempo permanecen en línea los sitios?

24 horas sin cuenta, a menos que alguien abra el enlace de reclamación e inicie sesión. Los sitios en una cuenta permanecen en línea hasta que los elimines, o hasta un expires_at que establezcas.

¿Qué tamaño puede tener el sitio?

4 MB de archivos por llamada sin clave y 10 MB con una, hasta 1.000 archivos. Los sitios más grandes pasan por publish.py, el CLI beacon o la API REST: 250 MB por archivo sin cuenta, 5 GB con una.

¿Puede el agente actualizar la misma URL más tarde?

Sí. Llama a publish_site de nuevo con el mismo slug y el claim_token que obtuvo la primera vez (o con tu clave API para sitios en tu cuenta). La URL sigue siendo la misma y la versión anterior se conserva.