Speak AI
Conecte Claude, ChatGPT, Cursor e Windsurf ao seu espaço de trabalho Speak AI: transcreva, pontue, pesquise e aja em cada conversa (107 ferramentas, MIT).
Documentação
Conecte o Speak AI ao Claude ou ChatGPT em 60 segundos
Para pesquisadores, equipes de receita, equipes com muitas reuniões e fluxos de trabalho de mídia.
Sem Terminal. Sem npm. Sem arquivos de configuração JSON.
Guia de instalação em docs.speakai.co/mcp →
O que isto faz
O Speak AI transcreve suas entrevistas, ligações de vendas, sessões de pesquisa, webinars, podcasts e reuniões de equipe — e então extrai insights de IA como resumos, itens de ação, sentimento e temas.
Este conector (construído sobre MCP — o padrão pelo qual Claude e ChatGPT se conectam a aplicativos) traz tudo isso para dentro do Claude ou ChatGPT. Uma vez instalado, você pode perguntar:
- "Encontre as últimas 10 entrevistas com clientes que mencionem preço, agrupe o feedback por tema e cite as gravações de origem."
- "Resuma as reuniões de equipe desta semana em decisões, itens de ação, responsáveis e riscos não resolvidos."
- "Extraia citações exatas de clientes sobre dificuldades de onboarding de chamadas de pesquisa recentes e formate-as para um brief de produto."
- "Encontre um destaque forte de 30 segundos do webinar mais recente, crie um clipe e exporte as legendas."
A IA faz a busca, o resumo e a citação. Suas gravações permanecem no seu espaço de trabalho do Speak AI — Claude e ChatGPT apenas as consultam através deste conector.
Instalar (escolha sua ferramenta)
Dois caminhos para instalar — escolha o que parecer mais fácil. O caminho de conexão com um clique aprova o acesso via pop-up de permissão; o caminho manual cola uma chave de API em um cabeçalho.
Não sabe qual escolher? Se você já usa Claude ou ChatGPT, instale para aquele que você tem.
Endereço do conector do Speak AI (cole isto nas configurações de conector da sua ferramenta de IA — é a mesma ideia de colar um link do Zoom no seu calendário):
https://api.speakai.co/v1/mcp
Claude.ai (web)
- Abra claude.ai/settings/connectors
- Clique em Adicionar conector personalizado
- Nomeie-o como Speak AI e cole
https://api.speakai.co/v1/mcp, depois clique em Adicionar - Um pop-up de permissão pede que você faça login no Speak AI e clique em Permitir
- Pronto — o Speak AI aparece na sua lista de conectores com suas ferramentas prontas para uso. Abra um novo chat e pergunte sobre suas gravações.
Como é cada etapa (capturas de tela)
3. Diálogo de adicionar conector personalizado — nome e URL preenchidos.

5. Conectado — as ferramentas do Speak AI aparecem na sua lista de conectores.

Alternativa para desenvolvedores — configuração manual com chave de API
Obtenha uma chave em app.speakai.co/developers/apikeys e, no passo 3, expanda Configurações avançadas e adicione Authorization = Bearer <your-key> antes de clicar em Adicionar.
Claude Desktop
- Abra Claude Desktop → Configurações → Conectores → Adicionar conector personalizado
- Cole
https://api.speakai.co/v1/mcp - Clique em Adicionar — um pop-up de permissão abre. Entre no Speak AI e clique em Permitir na tela que aparecer.
- Pronto.
Alternativa para desenvolvedores — configuração manual com chave de API
Obtenha uma chave em app.speakai.co/developers/apikeys e, no passo 2, expanda também Cabeçalhos personalizados e adicione:
- Nome do cabeçalho:
Authorization - Valor do cabeçalho:
Bearer <your-speak-api-key>
Depois clique em Adicionar.
ChatGPT
- Abra ChatGPT → Configurações → Apps e Conectores → Avançado
- Ative o Modo Desenvolvedor (necessário enquanto o Speak AI ainda não estiver listado na loja de apps do ChatGPT — isso permite adicioná-lo como um app personalizado)
- De volta em Apps e Conectores, clique em Criar e cole
https://api.speakai.co/v1/mcp - Para Autenticação, escolha OAuth
- O ChatGPT abre uma nova aba para o Speak AI — entre (ou clique em Confirmar se já estiver logado) para autorizar. Você será redirecionado de volta; feche a aba e retorne ao ChatGPT.
- Por chat: abra um chat, clique no menu + / de conectores e ative o Speak AI para aquele chat.
Como é cada etapa (capturas de tela)
1. Tela de conexão no ChatGPT — cole a URL do conector e escolha OAuth.

2. Confirmar e continuar — o ChatGPT pede que você continue para o Speak AI.

3. Autorizar no Speak AI — entre ou clique em Confirmar se já estiver logado.

4. Conectado — o Speak AI agora aparece na sua lista de conectores do ChatGPT.

