ConfiguraçãoMCP

Autenticação OAuth MCP

Bob suporta OAuth 2.1 para servidores MCP que requerem acesso delegado pelo usuário. Bob gerencia o fluxo de autenticação automaticamente, incluindo atualização de token, então você não precisa gerenciar tokens manualmente.

Para configuração geral de MCP, consulte Usar MCP no Bob.

Visão geral

Alguns servidores MCP precisam agir em seu nome como usuário, por exemplo para ler seus repositórios GitHub ou acessar seus arquivos do Google Drive. Esses servidores usam OAuth 2.1 para solicitar seu consentimento antes de acessar qualquer dado.

Bob gerencia o fluxo OAuth completo automaticamente. Quando você se conecta a um servidor que requer OAuth, o servidor é marcado com um aviso de autenticação necessária nas configurações MCP e um botão de autenticação aparece. Clique no botão para abrir o fluxo de autorização no seu navegador. Após autorizar, Bob gerencia o armazenamento e atualização de tokens sem mais etapas manuais.

Isso é diferente de métodos de autenticação estáticos como um token Bearer em headers ou uma chave API em env, que são adequados para contas de serviço ou tokens que não expiram. Use OAuth quando:

  • O servidor precisa de acesso a recursos pertencentes à sua conta de usuário
  • O servidor de autorização do servidor emite tokens de curta duração que devem ser atualizados
  • Você quer evitar armazenar segredos de longa duração em seus arquivos de configuração MCP

Como funciona o fluxo de autenticação

  1. Você adiciona um servidor MCP habilitado para OAuth ao seu arquivo de configuração (nenhuma credencial headers ou env necessária)
  2. Quando Bob se conecta pela primeira vez ao servidor, ele detecta os metadados de autorização OAuth do servidor
  3. Bob abre um prompt de autenticação baseado em navegador pedindo para você fazer login e conceder consentimento
  4. Após autorizar, Bob armazena os tokens de acesso e atualização com segurança entre sessões
  5. Bob atualiza automaticamente os tokens antes de expirarem. Você não é solicitado novamente a menos que a atualização falhe.
Bob IDE                     Authorization Server              MCP Server
   |                                |                               |
   |-- connect to server ---------->|                               |
   |<-- OAuth metadata (401) -------|                               |
   |-- open auth prompt ----------->|                               |
   |   (user signs in & consents)   |                               |
   |<-- authorization code ---------|                               |
   |-- exchange for tokens -------->|                               |
   |<-- access + refresh tokens ----|                               |
   |-- authenticated requests --------------------------------->    |
   |   (auto-refresh when needed)                                   |

Configurar um servidor habilitado para OAuth

Servidores MCP habilitados para OAuth anunciam seus requisitos de autorização automaticamente. Na maioria dos casos você só precisa da URL do servidor — campos OAuth são opcionais. Bob também suporta as seguintes propriedades OAuth opcionais:

  • oauth: Defina como false para desabilitar OAuth para um servidor, ou true para habilitá-lo explicitamente
  • clientId: ID do cliente OAuth, se exigido pelo servidor de autorização
  • clientSecret: Segredo do cliente OAuth, se exigido pelo servidor de autorização
  • scope: Lista separada por espaços de escopos OAuth a solicitar

Exemplo de configuração:

{
  "mcpServers": {
    "my-oauth-server": {
      "url": "https://your-server-url.com/mcp"
    }
  }
}

Bob detecta o requisito OAuth quando se conecta e inicia o fluxo. Nenhuma credencial headers ou env é necessária.

Aviso:

Adicionar um cabeçalho Authorization estático a um servidor habilitado para OAuth desabilita OAuth automático completamente. Bob não tentará o fluxo OAuth. Por outro lado, quando OAuth está ativo, Bob remove qualquer cabeçalho Authorization estático antes de enviar requisições. Use apenas um método.

Autenticar quando solicitado

Quando Bob se conecta a um servidor habilitado para OAuth pela primeira vez:

  1. Um prompt de autenticação aparece no IDE
  2. Revise as permissões que o servidor está solicitando
  3. Faça login com a conta necessária e conceda consentimento
  4. Bob armazena os tokens e completa a conexão automaticamente

O prompt pode aparecer em uma janela do navegador ou uma webview incorporada, dependendo do servidor de autorização.

Visualizar e gerenciar status de autenticação

Para verificar ou gerenciar autenticação para um servidor MCP:

  1. Clique no ícone no painel Bob.
  2. Selecione a aba MCP.
  3. Localize o servidor na lista.

Servidores autenticados mostram um indicador de status conectado. Se a autenticação expirou ou foi revogada, o servidor mostra um status de erro.

Para reautenticar: Clique em ao lado do servidor para reiniciar a conexão. Bob abre o prompt de autenticação novamente.

Solução de problemas

O prompt de autenticação não aparece

  • Confirme que o servidor não está marcado como desabilitado em sua configuração
  • Reinicie o servidor da aba de configurações MCP
  • Verifique se seu navegador ou webview não está bloqueando a página de autorização

Autenticação bem-sucedida mas o servidor falha ao conectar

  • Verifique se a URL do servidor está correta e acessível
  • Verifique se você concedeu todas as permissões necessárias durante a etapa de consentimento
  • Revise a documentação do servidor para quaisquer requisitos de configuração adicionais

Tokens expiram frequentemente e reautenticação é necessária

  • Confirme que o servidor de autorização suporta tokens de atualização. Alguns servidores emitem tokens somente de acesso com tempos de vida curtos.
  • Verifique se o relógio do seu sistema está preciso, pois desvio de relógio pode causar expiração prematura de token

Você quer sair ou trocar de conta

Reiniciar o servidor não limpa credenciais OAuth. Para sair ou trocar de conta, use Redefinir auth da aba de configurações MCP. Isso limpa os tokens armazenados e aciona um novo prompt de autenticação na próxima conexão.

Como está este tópico?