VoiceDock
Crie e gerencie agentes de IA de voz para linhas telefônicas reais: assistentes, chamadas, números e campanhas.
Servidor MCP hospedado
npx add-mcp 'https://mcp.hmsovereign.com/mcp'Instala no Claude Code, Codex, Cursor e outros
Documentação
Servidor MCP
Conecte assistentes de IA, como Claude Code e Cursor, à sua conta VoiceDock por meio do servidor hospedado do Model Context Protocol — basta fazer login, sem necessidade de colar chave de API.
O VoiceDock expõe um servidor hospedado de Model Context Protocol (MCP) em mcp.hmsovereign.com. Isso permite que assistentes de IA — incluindo Claude, Claude Code, Cursor e qualquer outra ferramenta compatível com MCP — interajam diretamente com sua conta VoiceDock, sem sair do seu ambiente.
Uma vez conectado, seu assistente de IA pode listar assistentes, iniciar chamadas, verificar uso, gerenciar campanhas e realizar qualquer outra operação disponível na API — tudo por meio de linguagem natural.
Endpoint
https://mcp.hmsovereign.com/mcp
O servidor constrói suas ferramentas a partir da especificação OpenAPI do VoiceDock — uma ferramenta por endpoint da API, carregando os parâmetros e descrições desse endpoint. Não há lista de ferramentas para configurar ou manter do seu lado.
O conjunto é construído quando o servidor inicia e permanece fixo enquanto o processo estiver em execução. Assim, um endpoint recém-lançado fica disponível assim que reiniciarmos o servidor. Isso é responsabilidade nossa, não sua: nada no seu cliente dispara essa atualização.
Autenticação
O servidor MCP é um servidor de recursos OAuth 2.1. Você se conecta apenas com a URL acima — sem chave para copiar. Seu cliente descobre o fluxo de login automaticamente, abre um navegador onde você faz login com sua conta VoiceDock e aprova o acesso, e então trabalha com todas as organizações às quais sua conta pertence. Nos bastidores, mapeamos sua conta para as credenciais de cada organização; você nunca lida com uma chave de API. Consulte Trabalhando com mais de uma organização.
Dica: Prefere um token estático (CI, scripts, servidores)? Uma chave de API bruta da organização ainda funciona como token
Bearer— consulte Legado: chave de API abaixo.
Configuração
Claude Code / Cursor / Claude Desktop
Adicione o endpoint e deixe o cliente executar o fluxo de login:
{
"mcpServers": {
"voicedock": {
"type": "http",
"url": "https://mcp.hmsovereign.com/mcp"
}
}
}
Na primeira conexão, um navegador abre: faça login com sua conta VoiceDock e clique em Permitir na tela de consentimento. Pronto — as ferramentas aparecem no seu assistente.
- Claude Desktop: Configurações → Conectores → Adicionar conector personalizado → cole a URL.
- Claude Code:
claude mcp add --transport http voicedock https://mcp.hmsovereign.com/mcp(ou adicione o JSON acima). - Cursor: configurações de MCP → adicione o JSON acima.
Outros clientes MCP
Qualquer cliente que suporte o transporte MCP Streamable HTTP e OAuth pode se conectar apenas com a URL:
- URL:
https://mcp.hmsovereign.com/mcp - Transporte: Streamable HTTP
- Autenticação: OAuth 2.1 (o servidor anuncia seu servidor de autorização por meio de metadados de recurso protegido; os clientes se registram dinamicamente e solicitam que você faça login)
Legado: chave de API
Se o seu cliente não consegue executar um fluxo OAuth, ou se você está integrando isso a um servidor ou job de CI, passe uma chave de API da organização como token bearer:
{
"mcpServers": {
"voicedock": {
"type": "http",
"url": "https://mcp.hmsovereign.com/mcp",
"headers": {
"Authorization": "Bearer YOUR_API_KEY"
}
}
}
}
Encontre sua chave de API no painel em Desenvolvedor → API REST. Uma chave de API sempre pertence a uma organização, portanto o parâmetro organization_id descrito abaixo não se aplica a ela; passá-lo retorna invalid_request.
Ferramentas disponíveis
O servidor MCP expõe todos os endpoints da API VoiceDock como ferramentas — uma ferramenta por endpoint. Exemplos:
| Ferramenta | Descrição |
|---|---|
listAssistants | Lista todos os assistentes de voz da sua organização |
createAssistant | Cria um novo assistente de voz |
getAssistant | Recupera um assistente específico por ID |
updateAssistant | Atualiza a configuração do assistente |
createOutboundCall | Inicia uma chamada de saída |
listCalls | Lista chamadas com filtros opcionais |
getCall | Obtém detalhes da chamada, incluindo transcrição e análise |
createCampaign | Cria uma campanha de chamadas de saída |
listVoices | Navega pelas vozes TTS disponíveis |
getUsage | Recupera dados de uso e faturamento |
A lista completa de ferramentas espelha a referência da API.
Limpando um campo
Omitir um parâmetro de uma chamada de ferramenta e passá-lo como vazio são a mesma coisa via MCP, então uma ferramenta não consegue expressar "defina este campo como null" da mesma forma que a API REST consegue. Ferramentas cujos endpoints têm campos que aceitam null carregam, portanto, um parâmetro extra, clear_fields: uma lista de nomes de campos para esvaziar.
updateNumber(id="NUMBER_ID", clear_fields=["workflow_id"])
É assim que você desanexa um fluxo de trabalho de um número de telefone — o passo que deleteWorkflow solicita quando recusa com um 409. Um campo pode receber um valor ou ser listado em clear_fields, não ambos, e apenas campos que a especificação marca como anuláveis são aceitos.
Exemplo de uso
Depois de conectado, você pode pedir ao seu assistente de IA para executar tarefas em linguagem natural:
"Crie um novo assistente chamado 'Bot de Suporte' com uma saudação amigável e GPT-4o como modelo de linguagem."
"Liste todas as chamadas desta semana e resuma os resultados."
"Inicie uma chamada de saída para +31612345678 usando o ID de assistente xyz."
"Mostre meu uso dos últimos 30 dias."
Trabalhando com mais de uma organização
Uma conexão feita por login alcança todas as organizações das quais sua conta é membro. A ferramenta extra listOrganizations as retorna, com o ID, o nome e seu papel em cada uma:
listOrganizations()
Todas as outras ferramentas aceitam um organization_id opcional que seleciona a organização na qual a chamada é executada:
listAssistants(organization_id="ORGANIZATION_ID")
- Uma organização: omita
organization_id; as chamadas são executadas nessa organização. - Mais de uma: passe
organization_idem todas as chamadas, incluindo leituras. Uma chamada sem ele retornaorganization_requiredcom a lista das suas organizações, e nada é lido ou alterado. - Uma organização da qual você não é membro retorna
organization_not_accessible, com a mesma lista.
Os resultados nomeiam a organização de onde vieram, com a resposta da API sob result:
{
"organization": { "id": "ORGANIZATION_ID", "name": "Acme Dental" },
"result": { "...": "..." }
}
Seu assistente pode verificar esse nome antes de agir com base no que leu. Conexões com chave de API mantêm a resposta simples, já que a chave já fixa a organização.
Segurança
- OAuth 2.1 com sua própria conta — sem chave de longa duração para copiar, compartilhar ou vazar. O acesso está vinculado ao seu login VoiceDock, exibido em uma tela de consentimento explícita, e pode ser revogado pelo seu cliente a qualquer momento.
- O servidor MCP é stateless — nenhum dado de sessão é retido entre requisições.
- Cada chamada de ferramenta é executada em uma organização da qual você é membro, nomeada na chamada e em seu resultado (para o caminho legado: a organização da sua chave de API). A associação é verificada em cada chamada, então remover alguém de uma organização encerra imediatamente o acesso dessa pessoa pelo servidor MCP.
- A organização que você seleciona no painel não tem efeito sobre o servidor MCP. Alternar lá não move um assistente conectado para outra organização.
- O tráfego é somente TLS e o token nunca é registrado em logs pelo servidor MCP.
- Aprove apenas conexões que você mesmo iniciou. A tela de consentimento nomeia o aplicativo que solicita acesso — se você não o reconhecer, clique em Negar.
Solução de problemas
O login no navegador não abre
Certifique-se de que seu cliente suporta servidores MCP remotos com OAuth (versões recentes do Claude Desktop, Claude Code e Cursor suportam). Se não suportar, use o método legado com chave de API.
Ferramentas não aparecem após conectar
Reconecte o servidor para que o cliente busque novamente a lista de ferramentas — os clientes a armazenam em cache, e um cache desatualizado é a causa mais comum.
Se uma ferramenta ainda estiver ausente e ela cobrir um endpoint que lançamos recentemente, a lista de ferramentas do nosso lado ainda não foi reconstruída. Reconectar não resolve isso, e nada no seu cliente também resolve: entre em contato e reiniciaremos o servidor.
Para o caminho legado, verifique se sua chave de API é válida:
curl https://api.hmsovereign.com/api/v1/assistants \
-H "Authorization: Bearer YOUR_API_KEY"
Servidor indisponível
Verifique status.voicedock.ai para o status atual da plataforma.
Nota: O servidor MCP é de leitura/escrita — assistentes de IA conectados podem criar, atualizar e excluir recursos em seu nome. Aprove apenas aplicativos confiáveis na tela de consentimento e mantenha qualquer chave de API legada em ambientes confiáveis.
[
Configuração BYOK
Bring Your Own Key permite que você use suas próprias chaves de API para provedores de IA, dando a você controle sobre custos e acesso a modelos.
](https://doc.voicedock.ai/docs/integrations/byok-setup)[
Integração xAI Grok
Use a API Realtime xAI Grok para conversas de fala a fala com latência abaixo de 700ms.
](https://doc.voicedock.ai/docs/integrations/xai-grok-integration)