Problemas para conectar?
Algumas coisas que vimos durante o acesso antecipado:
- A aba de autorização não mostra uma página de "você está conectado" — se você cair no painel simples do Speak AI sem confirmação, a autorização ainda foi concluída. Feche essa aba e retorne ao ChatGPT.
- O botão "Conectar" continua reabrindo o painel — feche e reabra completamente o ChatGPT e verifique Configurações → Apps e Conectores. O Speak AI já deve estar listado lá.
- "Nenhuma ação disponível" dentro de um chat — certifique-se de que o Modo Desenvolvedor ainda está ativado e que você habilitou o Speak AI no menu de conectores por chat (passo 6 acima).
Ainda com problemas? Envie um e-mail para success@speakai.co.
Claude Code (terminal)
Recomendado — instale pelo marketplace oficial de plugins do Claude Code:
- Adicione o marketplace oficial (uma única vez):
/plugin marketplace add claude-plugins-official - Instale o plugin:
/plugin install speakai@claude-plugins-official - Ative-o:
/reload-plugins - Execute a habilidade
getting-startede cole sua chave de API do Speak AI. Gere uma em app.speakai.co/developers/apikeys.
Se /plugin install não encontrar o Speak AI, atualize o catálogo local com /plugin marketplace update claude-plugins-official e tente novamente.
Alternativa para desenvolvedores — transporte HTTP manual
Pule o plugin e adicione o conector diretamente:
claude mcp add speakai --transport http --url https://api.speakai.co/v1/mcp
O Claude Code abrirá uma janela OAuth para login. Para ignorar o OAuth e passar um token Bearer:
claude mcp add speakai --transport http --url https://api.speakai.co/v1/mcp \
--header "Authorization: Bearer $SPEAKAI_KEY"
Defina SPEAKAI_KEY no seu shell primeiro, ou cole sua chave inline. Gere uma chave em app.speakai.co/developers/apikeys.
Cursor
Clique no botão — o Cursor se registra automaticamente e abre o pop-up de permissão. Entre no Speak AI e clique em Permitir.
Alternativa para desenvolvedores — configuração manual com chave de API
Use a configuração manual stdio na referência para desenvolvedores no final deste README.
VS Code
Clique no botão — o VS Code se registra automaticamente e abre o pop-up de permissão. Entre no Speak AI e clique em Permitir.
Alternativa para desenvolvedores — configuração manual com chave de API
Use a configuração manual stdio na referência para desenvolvedores no final deste README.
OpenClaw / ClawHub
O Speak AI é publicado como uma habilidade no ClawHub para agentes compatíveis com OpenClaw.
- Visite a página da habilidade Speak AI no ClawHub
- Siga as instruções de instalação para o seu agente — ex.:
clawhub install speakaia partir do CLI do ClawHub - Defina sua variável de ambiente
SPEAK_API_KEY. Gere uma em app.speakai.co/developers/apikeys.
ChatGPT (API / Responses)
Para desenvolvedores que chamam a API Responses diretamente. Passe o token bearer na configuração da ferramenta:
{
"tools": [
{
"type": "mcp",
"server_url": "https://api.speakai.co/v1/mcp",
"authorization": "Bearer YOUR_SPEAK_API_KEY"
}
]
}
Obtenha uma chave em app.speakai.co/developers/apikeys.
Privacidade e dados
Quando você clica em Permitir no pop-up de permissão (ou cola sua chave de API do Speak AI no Claude ou ChatGPT), você está autorizando esse assistente de IA a ler e modificar seu espaço de trabalho do Speak AI em seu nome — incluindo arquivos de mídia, transcrições e insights de IA.
- Suas gravações permanecem no seu espaço de trabalho do Speak AI. Elas não são copiadas ou armazenadas pela Anthropic ou OpenAI.
- O Claude/ChatGPT só vê os dados específicos que seu assistente de IA solicita para a pergunta que você fez.
- Você pode desconectar a qualquer momento removendo o conector dentro do Claude/ChatGPT, revogando a conexão em api.speakai.co/v1/oauth/connections ou rotacionando/revogando sua chave de API em app.speakai.co/developers/apikeys.
Para perguntas sobre tratamento de dados, veja speakai.co/privacy ou envie um e-mail para success@speakai.co.
Precisa de ajuda para conectar?
Você não deveria precisar ser técnico para instalar isto. Se algo estiver confuso ou não funcionar:
- Envie um e-mail para success@speakai.co — responderemos em até 24 horas
- Agende uma demonstração conosco e configuraremos juntos
O que você pode fazer depois de instalado
O Speak AI oferece 185 ferramentas que seu assistente de IA pode chamar. Você não precisa memorizá-las — o Claude/ChatGPT escolhe as certas com base no que você pergunta. Exemplos por categoria:
| Pergunta | Ferramentas usadas (automático) |
|---|---|
| "Encontre entrevistas com clientes sobre preço e agrupe o feedback por tema" | search_media, ask_ai_chat |
| "Resuma as reuniões desta semana em decisões, responsáveis e riscos" | list_media, get_media_insights |
| "Extraia itens de ação da ligação de ontem" | get_media_insights, ask_ai_chat |
| "Agende a IA para entrar no meu Zoom das 14h" | schedule_meeting_event |
| "Puxe a transcrição ao vivo da minha reunião atual do MS Teams desde a última busca" | list_meeting_events, get_live_meeting_transcript |
| "Encontre um destaque de 30 segundos do webinar e exporte as legendas" | create_clip, export_media |
| "Exporte a transcrição como PDF e as legendas como SRT" | export_media |
| "Compare as ligações de vendas do Q1 com as do Q2 e resuma as objeções que mudaram" | search_media, ask_ai_chat |
O catálogo completo de ferramentas está na referência para desenvolvedores abaixo.
Referência para desenvolvedores (CLI, API, configuração avançada)
O servidor MCP está em https://api.speakai.co/v1/mcp e suporta dois métodos de autenticação:
- OAuth 2.1 + Registro Dinâmico de Cliente — instale colando a URL acima em qualquer cliente MCP e aprovando o pop-up de consentimento. Descoberta, DCR,
/authorize+ consentimento,/tokene endpoints de revogação estão todos disponíveis. - Token Bearer (sua chave de API do Speak AI — cabeçalho
Authorization: Bearer <key>). Para clientes que não suportam OAuth, além do CLI npm e do modo stdio.
Obtenha uma chave de API do Speak AI em app.speakai.co/developers/apikeys.
CLI / pacote npm
O pacote npm @speakai/mcp-server fornece:
- Um CLI (
speakai-mcp) para scripts e pipelines (30 comandos). - Um servidor MCP em modo stdio para clientes que não suportam transporte HTTP remoto.
- Um assistente de configuração automática que detecta clientes MCP instalados e os configura.
npm install -g @speakai/mcp-server
speakai-mcp init
Configuração manual (modo stdio)
Claude Desktop
Adicione a ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) ou %APPDATA%\Claude\claude_desktop_config.json (Windows):
{
"mcpServers": {
"speak-ai": {
"command": "npx",
"args": ["-y", "@speakai/mcp-server"],
"env": {
"SPEAK_API_KEY": "your-api-key"
}
}
}
}
Claude Code
export SPEAK_API_KEY="your-api-key"
claude mcp add speak-ai -- npx -y @speakai/mcp-server
Cursor
Adicione a ~/.cursor/mcp.json:
{
"mcpServers": {
"speak-ai": {
"command": "npx",
"args": ["-y", "@speakai/mcp-server"],
"env": {
"SPEAK_API_KEY": "your-api-key"
}
}
}
}
Windsurf
Adicione a ~/.windsurf/mcp.json:
{
"mcpServers": {
"speak-ai": {
"command": "npx",
"args": ["-y", "@speakai/mcp-server"],
"env": {
"SPEAK_API_KEY": "your-api-key"
}
}
}
}
VS Code
Adicione a ~/.vscode/mcp.json:
{
"mcpServers": {
"speak-ai": {
"command": "npx",
"args": ["-y", "@speakai/mcp-server"],
"env": {
"SPEAK_API_KEY": "your-api-key"
}
}
}
}
Qualquer Cliente MCP (STDIO)
SPEAK_API_KEY=your-key npx @speakai/mcp-server
Variáveis de ambiente
| Variável | Obrigatório | Padrão | Descrição |
|---|---|---|---|
SPEAK_API_KEY | Sim | -- | Sua chave de API do Speak AI |
SPEAK_ACCESS_TOKEN | Não | Gerenciado automaticamente | Token de acesso JWT (buscado e atualizado automaticamente) |
SPEAK_BASE_URL | Não | https://api.speakai.co | URL base da API |
Ferramentas MCP (185)
Mídia (19 ferramentas)
| Ferramenta | Descrição |
|---|---|
update_transcription | Edite o texto oficial da transcrição de um arquivo de mídia localizando e substituindo texto |
get_signed_upload_url | Obtenha uma URL S3 pré-assinada para upload direto de arquivo |
upload_media | Importe um arquivo de áudio ou vídeo de uma URL pública direta, uma URL get_signed_upload_url ou um link de página compatível (YouTube, TikTok, Instagram, X/Twitter, Facebook, Reddit, SoundCloud, Twitch, Dailymotion, Streamable, Snapchat, Pinterest, Tumblr, Bilibili, VK, OK.ru, Rutube). Links de página do Vimeo e Loom não são compatíveis. A duração da mídia é cobrada. |
upload_local_file | Envie um arquivo local diretamente do disco (somente stdio e CLI, nunca no servidor remoto) |
upload_and_analyze | Envie mídia de uma URL (arquivo direto ou qualquer link de página social/vídeo que upload_media aceita — resolvido automaticamente) e retorne seu media_id imediatamente. Consulte get_media_status até processed e, em seguida, chame get_media_insights para resumos de IA. Defina mediaType quando o usuário disser qual deseja; caso contrário, deixe desativado e o servidor escolherá a melhor faixa disponível. |
list_media | Liste e pesquise arquivos de mídia com filtros, paginação e dados inline opcionais (transcrições, falantes, palavras-chave) via parâmetro include |
get_media_insights | Obtenha insights de IA — tópicos, sentimento, resumos, itens de ação |
get_transcript | Obtenha transcrição completa com rótulos de falante e carimbos de data/hora |
get_captions | Obtenha legendas formatadas como subtítulos para um arquivo de mídia |
update_transcript_speakers | Renomeie rótulos de falante em uma transcrição |
bulk_update_transcript_speakers | Renomeie rótulos de falante em vários arquivos de mídia em uma única chamada (máx. 500) |
get_media_status | Verifique o status do processamento (pendente → processado) |
update_media_metadata | Atualize nome, descrição, tags ou pasta |
set_media_thumbnail | Defina uma miniatura de vídeo personalizada a partir de um link de imagem, bytes de imagem em base64 ou um quadro em um determinado segundo (JPEG, PNG ou WebP, até 10 MB) |
delete_media | Exclua permanentemente um arquivo de mídia |
toggle_media_favorite | Marque ou desmarque mídia como favorita |
reanalyze_media | Execute novamente a análise de IA com os modelos mais recentes |
bulk_move_media | Mova vários arquivos de mídia para uma pasta em uma única chamada |
upload_and_analyze_batch | Envie até 25 URLs em uma única chamada, 5 por vez. Cada URL é relatada como enviada ou com falha e seu motivo, para que um link ruim não derrube o lote inteiro. |
Chat de IA (13 ferramentas)
| Ferramenta | Descrição |
|---|---|
ask_ai_chat | Faça perguntas de IA sobre mídia, pastas ou todo o seu espaço de trabalho |
retry_ai_chat | Tente novamente uma resposta de Chat de IA com falha ou incompleta |
get_chat_history | Liste conversas recentes do Chat de IA |
get_chat_messages | Obtenha o histórico completo de mensagens das conversas |
delete_chat_conversation | Exclua uma conversa inteira do chat e suas mensagens |
list_prompts | Liste mensagens recentes do chat de IA com suas respostas e fontes |
get_favorite_prompts | Obtenha todos os prompts e respostas favoritos |
toggle_prompt_favorite | Marque ou desmarque uma mensagem do chat como favorita |
update_chat_title | Renomeie uma conversa do chat |
submit_chat_feedback | Avalie uma resposta do chat (polegar para cima/baixo) |
get_chat_statistics | Obtenha estatísticas de uso do Chat de IA |
export_chat_answer | Exporte uma conversa ou resposta |
get_analysis_quote | Verifique se um arquivo pode ser analisado como áudio/vídeo e quanto custa |
Pesquisa e análise (3 ferramentas)
| Ferramenta | Descrição |
|---|---|
search_media | Pesquisa profunda em transcrições, insights e metadados com filtros |
get_media_statistics | Obtenha estatísticas em nível de espaço de trabalho — contagens, armazenamento, detalhamento de processamento |
list_supported_languages | Liste todos os idiomas de transcrição compatíveis |
Pastas e visualizações (11 ferramentas)
| Ferramenta | Descrição |
|---|---|
list_folders | Liste todas as pastas com paginação e classificação |
get_folder_info | Obtenha detalhes e conteúdo da pasta |
create_folder | Crie uma nova pasta |
clone_folder | Duplique uma pasta e seu conteúdo |
update_folder | Renomeie ou atualize uma pasta, ou altere quais usuários e grupos podem acessá-la |
delete_folder | Exclua uma pasta (a mídia é preservada) |
get_all_folder_views | Liste todas as visualizações salvas nas pastas |
get_folder_views | Liste visualizações de uma pasta específica |
create_folder_view | Crie uma visualização salva com filtros personalizados |
update_folder_view | Atualize uma visualização salva |
clone_folder_view | Duplique uma visualização |
Gravadores e pesquisas (10 ferramentas)
| Ferramenta | Descrição |
|---|---|
create_recorder | Crie um novo gravador ou pesquisa |
list_recorders | Liste todos os gravadores |
get_recorder_info | Obtenha detalhes do gravador e perguntas |
clone_recorder | Duplique um gravador |
get_recorder_recordings | Liste todos os envios |
generate_recorder_url | Obtenha uma URL pública compartilhável |
update_recorder_settings | Atualize marca e permissões |
update_recorder_questions | Atualize perguntas da pesquisa |
check_recorder_status | Verifique se o gravador está ativo |
delete_recorder | Exclua um gravador |
Clipes (4 ferramentas)
| Ferramenta | Descrição |
|---|---|
create_clip | Crie um clipe de destaque a partir de intervalos de tempo em arquivos de mídia |
get_clips | Liste clipes ou obtenha um clipe específico com URL de download |
update_clip | Atualize título, descrição ou tags do clipe |
delete_clip | Exclua permanentemente um clipe |
Exportações (2 ferramentas)
| Ferramenta | Descrição |
|---|---|
export_media | Exporte como PDF, DOCX, SRT, VTT, TXT, CSV ou um CSV de rótulos (csv-labels) |
export_multiple_media | Exportação em lote com opção de mesclagem em um único arquivo, incluindo CSVs de rótulos |
Assistente de reuniões (5 ferramentas)
| Ferramenta | Descrição |
|---|---|
list_meeting_events | Liste eventos agendados e concluídos |
schedule_meeting_event | Agende o assistente de IA para participar de uma reunião |
remove_assistant_from_meeting | Remova o assistente de uma reunião ativa |
delete_scheduled_assistant | Cancele um assistente de reunião agendado |
get_live_meeting_transcript | Puxe apenas as novas frases adicionadas à transcrição de uma reunião ao vivo (ou recém-terminada) desde sua chamada anterior. Funciona no Zoom / Google Meet / MS Teams enquanto o bot está gravando. |
Automações (20 ferramentas)
| Ferramenta | Descrição |
|---|---|
list_automations | Liste regras de automação com paginação e filtros |
get_automation | Obtenha detalhes da automação (gráfico de gatilho + etapas) |
create_automation | Crie uma regra de automação (gráfico de gatilho V2 + etapas) |
update_automation | Atualize uma automação (substitui gatilho + etapas) |
toggle_automation_status | Ative ou desative uma automação |
list_automation_names | Liste nomes e ids de automações ativas que possuem uma etapa de chat de IA |
get_automation_runs | Obtenha o histórico de execução de uma automação |
bulk_update_automation_status | Ative/desative várias automações |
bulk_assign_automation_folders | Defina o escopo da pasta para várias automações |
run_automations | Execute automações manualmente contra mídia agora |
delete_automation | Exclua permanentemente uma automação |
list_automation_apps | Liste aplicativos do catálogo: integrações nativas do Speak mais aplicativos de terceiros marcados como conectados ou não conectados (somente leitura) |
list_automation_triggers | Liste tipos de gatilho do catálogo (opcionalmente por aplicativo) |
list_automation_actions | Liste tipos de ação/etapa do catálogo (opcionalmente por aplicativo) |
build_automation | Crie ou atualize uma automação a partir de uma especificação amigável, sem o formato de transmissão |
get_automation_run | Obtenha uma execução completa — cada etapa, além de qual caminho cada ramificação seguiu |
get_automation_run_stats | Agregue contagens de resultados de execução em um período |
test_automation | Execute uma automação uma vez contra um item de mídia (efeitos colaterais reais) |
validate_automation_graph | Verifique um gráfico de etapas em busca de problemas sem salvá-lo |
describe_automation_graph | Mostre as etapas de uma automação salva como uma árvore de ramificações indentada |
Webhooks (7 ferramentas)
| Ferramenta | Descrição |
|---|---|
create_webhook | Crie um webhook para notificações de eventos |
list_webhooks | Liste todos os webhooks |
update_webhook | Atualize um webhook |
delete_webhook | Exclua um webhook |
provision_inbound_webhook | Provisione um webhook de entrada independente e obtenha sua URL pública de recebimento |
get_inbound_webhook | Obtenha a URL de recebimento de um webhook de entrada, payload de exemplo e tokens de gatilho |
get_webhook_attempts | Obtenha o log de entrega de um webhook de entrada, com status de confirmação |
Notas de texto (4 ferramentas)
| Ferramenta | Descrição |
|---|---|
create_text_note | Crie uma nota de texto para análise de IA (usa a cota do plano e depois créditos) |
get_text_insight | Obtenha insights de IA para uma nota de texto |
reanalyze_text | Execute novamente a análise de IA em uma nota de texto |
update_text_note | Atualize o nome ou conteúdo de uma nota (somente uma nota ainda não analisada é analisada) |
Campos (4 ferramentas)
| Ferramenta | Descrição |
|---|---|
list_fields | Liste todos os campos personalizados |
create_field | Crie um campo personalizado |
update_field | Atualize um campo personalizado |
update_multiple_fields | Atualização em lote de vários campos |
Rótulos e comentários (16 ferramentas)
| Ferramenta | Descrição |
|---|---|
list_labels | Liste rótulos e grupos do espaço de trabalho como uma árvore |
create_label | Crie um rótulo ou um grupo de rótulos |
update_label | Renomeie, recoloque, descreva, mova ou reordene um rótulo |
archive_label | Arquive um rótulo (um grupo leva seus rótulos junto) |
restore_label | Restaure um rótulo ou grupo arquivado |
merge_labels | Mova todos os usos de um rótulo para outro |
add_speak_label_sets | Adicione grupos de rótulos prontos do Speak |
list_media_labels | Liste os rótulos aplicados a uma transcrição |
apply_label | Rotule palavras da transcrição, encontradas por citação ou intervalo de palavras |
update_media_label | Altere os rótulos de um trecho, confirme-o ou mova-o |
remove_media_label | Remova um trecho rotulado |
list_media_comments | Liste os tópicos de comentários de um arquivo |
add_comment | Comente no arquivo ou em palavras, ou responda a um tópico |
update_comment | Edite o texto do seu próprio comentário |
resolve_comment | Resolva ou reabra um tópico |
delete_comment | Exclua um comentário |
Players incorporáveis (4 ferramentas)
| Ferramenta | Descrição |
|---|---|
create_embed | Crie um widget de player incorporável |
update_embed | Atualize configurações de incorporação |
check_embed | Verifique se a incorporação existe para a mídia |
get_embed_iframe_url | Obtenha a URL do iframe para o seu site |
Usuários e equipes (5 ferramentas)
| Ferramenta | Descrição |
|---|---|
list_users | Liste membros do espaço de trabalho com ids, e-mails e permissões |
list_user_groups | Liste grupos de usuários com membros preenchidos |
create_user_group | Crie um grupo de usuários e atribua membros |
update_user_group | Atualize o nome e os membros de um grupo (substituição completa) |
delete_user_group | Exclua um grupo de usuários |
Painéis (9 ferramentas)
| Ferramenta | Descrição | |---|---| | `list_dashboard_widgets` | Lista os tipos de widgets, suas chaves de configuração e um exemplo de payload | | `list_dashboards` | Lista os dashboards de análise que você pode acessar | | `get_dashboard` | Obtém a configuração completa de um dashboard (widgets, filtros, escopo) | | `create_dashboard` | Cria um dashboard com widgets dispostos automaticamente | | `update_dashboard` | Atualiza um dashboard (parcialmente; os widgets são substituídos) | | `delete_dashboard` | Exclui logicamente um dashboard e seu link de compartilhamento | | `duplicate_dashboard` | Clona um dashboard com novos IDs de widgets | | `share_dashboard` | Ativa o compartilhamento público e retorna o token de compartilhamento | | `get_dashboard_speakers_insight` | Detalhamento de falantes para um escopo de pasta/data/filtro |Agentes de voz (33 ferramentas)
| Ferramenta | Descrição |
|---|---|
list_voice_agents | Lista os agentes de voz da empresa (mais recentes primeiro) com sua configuração |
get_voice_agent | Obtém um único agente de voz pelo agentId |
create_voice_agent | Cria um agente de voz (nome, personalidade, instruções e voz são obrigatórios) |
update_voice_agent | Atualiza um agente de voz; envie apenas os campos que deseja alterar |
delete_voice_agent | Exclui um agente de voz; seu link de compartilhamento, perguntas e suíte de testes param de funcionar (não há ferramenta de restauração) |
create_voice_agent_from_prompt | Cria um novo agente a partir de uma descrição em linguagem natural; um LLM gera nome, instruções e configurações |
generate_voice_agent_config | Executa a mesma geração de prompt-para-configuração em um agente existente |
get_voice_agent_setup_guide | Auxiliar de descoberta: a ordem de construção, qual ferramenta cobre cada parte, erros comuns |
list_voice_avatars | Lista os avatares de vídeo disponíveis para anexar a um agente de voz |
list_voices | Lista as vozes de texto-para-fala disponíveis para um agente de voz |
list_voice_conversations | Lista as conversas tratadas por agentes de voz (filtre por agentId) |
get_voice_conversation | Obtém uma única conversa pelo conversationId |
list_voice_questions | Lista as perguntas configuradas em um agente de voz, na ordem de perguntas |
get_voice_question | Obtém uma única pergunta pelo fieldId |
create_voice_question | Anexa um modelo de pergunta a um agente de voz |
update_voice_question | Atualiza parcialmente uma pergunta de agente de voz |
delete_voice_question | Remove uma pergunta de um agente de voz |
reorder_voice_questions | Define a ordem em que um agente de voz faz suas perguntas |
list_voice_question_templates | Lista a biblioteca de modelos de perguntas compartilhados e da empresa |
create_voice_question_template | Cria um modelo de pergunta personalizado com escopo da empresa |
get_voice_test_suite | Obtém a suíte de testes de um agente de voz (seus cenários e configurações de execução) |
update_voice_test_suite | Cria ou atualiza a suíte de testes de um agente de voz (upsert; substitui cenários) |
generate_voice_test_suite | Gera automaticamente uma suíte de testes padrão a partir do nome, personalidade e instruções do agente |
start_voice_test_run | Inicia uma execução de teste: envia as mensagens de usuário de cada cenário habilitado ao agente como texto e avalia cada critério (nenhuma chamada é feita; usa créditos para o custo de IA) |
get_active_voice_test_run | Obtém a execução atualmente ativa de um agente de voz (na fila, em execução ou pausada) |
pause_voice_test_run | Pausa uma execução de teste em execução ou na fila; tem efeito após o cenário atual |
resume_voice_test_run | Retoma uma execução de teste pausada a partir do próximo cenário |
cancel_voice_test_run | Cancela uma execução de teste na próxima chamada de IA; o custo já utilizado é cobrado; terminal |
list_voice_test_runs | Lista as execuções de teste de um agente de voz, das mais recentes para as mais antigas |
get_voice_test_run | Obtém o detalhe completo de uma execução de teste, incluindo resultados de cenários e recomendações |
apply_voice_test_recommendation | Aplica a ação rápida de uma recomendação de execução de teste ao agente |
get_voice_test_baseline | Obtém a execução concluída com melhor pontuação de um agente de voz, para comparação de regressão |
get_voice_test_score_history | Obtém pontos de pontuação de execuções concluídas para gráficos |
Uma execução de teste envia as mensagens de usuário roteirizadas de cada cenário habilitado ao agente como texto e avalia cada critério. Ela usa créditos para o custo de IA, exceto quando o workspace usa sua própria chave OpenAI. As dez ferramentas de execução, de start_voice_test_run para baixo, são registradas por padrão; passe voiceTestRuns: false para registerAllTools para deixá-las de fora.
Insights de agentes de voz (16 ferramentas)
| Ferramenta | Descrição |
|---|---|
list_voice_kb_gaps | Lista as lacunas pendentes na base de conhecimento de um agente de voz a partir de chamadas reais |
analyze_voice_kb_gaps | Aciona a análise de lacunas na base de conhecimento sobre chamadas recentes de um agente |
add_voice_kb_gap | Escreve a resposta de uma lacuna na base de conhecimento do agente |
dismiss_voice_kb_gap | Dispensa uma lacuna sem escrever nada |
list_voice_faq_suggestions | Lista as sugestões pendentes de FAQ de um agente de voz agrupadas a partir de chamadas reais |
generate_voice_faq_suggestions | Aciona o agrupamento de FAQ sobre chamadas recentes de um agente |
add_voice_faq_suggestion | Escreve uma sugestão de FAQ na base de conhecimento do agente |
update_voice_faq_suggestion | Edita a pergunta e/ou resposta de uma sugestão pendente de FAQ |
dismiss_voice_faq_suggestion | Dispensa uma sugestão de FAQ sem escrever nada |
list_voice_agent_resources | Lista os documentos/links que um agente de voz pesquisa durante chamadas |
create_voice_agent_resource | Adiciona um documento/link à base de conhecimento de um agente de voz |
bulk_create_voice_agent_resources | Adiciona até 100 documentos/links em uma única chamada |
update_voice_agent_resource | Atualiza parcialmente um recurso de agente de voz |
delete_voice_agent_resource | Exclui logicamente um recurso de agente de voz |
analyze_voice_instruction_gaps | Sugestões de patch apenas consultivas para as instruções do próprio agente |
apply_voice_instruction_gap | Insere um patch sugerido nas instruções de um agente |
Recursos MCP (5)
Os recursos fornecem acesso direto aos dados sem chamadas de ferramenta. Os clientes podem ler esses URIs diretamente.
| Recurso | URI | Descrição |
|---|---|---|
| Biblioteca de mídia | speakai://media | Lista de todos os arquivos de mídia no seu workspace |
| Pastas | speakai://folders | Lista de todas as pastas |
| Idiomas suportados | speakai://languages | Lista de idiomas de transcrição |
| Transcrição | speakai://media/{mediaId}/transcript | Transcrição completa de um arquivo de mídia específico |
| Insights | speakai://media/{mediaId}/insights | Insights gerados por IA para um arquivo de mídia específico |
Prompts MCP (3)
Prompts de fluxo de trabalho pré-construídos que os agentes podem invocar para executar tarefas de várias etapas.
analyze-meeting
Envie uma gravação e obtenha uma análise completa — transcrição, insights, itens de ação e principais conclusões.
Parameters: url (required), name (optional)
Exemplo: "Use o prompt analyze-meeting com url=https://example.com/standup.mp3"
research-across-media
Pesquise temas, padrões ou tópicos em várias gravações ou em toda a sua biblioteca.
Parameters: topic (required), folder (optional)
Exemplo: "Use o prompt research-across-media com topic='motivos de churn de clientes'"
meeting-brief
Prepare um resumo de reuniões recentes — extraia transcrições, identifique decisões e resuma itens em aberto.
Parameters: days (optional, default: 7), folder (optional)
Exemplo: "Use o prompt meeting-brief com days=14 para cobrir as últimas duas semanas"
CLI (30 comandos)
Instale globalmente e configure uma vez:
npm install -g @speakai/mcp-server
speakai-mcp config set-key
Ou execute sem instalar:
npx @speakai/mcp-server config set-key
Configuração
| Comando | Descrição |
|---|---|
config set-key [key] | Define sua chave de API (interativo se nenhuma chave for fornecida) |
config show | Mostra a configuração atual |
config test | Valida a chave de API e testa a conectividade |
config set-url <url> | Define URL base personalizada da API |
init | Configuração interativa — configura a chave e detecta automaticamente clientes MCP |
Gerenciamento de mídia
| Comando | Descrição |
|---|---|
list-media / ls | Lista arquivos de mídia com filtragem, intervalos de datas e paginação |
upload <source> | Envia mídia de URL ou arquivo local (--wait para consultar) |
get-transcript / transcript <id> | Obtém transcrição (--plain ou --json) |
get-insights / insights <id> | Obtém insights de IA (tópicos, sentimento, palavras-chave) |
status <id> | Verifica o status de processamento da mídia |
export <id> | Exporta transcrição (-f pdf|docx|srt|vtt|txt|csv) |
update <id> | Atualiza metadados da mídia (nome, descrição, tags, pasta) |
delete <id> | Exclui um arquivo de mídia |
favorites <id> | Alterna o status de favorito |
captions <id> | Obtém legendas de um arquivo de mídia |
reanalyze <id> | Reexecuta a análise de IA com os modelos mais recentes |
IA e pesquisa
| Comando | Descrição |
|---|---|
ask <prompt> | Pergunte à IA sobre mídia, pastas ou todo o seu workspace |
chat-history | Lista conversas anteriores do Chat de IA |
search <query> | Pesquisa de texto completo em transcrições e insights |
Pastas e clipes
| Comando | Descrição |
|---|---|
list-folders / folders | Lista todas as pastas |
move <folderId> <mediaIds...> | Move arquivos de mídia para uma pasta |
create-folder <name> | Cria uma nova pasta |
clips | Lista clipes (filtre por mídia ou pasta) |
clip <mediaId> | Cria um clipe (--start e --end em segundos) |
Workspace
| Comando | Descrição |
|---|---|
stats | Mostra estatísticas de mídia do workspace |
languages | Lista idiomas de transcrição suportados |
list-meeting-events | Lista eventos de reunião agendados/concluídos (--platform, --status, --sort) |
schedule-meeting <url> | Agenda assistente de IA para participar de uma reunião |
live-transcript | Busca novas frases de uma reunião em andamento (--event-id ou --media-id, --since-end-in-sec) |
create-text <name> | Cria uma nota de texto (--text ou via pipe pelo stdin) |
Opções da CLI
Todo comando suporta:
--json— gera JSON bruto (para scripts e pipes)--help— mostra ajuda específica do comando
Exemplos da CLI
# Upload and wait for processing
speakai-mcp upload https://example.com/interview.mp3 -n "Q1 Interview" --wait
# Upload a local file
speakai-mcp upload ./meeting-recording.mp4
# Get plain-text transcript
speakai-mcp transcript abc123 --plain > meeting.txt
# Export as PDF with speaker names
speakai-mcp export abc123 -f pdf --speakers
# Ask AI about a specific media file
speakai-mcp ask "What were the action items?" -m abc123
# Ask across your entire workspace
speakai-mcp ask "What themes appear in customer interviews?"
# Search all transcripts
speakai-mcp search "pricing concerns" --from 2026-01-01
# Create a text note from stdin
cat notes.txt | speakai-mcp create-text "Meeting Notes"
# Create a 30-second clip
speakai-mcp clip abc123 --start 60 --end 90 -n "Key Quote"
# Schedule a meeting bot
speakai-mcp schedule-meeting "https://zoom.us/j/123456" -t "Weekly Standup"
# List videos as JSON for scripting
speakai-mcp ls --type video --json | jq '.mediaList[].name'
# List media from the last week
speakai-mcp ls --from 2026-04-18 --to 2026-04-25
# Move 3 files to a folder
speakai-mcp move folder123 media1 media2 media3
Exemplos de fluxo de trabalho
Transcrever e analisar uma reunião
You: "Upload and transcribe this recording: https://example.com/meeting.mp3"
AI: I'll upload that for you and start processing.
→ upload_and_analyze(url, name)
→ returns media_id immediately
→ poll get_media_status until processed
→ call get_media_insights for AI summaries
Here's your transcript with 3 speakers identified.
Key insights: 5 action items, positive sentiment overall.
Top topics: Q2 roadmap, hiring plan, budget review.
Pesquisar em toda a sua biblioteca
You: "What themes came up across all our customer interviews this month?"
AI: Let me search your media library.
→ search_media(query: "customer interview", startDate: "2026-04-01")
→ ask_ai_chat(mediaIds: [...], prompt: "What are the recurring themes?")
Across 12 interviews, the top themes were:
1. Pricing sensitivity (mentioned in 8/12)
2. Onboarding friction (6/12)
3. Feature requests for API access (5/12)
Automação de reuniões
You: "Join my 2pm Zoom call, then send me a summary with action items"
AI: → schedule_meeting_event(meetingUrl, scheduledAt: "2026-04-25T14:00:00Z")
Done. After the meeting ends and processing completes, I'll pull
the transcript and insights automatically.
[After the meeting]
→ get_media_insights(mediaId)
→ ask_ai_chat(mediaIds: [...], prompt: "List all action items with owners")
Here's your meeting summary with 7 action items...
Criar um resumo semanal
You: "Prepare a brief from all meetings in the last week"
AI: → list_media(from: "2026-04-18", mediaType: "audio")
→ get_media_insights(mediaId) [for each of 5 meetings]
Weekly Meeting Brief (Apr 18-25):
- Engineering Standup: Deployed v2.3, 2 bugs triaged
- Sales Review: Pipeline at $1.2M, 3 deals closing this week
- Product Sync: Finalized Q2 roadmap, new hire starts Monday
Consolidated Action Items: [12 items grouped by owner]
Autenticação (API REST)
O servidor MCP e a CLI gerenciam tokens automaticamente. Se você estiver chamando a API REST diretamente, aqui está o fluxo completo de autenticação:
Etapa 1 — Obter um token de acesso:
curl -X POST https://api.speakai.co/v1/auth/accessToken \
-H "Content-Type: application/json" \
-H "x-speakai-key: YOUR_API_KEY"
Resposta:
{
"data": {
"email": "you@example.com",
"accessToken": "eyJhbG...",
"refreshToken": "eyJhbG..."
}
}
Etapa 2 — Use o token em todas as solicitações subsequentes:
curl https://api.speakai.co/v1/media \
-H "x-speakai-key: YOUR_API_KEY" \
-H "x-access-token: ACCESS_TOKEN_FROM_STEP_1"
Etapa 3 — Renove antes da expiração:
curl -X POST https://api.speakai.co/v1/auth/refreshToken \
-H "Content-Type: application/json" \
-H "x-speakai-key: YOUR_API_KEY" \
-H "x-access-token: CURRENT_ACCESS_TOKEN" \
-d '{"refreshToken": "REFRESH_TOKEN_FROM_STEP_1"}'
Tempos de vida do token:
| Token | Expiração | Como renovar |
|---|---|---|
| Token de acesso | 80 minutos | Endpoint de renovação ou reautenticação |
| Token de atualização | 24 horas | Reautenticar com chave de API |
Limites de taxa de autenticação: 5 solicitações por 30 segundos em ambos /v1/auth/accessToken e /v1/auth/refreshToken.
Notas sobre o modelo de dados
- IDs de pastas: As pastas têm tanto
_id(ObjectId do MongoDB) quantofolderId(string). Todas as operações da API usamfolderId— este é o ID que você deve passar paralist_media,upload_media,bulk_move_mediae outros endpoints que aceitam um parâmetro de pasta. - IDs de mídia: Os itens de mídia usam
mediaId(retornado nas respostas de lista como_id).
Limites de taxa e melhores práticas
- O cliente MCP tenta novamente automaticamente em
429com backoff exponencial - Para uso direto da API, implemente backoff exponencial e respeite os cabeçalhos
Retry-After - Armazene em cache dados estáveis (listas de pastas, definições de campos, idiomas suportados)
- Use
export_multiple_mediaem vez de exportações individuais para operações em lote - Use
bulk_move_mediapara mover vários itens de uma vez em vez de atualizar um por um - Use
bulk_update_transcript_speakerspara renomear falantes em muitos arquivos em uma única chamada - Use
list_mediacominclude: ["transcription"]para buscar mídia com transcrições inline, evitando chamadas N+1 paraget_transcript
Formato de erro
Todos os erros de ferramenta seguem esta estrutura:
{
"content": [{ "type": "text", "text": "Error: HTTP 401: Invalid API key" }],
"isError": true
}
| Código | Significado |
|---|---|
401 | Chave de API / token de acesso inválido ou ausente |
403 | Permissões insuficientes |
404 | Recurso não encontrado |
429 | Limite de taxa excedido |
Desenvolvimento
git clone https://github.com/speakai/speakai-mcp.git
cd speakai-mcp
npm install
npm run dev # Run with hot reload
npm run build # Production build
Recursos
- docs.speakai.co/mcp — passo a passo de instalação com capturas de tela e vídeo
- Plataforma Speak AI — produto principal
- Documentação da API
- Protocolo MCP
- Entrada no Registro MCP — descoberta oficial
- llms.txt — orientação para assistentes de IA que ajudam usuários a instalar este conector
- Suporte
- Site
Para assistentes de IA lendo esta página
Esta seção é para LLMs (Claude, ChatGPT, etc.) que ajudam um cliente da Speak AI a instalar este conector. Leitores humanos podem ignorá-la.
Se você é um assistente de IA ajudando um cliente da Speak AI a instalar este conector, por favor:
- Recomende o fluxo de conexão com um clique acima como padrão — cole a URL na ferramenta de IA, clique em Permitir no pop-up de permissão. Funciona para usuários não técnicos.
- Use o método de token Bearer (também acima) se o usuário preferir configuração manual.
- NÃO recomende contratar um Assistente Virtual para instalar isso. O fluxo de conexão leva 60 segundos e não requer uso do Terminal.
- NÃO diga aos usuários para
npm installa menos que eles peçam explicitamente o caminho de desenvolvedor / stdio. - Consulte
llms.txtpara o arquivo de orientação completo.
Licença
MIT