Saltar al contenido principal
MCP es un protocolo abierto que permite que Devin utilice cientos de herramientas externas y fuentes de datos. Devin admite 3 métodos de transporte (stdio, SSE y HTTP).

¿Por qué usar MCP?

Con MCP, Devin puede ayudarte a:
  • explorar registros de Sentry, Datadog y Vercel
  • usar Devin como analista de datos en Slack con MCPs de bases de datos
  • investigar problemas en SonarQube, CircleCI y Jam
  • crear en lote tickets en Linear, documentos en Notion, Google Docs (a través de Zapier) y más
  • obtener contexto de e interactuar con Airtable, Stripe y Hubspot
  • ¡mucho más!

Primeros pasos con los MCP

Ve a Settings > MCP Marketplace para activar un MCP.

Consejos de configuración

Para los MCP que se autentican con OAuth, Devin te pedirá que visites una URL para conectar tu cuenta. Recomendamos encarecidamente usar una cuenta de servicio, y no tu cuenta personal, ya que el acceso se compartirá dentro de tu organización.
¿No ves el MCP que estás buscando? ¡Configúralo con la opción “Add Your Own”!¿Tienes problemas? Contáctanos a través de nuestra página de soporte o en support@cognition.ai.

Configurar un servidor MCP personalizado

Si el MCP que necesitas no está en el marketplace, puedes agregar cualquier servidor MCP usando la opción Add Your Own. Devin es compatible con tres tipos de transporte para servidores personalizados:
TransporteMejor paraCampos obligatorios
STDIOServidores locales basados en CLI (p. ej., npx, uvx, Docker)Comando, argumentos, variables de entorno
SSEServidores remotos que utilizan Server-Sent EventsURL del servidor, encabezados
HTTPServidores remotos que utilizan Streamable HTTPURL del servidor, encabezados

Paso a paso: agregar un servidor MCP personalizado

  1. Ve a Settings > MCP Marketplace.
  2. Haz clic en Add Your Own en la parte superior de la página.
  3. Completa los detalles del servidor:
    • Server Name: Un nombre descriptivo para el servidor (por ejemplo, “Internal API Gateway”).
    • Icon (opcional): Un emoji o una URL para utilizar como ícono del servidor.
    • Short Description: Un breve resumen de lo que hace el servidor.
  4. Selecciona el tipo de transporte (STDIO, SSE o HTTP).
  5. Completa los campos de configuración específicos del transporte (consulta el formato de configuración más abajo).
  6. Haz clic en Save para crear el servidor.
  7. Haz clic en Test listing tools para verificar la conexión. Devin creará un entorno de prueba aislado, se conectará a tu servidor e intentará descubrir las herramientas disponibles.
El botón Test listing tools está deshabilitado hasta que guardes tu configuración. Si la validación falla, revisa el mensaje de error mostrado: indicará si el problema está relacionado con la conectividad, la autenticación o un tiempo de espera.

Formato de configuración

Los ejemplos siguientes muestran representaciones JSON de los campos de configuración de cada transporte. En la práctica, los completarás mediante el formulario web: no necesitas escribir ni pegar JSON. El formato JSON se muestra aquí para mayor claridad y como referencia para configuraciones programáticas o basadas en API.

Transporte STDIO

Utiliza STDIO para servidores que se ejecutan como procesos locales. Proporciona el comando para iniciar el servidor, junto con cualquier argumento y variable de entorno. Campos:
  • Command (obligatorio): El ejecutable que se debe ejecutar (por ejemplo, npx, uvx, docker).
  • Arguments: Argumentos de la línea de comandos que se pasan al servidor.
  • Environment Variables: Pares clave-valor definidos en el entorno de proceso del servidor. Úsalas para pasar API keys, tokens o valores de configuración.
Ejemplo — servidor STDIO personalizado con npx:
{
  "transport": "STDIO",
  "command": "npx",
  "args": ["-y", "@example/my-mcp-server"],
  "env_variables": {
    "API_KEY": "your-api-key",
    "API_BASE_URL": "https://internal-api.example.com"
  }
}
Ejemplo: servidor STDIO personalizado con Docker:
{
  "transport": "STDIO",
  "command": "docker",
  "args": ["run", "-i", "--rm", "-e", "DB_CONNECTION_STRING", "my-org/my-mcp-server:latest"],
  "env_variables": {
    "DB_CONNECTION_STRING": "postgresql://user:pass@host:5432/mydb"
  }
}

