1. Início
  2. Documentação
  3. Erros

Erros

Códigos de erro do MCPTube no MCP e na API REST: chave inválida, cota esgotada, limite do plano, vídeo indisponível, bloqueio do YouTube e serviço fora do ar.

No MCP, erros de ferramenta voltam como resultado com isError: true e a mensagem no texto; erros de transporte usam status HTTP e códigos JSON-RPC. Na API REST, o corpo é sempre {"error": {"code", "message"}}, com códigos estáveis para tratar no seu código.

SituaçãoRESTConta na cota
Chave ou token inválido, revogado ou vencido401 unauthorizedNão
Parâmetro inválido400 invalid_requestNão
URL inválida ou playlist400 invalid_urlNão
Vídeo inexistente, privado ou indisponível404 video_unavailableNão
Recusa do plano: duração, transcrição por IA fora do Pro ou teto mensal403 plan_limitSim
IP bloqueado por abuso403 bannedNão
Cota diária esgotada429 quota_exceededNão
Muitas tentativas com erro em pouco tempo429 failures_exceededNão
O YouTube recusou o servidor503 youtube_blockedNão
Serviço indisponível (banco de dados)503 service_unavailableNão
Erro interno500 internalNão

No MCP, a chamada sem credencial funciona no plano anônimo. O 401 com o cabeçalho WWW-Authenticate, que inicia o login OAuth, vem com credencial inválida, com ?login=1 ou quando um pedido passa do plano anônimo.

429 Too Many Requests (REST)
{
  "error": {
    "code": "quota_exceeded",
    "message": "Limite diário de 20 chamadas atingido. A cota reseta à 0h UTC. Seu plano: Gratuito. O plano Pro tem limites maiores e transcrição por IA: https://mcptube.com"
  }
}
Resultado com isError (MCP)
{
  "isError": true,
  "content": [{
    "type": "text",
    "text": "Erro: Limite diário de 20 chamadas atingido. A cota reseta à 0h UTC. Seu plano: Gratuito. O plano Pro tem limites maiores e transcrição por IA: https://mcptube.com"
  }]
}
Com 503, espere alguns segundos e repita a chamada. Se o cabeçalho Retry-After vier, respeite o tempo indicado.