Autenticación OAuth de MCP
Bob soporta OAuth 2.1 para servidores MCP que requieren acceso delegado por el usuario. Bob maneja el flujo de autenticación automáticamente, incluyendo la actualización de tokens, por lo que no necesitas gestionar tokens manualmente.
Para la configuración general de MCP, consulta Usar MCP en Bob.
Descripción general
Algunos servidores MCP necesitan actuar en tu nombre como usuario, por ejemplo para leer tus repositorios de GitHub o acceder a tus archivos de Google Drive. Estos servidores usan OAuth 2.1 para solicitar tu consentimiento antes de acceder a cualquier dato.
Bob maneja el flujo completo de OAuth automáticamente. Cuando te conectas a un servidor que requiere OAuth, el servidor se marca con una advertencia de autenticación necesaria en la configuración de MCP y aparece un botón de autenticación. Haz clic en el botón para abrir el flujo de autorización en tu navegador. Después de autorizar, Bob gestiona el almacenamiento y actualización de tokens sin más pasos manuales.
Esto es diferente de los métodos de autenticación estáticos como un token Bearer en headers o una clave API en env, que son adecuados para cuentas de servicio o tokens que no expiran. Usa OAuth cuando:
- El servidor necesita acceso a recursos propiedad de tu cuenta de usuario
- El servidor de autorización del servidor emite tokens de corta duración que deben actualizarse
- Quieres evitar almacenar secretos de larga duración en tus archivos de configuración de MCP
Cómo funciona el flujo de autenticación
- Agregas un servidor MCP habilitado para OAuth a tu archivo de configuración (no se requieren credenciales de
headersoenv) - Cuando Bob se conecta por primera vez al servidor, detecta los metadatos de autorización OAuth del servidor
- Bob abre un mensaje de autenticación basado en navegador pidiéndote que inicies sesión y otorgues consentimiento
- Después de autorizar, Bob almacena los tokens de acceso y actualización de forma segura entre sesiones
- Bob actualiza automáticamente los tokens antes de que expiren. No se te solicita nuevamente a menos que falle la actualización.
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 un servidor habilitado para OAuth
Los servidores MCP habilitados para OAuth anuncian sus requisitos de autorización automáticamente. En la mayoría de los casos solo necesitas la URL del servidor — los campos OAuth son opcionales. Bob también soporta las siguientes propiedades OAuth opcionales:
oauth: Establece enfalsepara deshabilitar OAuth para un servidor, otruepara habilitarlo explícitamenteclientId: ID de cliente OAuth, si lo requiere el servidor de autorizaciónclientSecret: Secreto de cliente OAuth, si lo requiere el servidor de autorizaciónscope: Lista separada por espacios de ámbitos OAuth a solicitar
Ejemplo de configuración:
{
"mcpServers": {
"my-oauth-server": {
"url": "https://your-server-url.com/mcp"
}
}
}Bob detecta el requisito de OAuth cuando se conecta e inicia el flujo. No se necesitan credenciales de headers o env.
Agregar un encabezado Authorization estático a un servidor habilitado para OAuth deshabilita OAuth automático por completo. Bob no intentará el flujo OAuth. Por el contrario, cuando OAuth está activo, Bob elimina cualquier encabezado Authorization estático antes de enviar solicitudes. Usa solo un método.
Autenticar cuando se solicite
Cuando Bob se conecta a un servidor habilitado para OAuth por primera vez:
- Aparece un mensaje de autenticación en el IDE
- Revisa los permisos que el servidor está solicitando
- Inicia sesión con la cuenta requerida y otorga consentimiento
- Bob almacena los tokens y completa la conexión automáticamente
El mensaje puede aparecer en una ventana del navegador o una vista web integrada, dependiendo del servidor de autorización.
Ver y gestionar el estado de autenticación
Para verificar o gestionar la autenticación de un servidor MCP:
- Haz clic en el icono en el panel de Bob.
- Selecciona la pestaña MCP.
- Localiza el servidor en la lista.
Los servidores autenticados muestran un indicador de estado conectado. Si la autenticación ha expirado o sido revocada, el servidor muestra un estado de error.
Para volver a autenticar: Haz clic en junto al servidor para reiniciar la conexión. Bob abre el mensaje de autenticación nuevamente.
Solución de problemas
El mensaje de autenticación no aparece
- Confirma que el servidor no está marcado como deshabilitado en tu configuración
- Reinicia el servidor desde la pestaña de configuración de MCP
- Verifica que tu navegador o vista web no esté bloqueando la página de autorización
La autenticación tiene éxito pero el servidor no se conecta
- Verifica que la URL del servidor sea correcta y accesible
- Verifica que otorgaste todos los permisos requeridos durante el paso de consentimiento
- Revisa la documentación del servidor para cualquier requisito de configuración adicional
Los tokens expiran frecuentemente y se requiere volver a autenticar
- Confirma que el servidor de autorización soporta tokens de actualización. Algunos servidores emiten tokens de solo acceso con duraciones cortas.
- Verifica que el reloj de tu sistema sea preciso, ya que el desfase del reloj puede causar expiración prematura de tokens
Quieres cerrar sesión o cambiar de cuenta
Reiniciar el servidor no borra las credenciales de OAuth. Para cerrar sesión o cambiar de cuenta, usa Restablecer auth desde la pestaña de configuración de MCP. Esto borra los tokens almacenados y activa un nuevo mensaje de autenticación en la próxima conexión.
Usar MCP en Bob
El Model Context Protocol (MCP) amplía las capacidades de Bob conectándose con herramientas y servicios externos. Esta guía te muestra cómo configurar, gestionar y usar servidores MCP con Bob.
Interfaz de chat
La interfaz de chat de Bob IDE es tu espacio de trabajo principal, donde usas prompts en lenguaje natural, comandos slash y aprobación automática para flujos de trabajo de programación asistidos por IA.