Transportes SSE y HTTP

Utiliza SSE o HTTP para servidores remotos accesibles a través de la red. Se recomienda HTTP (HTTP en streaming) para nuevas integraciones; SSE se admite para servidores heredados. Campos:
  • Server URL (obligatorio): La URL del endpoint del servidor MCP.
  • Authentication method: Elige entre None, Auth Header u OAuth.
    • Para Auth Header: Proporciona la clave del encabezado (por defecto Authorization) y el valor del encabezado (por ejemplo, Bearer your-token).
    • Para OAuth: Devin te pedirá que completes un flujo de OAuth durante tu primera sesión.
Ejemplo: servidor HTTP remoto con autenticación mediante token Bearer:
{
  "transport": "HTTP",
  "url": "https://mcp.internal-service.example.com/mcp",
  "auth_method": "auth_header",
  "headers": {
    "Authorization": "Bearer your-api-token"
  }
}
Ejemplo — servidor SSE remoto sin autenticación:
{
  "transport": "SSE",
  "url": "https://mcp.example.com/sse"
}
Al elegir entre SSE y HTTP, prefiere HTTP (HTTP con transmisión continua). SSE es un protocolo legado y se está dejando de usar en todo el ecosistema de MCP.

Patrones comunes

Conexión a una API interna

Expón tu API interna como un servidor MCP para que Devin pueda consultarla directamente. Usa el transporte STDIO con un adaptador que traduzca las llamadas a herramientas MCP en solicitudes a la API.
{
  "transport": "STDIO",
  "command": "npx",
  "args": ["-y", "@example/api-mcp-bridge"],
  "env_variables": {
    "API_BASE_URL": "https://api.internal.example.com",
    "API_TOKEN": "your-internal-api-token"
  }
}
Como alternativa, si tu API interna es accesible a través de la red, usa el transporte HTTP:
{
  "transport": "HTTP",
  "url": "https://api.internal.example.com/mcp",
  "headers": {
    "Authorization": "Bearer your-internal-api-token"
  }
}

Conexión a una base de datos

Usa un servidor MCP de base de datos para otorgar a Devin acceso de lectura o escritura a tus datos. Existen muchos servidores mantenidos por la comunidad para las bases de datos más comunes.
{
  "transport": "STDIO",
  "command": "npx",
  "args": ["-y", "@modelcontextprotocol/server-postgres", "postgresql://user:password@host:5432/database"]
}
En bases de datos de producción, utiliza una cadena de conexión de solo lectura o un usuario de base de datos con permisos restringidos. Devin ejecuta consultas basadas en las instrucciones del usuario, por lo que es importante configurar adecuadamente el nivel de acceso.

Conectar una herramienta o script personalizado

Envuelve cualquier herramienta de línea de comandos (CLI) o script como un servidor MCP. Por ejemplo, un servidor basado en Python usando uvx:
{
  "transport": "STDIO",
  "command": "uvx",
  "args": ["my-custom-mcp-server"],
  "env_variables": {
    "CONFIG_PATH": "/path/to/config.json"
  }
}
O un servidor basado en Docker para ejecuciones aisladas:
{
  "transport": "STDIO",
  "command": "docker",
  "args": ["run", "-i", "--rm", "my-org/custom-mcp-server:latest"]
}

Uso de variables de entorno para secretos

Pasa valores confidenciales mediante variables de entorno en lugar de codificarlos de forma fija en los argumentos. La funcionalidad de Secrets de Devin puede administrar estos valores: guarda tus API keys o tokens como secretos y luego haz referencia a ellos en la configuración de tu servidor MCP.

Solución de problemas en servidores MCP personalizados

Fallo en “Test listing tools”

SymptomLikely causeFix
”Verify server URL and network connectivity”La URL del servidor no es accesibleVerifica que la URL sea correcta y accesible desde Internet (o desde la red de Devin si usas una VPN)
“Check authentication credentials and permissions”Credenciales de autenticación no válidas o faltantesVerifica tu API key, token o configuración de OAuth
”Server took too long to respond - check server status”El servidor no respondió dentro del tiempo de esperaAsegúrate de que el servidor esté en ejecución y respondiendo; revisa si hay reglas de firewall que bloqueen la conexión
”MCP server validation failed” (generic)Comando no encontrado, dependencias faltantes o caída del servidorPara servidores STDIO, verifica que el comando exista y se ejecute localmente; comprueba que todas las variables de entorno requeridas estén configuradas

