chorus.host

Publique HTML, sites estáticos e arquivos em uma URL ao vivo a partir de qualquer agente, sem necessidade de conta

Servidor MCP hospedado

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

Instala no Claude Code, Codex, Cursor e outros

Documentação

Servidor MCP para publicar um site e obter uma URL pública

https://chorus.host/mcp é um servidor MCP remoto. Adicione-o ao Claude Code, Codex, Cursor ou claude.ai e seu agente poderá publicar HTML, um arquivo ou um site estático inteiro com uma única chamada de publish_site. Ele retorna um link https://<name>.chorus.host ativo e um link de reivindicação. Sem conta, sem instalação, sem chave de API.

Resumo

Endpointhttps://chorus.host/mcp
TransporteHTTP Streamable, sem estado
AutenticaçãoNenhuma. Authorization: Bearer chk_... opcional publica na sua conta
Ferramentaspublish_site, get_site, get_docs
Por chamada4 MB de arquivos sem chave, 10 MB com chave; até 1.000 arquivos
Sites sem contaAtivos por 24 horas; um link de reivindicação os mantém
Publicações por hora5 por endereço IP sem chave, 60 por conta com chave
Nome no Registro Oficial MCPhost.chorus/mcp
PreçoGratuito

Adicione ao seu cliente

Verificado em 1º de outubro de 2026. Os comandos do Claude Code e do Codex foram executados contra este servidor nesse dia; as entradas do Cursor e do VS Code seguem o formato de configuração documentado de cada cliente e não foram executadas por nós.

Claude Code

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

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

Codex CLI

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

Isso grava uma entrada [mcp_servers.chorus] com a URL em ~/.codex/config.toml. O sandbox workspace-write padrão do Codex não tem rede, então aprove a solicitação de rede quando o Codex pedir, ou consulte a seção Codex do guia Claude Code e Codex.

opencode

Em opencode.json:

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

Cursor

Em ~/.cursor/mcp.json (todos os projetos) ou .cursor/mcp.json (um projeto):

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

VS Code

Em .vscode/mcp.json:

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

claude.ai e Claude Desktop

Personalize, depois Conectores, depois + e Adicionar conector personalizado. Nomeie-o como chorus.host e cole https://chorus.host/mcp como a URL. Não há etapa de OAuth. O plano gratuito permite um conector personalizado.

ChatGPT

O ChatGPT só pode usar ferramentas MCP que gravam (publicar é uma gravação) em espaços de trabalho Business, Enterprise ou Edu, na web, por meio do modo de desenvolvedor (Configurações, Aplicativos, Configurações avançadas). No Pro, os conectores do modo de desenvolvedor podem ler e buscar, mas não gravar, de acordo com a central de ajuda da OpenAI em 1º de outubro de 2026. O artigo não menciona o Plus, então espere o mesmo lá, a menos que você teste de outra forma. No Pro ou Plus, baixe o HTML que o ChatGPT criou e solte-o em chorus.host/html-to-url.

Uma observação sobre endereços compartilhados: claude.ai e ChatGPT chamam servidores MCP a partir de seus próprios servidores, então suas solicitações compartilham um pequeno número de endereços IP. Publicar sem chave é limitado a 5 por hora por endereço IP, e esse orçamento pode se esgotar em um endereço compartilhado. Se você vir um erro de limite de taxa lá, adicione sua chave de API como um cabeçalho Authorization: Bearer chk_... (60 por hora por conta).

O que seu agente obtém

Esta referência é gerada a partir das definições de ferramentas que o servidor registra, então corresponde ao que tools/list retorna.

publish_site: Publicar site

Publique um site ou qualquer arquivo (PDF, imagem, HTML, CSS/JS) em uma URL HTTPS pública ativa em .chorus.host em uma única chamada. Os arquivos mantêm seu tipo de conteúdo, então PDFs e imagens abrem no navegador.

ArgumentoTipoObrigatórioO que é
claim_tokenstringnãoO claim_token (ctk_...) retornado quando o site foi publicado pela primeira vez. Necessário para atualizar um site anônimo.
expires_atstringnãoOpcional. Quando o site deve ser excluído: RFC 3339 (2026-10-08T00:00:00Z) ou uma duração a partir de agora (90m, 2h, 7d).
filesarray de objetosimTodos os arquivos do site. Cada chamada cria uma nova versão com exatamente esses arquivos; versões anteriores são mantidas.
passwordobjetonãoOpcional. Coloque o site atrás de um prompt de login do navegador (HTTP Basic Auth).
slugstringnãoOpcional. Subdomínio para publicar (3-63 letras minúsculas, dígitos e hífens).
titlestringnãoTítulo legível opcional salvo com o site.

Retorna: 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.

Anotações: não destrutivo (versões anteriores são mantidas).

get_site: Verificar status do site

Verifique um site chorus.host: se está ativo, sua URL, se tem senha e quando expira. Com o claim_token do site (ou uma chave de API que possua o site), também retorna a lista de arquivos, tamanho total, versão ativa e link de reivindicação.

ArgumentoTipoObrigatórioO que é
claim_tokenstringnãoclaim_token opcional (ctk_...) do site. Desbloqueia a lista de arquivos e outros detalhes.
slugstringsimO slug do site, ou seja, o subdomínio em .chorus.host.

Retorna: 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.

