Configuración MCP de Windsurf: marketplace e instalación de servidores en Devin Desktop
Windsurf se convirtió en Devin Desktop en junio de 2026, y su configuración de MCP se dividió en dos. Este artículo muestra dónde vive cada archivo de configuración, qué agente tiene el marketplace, cómo añadir servidores stdio y remotos a mano y cómo arreglar un servidor que nunca aparece, con PicassoIA como ejemplo práctico.
Buscas un tutorial de configuración MCP para Windsurf, lo sigues paso a paso y el icono del marketplace que describe no aparece por ninguna parte de tu pantalla. No es un error tuyo. Windsurf pasó a llamarse Devin Desktop en junio de 2026, la documentación antigua ahora redirige a docs.devin.ai, y el agente por defecto para las pestañas nuevas cambió de Cascade a Devin Local. Los dos agentes configuran los servidores MCP de formas distintas, y solo uno de ellos tiene marketplace.
Este artículo aclara en cuál de las dos configuraciones estás, dónde vive cada archivo de configuración, cómo añadir servidores desde el marketplace o a mano y qué revisar cuando un servidor se queda callado. También muestra cómo conectar los modelos de imagen y video de PicassoIA mediante MCP, para que tu editor pueda producir recursos mientras programas. Cada configuración que aparece aquí proviene de la documentación oficial de Devin salvo que indique lo contrario, y cuando esas páginas no coinciden entre sí, lo señalo.
Qué cambió en Windsurf
Windsurf ahora es Devin Desktop
Cognition renombró el editor en junio de 2026. Los resultados de búsqueda y los tutoriales antiguos siguen diciendo Windsurf, pero el registro de cambios, las páginas de producto y la documentación ya están bajo el nombre de Devin. Cascade sobrevive como el nombre del agente heredado, mientras que Devin Local es el predeterminado.
Esa división es la razón por la que tantos tutoriales parecen incorrectos. La página oficial de MCP de Cascade empieza con una advertencia: sus instrucciones se aplican solo al agente Cascade heredado, y Devin Local configura los servidores MCP a través de los archivos de configuración de la CLI de Devin.
Dos agentes, dos configuraciones
Característica
Cascade heredado
Devin Local
Marketplace de MCP
Ninguno
Sí, con instalaciones de un clic
Añadir un servidor
Editar mcp_config.json desde el menú de acciones
Marketplace, devin mcp add o archivos de configuración
Aprobación antes de llamar a herramientas
No por defecto
Pide confirmación por defecto
Límite de herramientas
100 herramientas en total
No indicado en las páginas que revisé
Campos de servidor remoto
serverUrl o url, más headers
url, más transport y headers
💡 Comprobación rápida: Las pestañas nuevas se abren con Devin Local por defecto. Salvo que hayas cambiado de agente a propósito, supón que la columna de Devin Local describe tu editor.
Dónde vive el archivo de configuración
Antes de editar nada, averigua qué archivo lee tu agente. Una edición correcta en el archivo equivocado produce el tipo de fallo más confuso: no pasa nada y nadie se queja.
Rutas de Cascade heredado
La página actual de Cascade indica ~/.config/devin/mcp_config.json en macOS y Linux (o el mismo archivo bajo $XDG_CONFIG_HOME/devin/ cuando esa variable está definida) y %APPDATA%\devin\mcp_config.json en Windows. Para abrirlo desde el editor, haz clic en el menú ... (Acciones), arriba a la derecha del panel de Cascade, y luego elige Abrir archivo de configuración de MCP en la sección MCPs.
Los tutoriales escritos antes del cambio de nombre apuntan a otro lugar: ~/.codeium/windsurf/mcp_config.json, o %USERPROFILE%\.codeium\windsurf\mcp_config.json en Windows. Textos de terceros afirman que una entrada del archivo antiguo todavía se carga, pero las páginas oficiales no lo confirman. Considera la ruta antigua como un plan de respaldo, no como la opción principal.
Capas de configuración de Devin Local
Devin Local lee los archivos de configuración de la CLI de Devin, que se organizan en tres capas:
Alcance
Archivo
Notas
Usuario
~/.config/devin/mcp_config.json o %APPDATA%\devin\mcp_config.json
Se aplica a todos los proyectos
Proyecto
.devin/mcp_config.json
Vive en el repositorio, así que se puede compartir
Anulación local
.devin/mcp_config.local.json
Excluido de git, personal para ti
Un detalle incómodo: la página de Devin Local enumera archivos config.json con los mismos tres alcances, mientras que la página de la CLI dice que las versiones anteriores (antes de la v3000.3) guardaban mcpServers dentro de esos archivos principales de configuración, y las más nuevas usan el archivo independiente mcp_config.json. Las páginas de documentación no coinciden sobre cuál es la vigente. Ejecuta devin mcp list para ver qué cargó realmente tu instalación antes de editar un archivo.
Usar el marketplace de MCP
La página oficial de Cascade es directa: Cascade no tiene marketplace de MCP ni instalación de un clic, y esas funciones existen solo para el agente Devin Local. Si un tutorial te pide hacer clic en el icono de MCPs del panel de Cascade y pulsar Instalar, describe el editor antiguo.
Dónde encontrarlo
En Devin Local, las notas de la versión señalan la página Customize de la barra lateral, donde Browse marketplace aparece en la pestaña Plugins. Las etiquetas de los menús cambian entre versiones, así que si no los ves, empieza por Customize y busca desde ahí.
Muchas entradas son integraciones OAuth de un clic. Las notas de la versión mencionan servicios como Dropbox, ClickHouse Cloud, Typeform, Coda, GitBook, Railway, Retool, Smartsheet y Make. Al instalar uno, se devuelve una URL de autorización, la apruebas en el navegador y el servidor se conecta sin que pegues ningún token en un archivo. Si las credenciales guardadas caducan más adelante, el servidor muestra un estado Needs auth con un botón Authenticate.
Cuándo saltártelo
El marketplace es la vía más rápida, pero no siempre la correcta. Edita la configuración a mano cuando:
Necesitas fijar la versión de un paquete en args en lugar de usar siempre la más reciente.
El servidor es interno y nunca aparecerá en un listado público.
Quieres que la configuración esté confirmada en el repositorio para que tus compañeros la reciban al hacer checkout.
Necesitas control exacto sobre las variables de entorno y los argumentos de arranque.
Las instalaciones con OAuth tienen una contrapartida: ganas comodidad a cambio de control, pues ningún secreto queda en tu disco, pero tampoco decides los argumentos de arranque. Una entrada editada a mano te da ambas cosas, a cambio de rotar los tokens tú mismo.
Añadir un servidor a mano
Ejemplo de servidor stdio
Un servidor stdio es un proceso local que el editor inicia y con el que se comunica por la entrada y salida estándar. Este es el ejemplo oficial de GitHub, con el token movido a una variable de entorno:
command y args son lo que escribirías en una terminal. La marca -y permite que npx instale el paquete sin detenerse a preguntar. El bloque env se pasa al proceso, y no se garantiza que llegue a él nada más de tu shell.
Ejemplo de servidor remoto
Los servidores remotos necesitan una URL en lugar de un comando. Cascade heredado acepta serverUrl o url:
Cuando transport es "http" o se omite, la CLI intenta primero Streamable HTTP y recurre a SSE si el servidor responde 404. Cascade documenta tres transportes en total: stdio, Streamable HTTP y SSE, cada uno con soporte de OAuth.
Aquí tienes una referencia rápida de campos para ambos formatos:
Campo
Usado por
Función
command, args
Stdio
El programa que se inicia y sus argumentos
env
Stdio
Variables que se pasan al proceso
serverUrl o url
Remoto
Dónde escucha el servidor
transport
Remoto, formato CLI
Déjalo en "http" para intentar primero Streamable HTTP
headers
Remoto
Cabeceras adicionales de la petición, como un token Bearer
oauthClientId, oauthClientSecret, oauthResource
Remoto, formato CLI
Ajustes para servidores que necesitan OAuth
disabled
Stdio y remoto, formato CLI
Desactiva una entrada sin borrarla
disabledTools
Cascade
Oculta herramientas concretas al agente
Comandos de la CLI y secretos
Puedes evitar el JSON por completo. La CLI de Devin gestiona los servidores con estos comandos:
Comando
Qué hace
devin mcp add <name> -- <command> [args...]
Añade un servidor stdio
devin mcp add <name> <URL>
Añade un servidor HTTP
devin mcp list y devin mcp get
Muestran lo que está cargado e inspeccionan un servidor
devin mcp login <name> y logout
Inician o borran el inicio de sesión OAuth
devin mcp enable y disable
Activan o desactivan un servidor
devin mcp remove <name>
Borra la entrada
Los archivos de configuración admiten dos patrones de interpolación: ${env:VAR_NAME} sustituye por una variable de entorno, y ${file:/path/to/file} sustituye por el contenido de un archivo, con rutas ~ permitidas.
💡 Consejo: Guarda los tokens personales en .devin/mcp_config.local.json, que está excluido de git, y mantén el .devin/mcp_config.json compartido libre de secretos. Un token confirmado una sola vez permanece en el historial de git.
Límites, aprobaciones y listas de permitidos
El límite de 100 herramientas
Cascade puede tener 100 herramientas en total entre todos los servidores conectados. Los servidores grandes consumen ese presupuesto rápido, y al superarlo, algunas herramientas simplemente no estarán disponibles. Recorta lo que no necesitas con el array disabledTools:
Un conjunto de herramientas más pequeño también ayuda al agente a elegir la adecuada, así que desactivar las que nunca usas merece la pena incluso por debajo del límite.
Peticiones de aprobación en Devin Local
Devin Local se comporta de forma distinta a Cascade en este punto. Su configuración predeterminada pide aprobación antes de llamar a cualquier herramienta de MCP. Puedes conceder permiso a una sola herramienta o a un servidor entero, para la sesión o de forma permanente. Los administradores de Enterprise pueden permitir por defecto servidores o herramientas concretos, para que las integraciones de confianza dejen de interrumpir a la gente.
Listas de permitidos del equipo
Los administradores de los planes Teams y Enterprise pueden definir un registro de MCP personalizado y una lista de permitidos. Hay dos reglas que importan. Una vez que cualquier servidor está en la lista, todos los servidores que no estén en ella quedan bloqueados para todo el equipo. Y los patrones son expresiones regulares que se comparan con la cadena completa, así que un patrón demasiado laxo no coincidirá como esperas. Los usuarios de Enterprise también tienen que activar MCP manualmente en la configuración.
Un despliegue seguro sigue estos pasos: enumera los servidores que tu equipo ya usa, escribe un patrón anclado por servidor, activa la lista de permitidos para un grupo pequeño de prueba y pide a alguien de ese grupo que añada un servidor que no incluiste y confirme que queda bloqueado. Solo entonces amplíala a todos.
Solucionar un servidor silencioso
Revisa lo básico
Sigue esta lista en orden:
Valida el JSON. Una coma sobrante o una comilla que falta hace que todo el archivo sea ilegible.
Ejecuta el comando en una terminal. Si npx -y @modelcontextprotocol/server-github falla allí, también fallará en el editor.
Comprueba Node.js. Los textos de configuración de terceros indican Node.js 18 o posterior para los servidores npx.
Ejecuta devin mcp list. Muestra lo que realmente se cargó, y eso gana a adivinar.
Reinicia el editor. La página oficial no dice si hace falta reiniciar, mientras que los textos de terceros lo recomiendan, así que reiniciar es una precaución barata.
Revisa el entorno. Un servidor que funciona bien en tu terminal puede depender de una variable que el editor nunca vio. Defínela en env, o usa ${env:VAR} y abre el editor desde una shell que la tenga.
Descarta el archivo equivocado
Si el servidor nunca aparece, comprueba si editaste el archivo que lee tu agente. Un tutorial de antes del cambio de nombre te manda a ~/.codeium/windsurf/mcp_config.json, y Devin Local lee en su lugar las capas de la CLI. Añade una entrada de prueba y confirma que aparece en devin mcp list antes de crear la configuración definitiva.
Si vas a trasladar una configuración antigua de Windsurf, copia su bloque mcpServers en tu mcp_config.json de nivel de usuario, ejecuta devin mcp list y solo después borra el archivo antiguo. Hacerlo en ese orden evita que pierdas un servidor que funciona mientras pruebas.
Cuando la lista de permitidos del equipo está activa, la documentación indica cuatro comprobaciones: confirma que el patrón coincide exactamente con la configuración del usuario, verifica el escapado de las expresiones regulares, revisa los registros (los patrones no válidos se registran con advertencias) y prueba los patrones en un probador de expresiones regulares.
Cómo usar PicassoIA a través de MCP
Una vez ordenada la configuración, un servidor MCP solo es útil si hace algo por tu proyecto. Un buen primer candidato es la generación de imágenes, porque las portadas del blog, las capturas de la app y los banners del README surgen en pleno desarrollo. PicassoIA expone cuatro modelos a través de su conector MCP y de su API para desarrolladores:
Abre tu página de conexiones MCP. Está en picassoia.com/en/mcp/accounts y requiere iniciar sesión. Crea una conexión y copia la URL del servidor que aparece allí. La URL no se publica en el sitio público, así que no la adivines.
Añádela desde la CLI. Ejecuta devin mcp add picassoia <URL from step 1>. Es la forma de comando documentada para un servidor HTTP.
Inicia sesión si te lo pide. Si el servidor usa OAuth, ejecuta devin mcp login picassoia.
Confirma que se cargó.devin mcp list debería mostrar picassoia.
Pide un recurso. Dile al agente lo que necesitas, por ejemplo una foto de portada 16:9 para una publicación. Iniciará el trabajo con PicassoIA Image y consultará el estado hasta que sea succeeded, y entonces te dará la URL.
Herramientas y límites del conector
El conector de PicassoIA expone nueve herramientas: generate_image, edit_image, generate_video_picassoia, generate_video_seedance, get_generation, list_generations, cancel_generation, list_models y get_account. Es una porción pequeña de un presupuesto de 100 herramientas.
Los trabajos son asíncronos. Una llamada de generación devuelve un id de predicción, y el agente consulta get_generation hasta que el trabajo tenga éxito o falle. Un fallo es definitivo, así que reintenta con una nueva generación. La plataforma permite 5 predicciones simultáneas por cuenta, compartidas entre los tokens de API y las conexiones MCP, y los prompts están limitados a 4000 caracteres.
¿Prefieres scripts a un editor? La API para desarrolladores está en https://api.picassoia.com/v1 y acepta un token Bearer que empieza por pia_sk_, creado desde la sección de API de tu cuenta. Las predicciones se crean con POST /v1/models/{owner}/{name}/predictions y se leen después con GET /v1/predictions/{id}. La página de precios y la documentación de la API describen el acceso por plan de forma distinta, así que revisa qué plan necesita tu cuenta antes de desplegarlo en un equipo.
💡 Consejo: ¿Necesitas ayuda para redactar un prompt antes de que el agente lo ejecute? La colección de modelos de lenguaje de PicassoIA incluye Claude Sonnet 5 y GPT 5.6 Sol.
Pruébalo con tus propias imágenes
Tu configuración solo es tan buena como lo primero que produzca, así que produce algo. Conecta el servidor, pide una imagen de portada para el proyecto en el que trabajas hoy y mira cómo queda. Cambia la iluminación, la lente y el encuadre en tu prompt, vuelve a generarla y compara. Unas pocas rondas bastan para encontrar un estilo que encaje con tu blog o tu app.
Tres primeros prompts sirven bien como pruebas de conexión:
Una foto de portada. Pide a PicassoIA Image una fotografía 16:9 de un escritorio con luz de hora dorada, con una lente y una iluminación concretas indicadas en el prompt.
Una edición. Entrega una captura o foto existente a PicassoIA Image Editor Pro y pide un cambio preciso.
Un clip corto. Convierte la foto de portada en movimiento con PicassoIA Video y revisa el resultado antes de comprometerte con un render más largo.
Abre Picasso IA, elige un modelo de la lista y genera tu primera imagen. Todos los modelos, desde texto a imagen y video hasta lenguaje, aparecen en picassoia.com/en/all-models.