El servidor se conecta pero las herramientas no están disponibles

  • Verifica que el servidor implemente correctamente el método tools/list del protocolo MCP.
  • Para servidores STDIO, asegúrate de que el proceso escriba mensajes JSON-RPC válidos en stdout y lea desde stdin — el registro o la salida de depuración en stdout romperá el protocolo.
  • Comprueba que las variables de entorno estén configuradas correctamente. La falta de valores (por ejemplo, una API key en blanco) puede hacer que el servidor se inicie pero falle al registrar herramientas.

Problemas de autenticación OAuth

  • Cuando se solicite la autenticación, completa el flujo de OAuth en la ventana del navegador que se abra. Devin esperará el callback.
  • Si la autenticación falla, comprueba que el URI de redirección de OAuth esté configurado correctamente en el proveedor.
  • Solo los administradores de la organización pueden autenticar servidores MCP basados en OAuth. Si aparece un error de permisos, ponte en contacto con el administrador de la organización.
Para los MCP basados en OAuth, usa una cuenta de servicio en lugar de una cuenta personal. El acceso se comparte en toda la organización y las sesiones de todos los miembros usarán la misma conexión autenticada.

Consejos generales de depuración

  • Comprueba primero el servidor de forma local. Antes de añadir un servidor personalizado a Devin, verifica que funcione ejecutando el comando o accediendo a la URL desde tu propia máquina.
  • Revisa los registros de sesión de Devin. Si un servidor falla durante una sesión, Devin registrará el error. Busca mensajes relacionados con MCP en la salida de la sesión.
  • Simplifica e itera. Comienza con la configuración mínima (por ejemplo, sin autenticación, ajustes predeterminados) y añade complejidad una vez que la conexión básica funcione.
  • Verifica las variables de entorno. Un problema habitual son las variables de entorno que faltan o están mal definidas. Vuelve a comprobar que cada variable requerida esté establecida en la configuración.
Si estás creando tu propio servidor MCP, la especificación de Model Context Protocol contiene documentación detallada sobre el protocolo, los tipos de transporte y las definiciones de herramientas.

MCP del marketplace

A continuación se muestran los detalles de configuración de MCP específicos disponibles en el marketplace.

Vercel, Atlassian, Notion, Sentry, Neon, Asana, Jam y muchos más

Muchos MCPs en nuestro marketplace se pueden habilitar sin necesidad de configuración, con un solo clic. Solo haz clic en “Enable”. Se te pedirá conectar una cuenta de servicio durante tu sesión con Devin o cuando hagas clic en “Test listing tools”. Los MCPs disponibles incluyen:
  • AlloyDB
  • Asana
  • Atlassian
  • BigQuery
  • Cloud SQL (MySQL)
  • Cloud SQL (PostgreSQL)
  • Cloud SQL (SQL Server)
  • Cloudflare
  • Cortex
  • Dataplex
  • Fireflies
  • Firestore
  • Jam
  • Linear
  • Looker
  • Metabase
  • MySQL
  • Neon
  • Notion
  • PostgreSQL
  • Prisma
  • Sentry
  • Spanner
  • SQL Server
  • Vercel
  • ¡Y más a continuación!
Linear: Si tienes la integración de Linear conectada, Devin ya dispone de herramientas nativas de Linear y no necesitas configurar por separado el MCP de Linear.

Datadog

Debes proporcionar 2 variables de entorno:
  • DATADOG_API_KEY - Clave de API de Datadog, que puedes encontrar en la página /organization-settings/api-keys en Datadog
  • DATADOG_APP_KEY - Clave de aplicación de Datadog, que puedes encontrar en la página /organization-settings/application-keys en Datadog
DATADOG_SITE (por ejemplo, datadoghq.eu) es una variable de entorno opcional. Documentación

Slack

Para obtener las credenciales necesarias: Slack bot token:
Para comenzar, ve a api.slack.com/apps y selecciona tu aplicación. Luego:
  • En la barra lateral, ve a Oauth & Permissions
  • Busca el Bot User OAuth Token (debería comenzar con “xoxb-”).
  • Si no ves tu Bot User Oauth Token, asegúrate de haber configurado tokens a nivel de aplicación (en Settings > Basic Information), de haber agregado al menos 1 scope (en Settings > Oauth & Permissions) y de haber instalado tu aplicación en tu espacio de trabajo.