Anotações: somente leitura.

get_docs: Ler documentação do chorus.host

Retorna a documentação completa do chorus.host como Markdown (o mesmo texto de https://chorus.host/skill.md): a API REST, o CLI beacon, contas e chaves de API, reivindicação de sites, proteção por senha e Workers, que executam JavaScript no lado do servidor em .worker.chorus.host para APIs e receptores de webhook (GitHub, Stripe), incluindo aplicativos Hono, sem necessidade de conta Cloudflare. Leia antes de construir um backend, quando o usuário perguntar sobre contas ou limites, ou quando uma tarefa precisar de algo que o publish_site não pode fazer.

Anotações: somente leitura.

Experimente sem um cliente

MCP é JSON sobre HTTP, então curl funciona. Isso publica uma página e imprime a URL ativa:

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

O resultado completo tem url, page_url, file_url, claim_url, claim_token, expires_at e uma mensagem tell_the_user. Se você quiser apenas curl, o endpoint HTTP simples é mais curto: curl -sS https://chorus.host/v1/publish -F file=@index.html.

Mantenha, atualize, proteja

  • Mantenha. Dê à pessoa o claim_url. Ela abre, insere seu e-mail e o código de 6 dígitos que recebe, e o site é dela sem expiração.
  • Mesma URL, novo conteúdo. Chame publish_site novamente com o mesmo slug e o claim_token da primeira chamada. Cada chamada torna uma nova versão ativa com exatamente os arquivos que você envia; versões anteriores são mantidas e podem ser revertidas pela API REST.
  • Senha. Passe password: {username, password} e os visitantes verão o prompt de login do navegador. Funciona sem conta. Veja proteger uma página HTML com senha.
  • Expiração. Passe expires_at (2h, 7d ou um horário RFC 3339). Sem chave, só pode ser antes de 24 horas. Veja hospedagem temporária de sites.
  • Publique na sua conta. Envie sua chave de API como cabeçalho. 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.
  • Mais de 4 MB. Use publish.py ou o CLI beacon, que enviam diretamente para o armazenamento (250 MB por arquivo sem conta).
  • Um backend. APIs e receptores de webhook rodam como chorus.host Workers. Eles são implantados pela API REST ou pelo CLI com uma conta gratuita, não por uma ferramenta MCP hoje; get_docs retorna as instruções.

Qual servidor MCP você deve usar?

Verificado em 1º de outubro de 2026 a partir do tools/list de cada servidor e documentação pública. Células em branco significam que não conseguimos confirmar a resposta, não que o recurso esteja ausente.

chorus.hostShipStaticJust Publish
Publicar com apenas a URL configuradaSimSimA ferramenta de implantação pede um endereço de e-mail
Vida útil sem conta24 horas3 dias
Senha pela ferramentaSimSim
Entrar em clientes na nuvemCabeçalho de chave de APIOAuth
Domínios personalizadosNãoSim
Alterar um arquivo sem reenviar o siteNão, substituição completaSim (update_site_file)
Escolher o subdomínioSim
Código no lado do servidorWorkers, via REST ou CLI

Onde eles são melhores: ShipStatic mantém sites anônimos por 3 dias em vez de 24 horas, faz login via OAuth e suporta domínios personalizados. Just Publish pode editar um arquivo de um site ativo sem enviar o resto. here.now não tem servidor MCP público; seu cartão de agente diz que MCP não é suportado.

Quer hospedar seu próprio servidor MCP?

Esta página é sobre um servidor MCP que publica sites. Se você quiser executar seu próprio servidor MCP na web, o guia da Cloudflare para servidores MCP remotos em Workers é o lugar para começar.

Perguntas

Existe um servidor MCP que publica um site e retorna uma URL pública?

Sim. Adicione https://chorus.host/mcp ao seu cliente MCP. Sua ferramenta publish_site recebe os arquivos e retorna uma URL https://<name>.chorus.host ativa, além de um link de reivindicação para que uma pessoa possa manter o site.

Preciso de uma conta ou chave de API?

Não. Sem uma, os sites ficam ativos por 24 horas e vêm com um link de reivindicação. Com uma chave de API no cabeçalho Authorization, os sites entram na sua conta e não expiram.

Funciona no ChatGPT?

Publicar requer um espaço de trabalho Business, Enterprise ou Edu do ChatGPT com modo de desenvolvedor, na web. No Pro, os conectores do modo de desenvolvedor são somente leitura e busca (a central de ajuda da OpenAI não cobre o Plus), então no Pro ou Plus arraste o arquivo HTML para chorus.host/html-to-url.

Por quanto tempo os sites ficam ativos?

24 horas sem conta, a menos que alguém abra o link de reivindicação e faça login. Sites em uma conta ficam ativos até você excluí-los, ou até um expires_at que você definir.

Qual pode ser o tamanho do site?

4 MB de arquivos por chamada sem chave e 10 MB com chave, até 1.000 arquivos. Sites maiores passam por publish.py, o CLI beacon ou a API REST: 250 MB por arquivo sem conta, 5 GB com conta.

O agente pode atualizar a mesma URL depois?

Sim. Chame publish_site novamente com o mesmo slug e o claim_token que obteve na primeira vez (ou com sua chave de API para sites na sua conta). A URL permanece a mesma e a versão antiga é mantida.