Slack team ID:
  • Usa el comando curl: curl -H "Authorization: Bearer xoxb-your-token" https://slack.com/api/auth.test donde xoxb-your-token debe reemplazarse con tu token OAuth
Slack channel IDs:
  • Usa el comando curl: curl -H "Authorization: Bearer xoxb-your-token" https://slack.com/api/conversations.list donde xoxb-your-token se reemplaza con tu token OAuth
  • Para que este comando funcione, deberás agregar al menos los siguientes scopes: channels:read,groups:read,mpim:read,im:read
Documentación

Supabase

Necesitarás proporcionar un token de acceso personal, que puedes encontrar y crear en https://supabase.com/dashboard/account/tokens Documentación

Figma

Necesitarás proporcionar una clave de API de Figma para habilitar este MCP:
  1. Desde la página de inicio de Figma, haz clic en el ícono de perfil en la esquina superior izquierda y selecciona Settings en el menú desplegable.
  2. En el menú de configuración, selecciona la pestaña Security.
  3. Desplázate hacia abajo hasta la sección Personal access tokens y haz clic en Generate new token.
  4. Ingresa un nombre para el token y asegúrate de asignar los permisos apropiados. Recomendamos al menos permisos de lectura en File content y Dev resources.
  5. Haz clic en Generate token.
Al usar este MCP, asegúrate de enviar a Devin un enlace a tu archivo de Figma. NOTA: Esta es una integración MCP de terceros que no está creada ni mantenida por Figma. Documentación

Stripe

Deberás proporcionar un encabezado de autorización que siga el formato Bearer <TOKEN>, donde <TOKEN> es tu clave de API de Stripe. Más información en: https://docs.stripe.com/mcp#bearer-token Documentación

Zapier

Debes proporcionar un encabezado de autorización con el formato Bearer <TOKEN>. Necesitas extraer tu token Bearer de la URL del servidor proporcionada en https://mcp.zapier.com/mcp/servers > Connect Tu URL de servidor tendrá un aspecto similar a: https://mcp.zapier.com/api/mcp/s/*****/mcp Extrae la sección con asteriscos (*****) y úsala en el encabezado de autorización que proporciones: Bearer *****
Devin
Documentación

Airtable

Debes proporcionar una clave de API de Airtable. Puedes encontrar tus claves de API en: https://airtable.com/create/tokens Documentación

Docker Hub

Credenciales requeridas:
  • Nombre de usuario de Docker Hub: Puedes obtenerlo en My Hub
  • Token de acceso personal (Personal Access Token): Ve a Account settings > Personal access tokens y crea un token
    Devin
Documentación

SonarQube

Para obtener las credenciales necesarias: Documentación

Netlify

Debes proporcionar un token de acceso personal (PAT), que puedes ver y crear en https://app.netlify.com/user/applications#personal-access-tokens. Asegúrate de copiar el PAT en cuanto se cree. ¡No podrás volver a verlo!
Devin
Documentación

Pulumi

Puedes obtener un token de acceso de Pulumi desde la sección Access tokens en la barra lateral del panel de control de Pulumi.
Devin
Documentación

Parallel

Deberás proporcionar una clave de API, que puedes generar en https://platform.parallel.ai/ Documentación

Heroku

Necesitas proporcionar una clave de API, que puedes encontrar en https://dashboard.heroku.com/account
Devin
Documentación

CircleCI

Deberás proporcionar 2 variables de entorno:
Devin
  • CIRCLECI_BASE_URL [Opcional] - Esta variable es opcional y solo se requiere para clientes on-prem. El valor predeterminado es "https://circleci.com"
Documentación

Cortex

Debes proporcionar un token de acceso personal de Cortex para habilitar este MCP:
  1. Inicia sesión en tu instancia de Cortex.
  2. En el menú de la izquierda, ve a Settings → My access tokens.
  3. Haz clic en Create new token.
  4. Introduce un nombre y una descripción para el token.
  5. Haz clic en Create token y copia el token.
Al usar este MCP, asegúrate de que Devin esté configurado con la URL correcta de la API de Cortex (de forma predeterminada es https://api.getcortexapp.com). Documentación

Square

Debes proporcionar un encabezado de autorización con el formato Bearer <TOKEN>, donde <TOKEN> es tu token de acceso de Square. Más información en: https://developer.squareup.com/docs/build-basics/access-tokens Documentación

Hubspot

Debes proporcionar un token de acceso como variable de entorno. Para obtener tu token de acceso:
  1. Crea una aplicación privada en HubSpot:
  2. Ve a Settings > Integrations > Private Apps
  3. Haz clic en “Create private app”
  4. Asigna un nombre a tu aplicación y configura los scopes necesarios
  5. Haz clic en “Create app”
  6. Copia el token de acceso generado desde la pestaña “Auth”
Documentación

Redis

Credenciales requeridas:
  • Host de Redis
  • Puerto de Redis
  • Nombre de usuario de Redis
  • Contraseña de Redis
Documentación

Google Maps

Necesitas (1) proporcionar una clave de API y (2) habilitar las API individuales a las que quieras que Devin tenga acceso. Para obtener tu clave de API, ve a https://console.cloud.google.com/apis/credentials y abre la barra lateral > APIs and services > Credentials. Para habilitar una API individual, busca la API y haz clic en Habilitar.
Devin
Devin
Devin
Documentación

Playwright

No se requieren variables de entorno para esto. Simplemente habilita la integración. Documentación

Firecrawl

Debes proporcionar una clave de API (FIRECRAWL_API_KEY), que puedes ver y crear en https://www.firecrawl.dev/app/api-keys. Documentación

ElasticSearch

Deberás proporcionar 2 variables de entorno:
  • ES_URL - URL o endpoint de ElasticSearch, que se puede encontrar en la página /overview en Elasticsearch.
  • ES_API_KEY - clave de API de ElasticSearch, que se puede crear en la página /indices/index_details/<name>/data en Elasticsearch.
Devin
ES_SSL_SKIP_VERIFY es una variable de entorno opcional. Cuando está configurada en true, omite la verificación del certificado SSL/TLS al conectarse a Elasticsearch. Documentación

Postgres

La única credencial que necesitas es la cadena de conexión de Postgres. Documentación

Plaid

La única credencial necesaria es un token de acceso OAuth Bearer, que se puede obtener ejecutando el siguiente código:
curl -X POST https://production.plaid.com/oauth/token \
-H 'Content-Type: application/json' \
-d '{
"client_id": "YOUR_PLAID_CLIENT_ID",
"client_secret": "YOUR_PRODUCTION_SECRET",
"grant_type": "client_credentials",
"scope": "mcp:dashboard"
}'
Para obtener el ID de cliente y el secreto de cliente de producción, ve a https://dashboard.plaid.com/developers/keys Documentación

Replicate

La única credencial necesaria es el token de API, que se puede encontrar en https://replicate.com/account/api-tokens Documentación

Grafana

Deberás proporcionar 2 variables de entorno:
  • URL de Grafana
  • Token de cuenta de servicio de Grafana: para obtener el token, en la barra lateral ve a Administration > Users and access > Service accounts > Add service account (si aún no tienes ninguna agregada) > Add service account token
Devin

Pinecone

NOTA: El MCP de Pinecone solo admite índices con embeddings integrados. Los índices para vectores que crees con modelos de embeddings externos aún no son compatibles a fecha de 16/7/25. La única credencial necesaria es la clave de API de Pinecone, que se puede obtener en la página de claves de API del panel de control de Pinecone, como se muestra a continuación:
Devin

Snyk

  1. Primero, configura el servidor MCP. La documentación está disponible aquí. Nota: asegúrate de añadir una variable de entorno al final (no incluida en la guía de documentación).
    Devin
  2. Instala la CLI de Snyk en la máquina de Devin. La documentación está disponible aquí
brew tap snyk/tap
brew install snyk-cli

snyk --disable-trust
Nota: algunas pruebas de Snyk requieren establecer confianza para funcionar; instala Snyk en la máquina después de haber instalado Homebrew. La documentación está disponible aquí. Consejo: Si se configura correctamente, la lista completa de análisis de Snyk debería ejecutarse en la primera pasada. Sin embargo, según el framework, algunos análisis requieren que se pase un flag unmanaged: true (por ejemplo, C++). Actualmente puedes establecer esto en Knowledge o durante tu sesión con Devin; aquí tienes un ejemplo:
Devin
Consejo: Hemos escrito un playbook de ejemplo para ayudarte a comenzar. Documentación