In this article
Detección y corrección de vulnerabilidades con Continue y Snyk MCP
Continue se siente como recuperar el control de tu entorno de desarrollo. A diferencia de los asistentes de programación con IA propietarios que te quitan el control, Continue es totalmente transparente. Ves exactamente lo que sucede, eliges tus propios modelos y mantienes tu código privado. Es como construir tu propio sable de luz. Este compromiso con la autonomía de los desarrolladores se percibe no solo en su filosofía de código abierto, sino también en decisiones de diseño bien pensadas, como la integración con MCP y la flexibilidad independiente del modelo, que te permite ejecutar desde GPT-4 hasta modelos LLaMA locales.
Consulta esta guía lista para usar en un taller para integrar las capacidades de análisis de seguridad de Snyk Studio directamente en tu flujo de trabajo de desarrollo con Continue.
Testimonios de desarrolladores (en la práctica)
Un desarrollador escribió en DEV Community: «Me sorprendió que admitiera el contexto de la base de código, además de algunas opciones para complementar el chat (rastrear una URL en la web, archivos específicos, etc.), ¡y que realmente funcionara! ¡Y todo eso es completamente gratis y de código abierto!»
Puedes hacer muchas cosas con esta herramienta: «Uso continue.dev para autocompletar con qwen 7b coder local cuando no tengo internet».
Un usuario incluso dijo: «Como herramienta de chat, es increíble por su flexibilidad y capacidad de ampliación. Tengo una docena de modelos disponibles, desde OpenAI o1, Gemini 1.5 y 2.0, Claude 3.5 hasta algunos otros en ollama. También tengo muchas instrucciones y comandos personalizados predefinidos para tareas comunes».
El flujo habitual consiste en pedirle a un modelo que implemente la tarea usando como contexto el código del proyecto, luego pedirle a otro modelo que revise el código y, finalmente, usar una instrucción personalizada con recomendaciones resumidas de libros de «Clean Code». Agregar documentación de los frameworks que se usan y resultados de búsqueda de Google permite obtener muy buenos resultados.
Los temas recurrentes en estas reseñas de usuarios son la libertad frente a la dependencia de un proveedor, el control de la privacidad, la flexibilidad para personalizar y el valor de que sea completamente gratis y de código abierto. No sorprende que los desarrolladores valoren por fin tener un asistente de programación con IA que trabaja para ellos, y no al revés.
Cómo empezar a usar Continue
La experiencia para desarrolladores de Continue se centra en ayudarte a ser productivo rápidamente:
Instala la extensión: está disponible en Visual Studio Marketplace para VS Code o como complemento para IDE de JetBrains (IntelliJ IDEA, PyCharm, WebStorm).
Muévela a la barra lateral derecha: después de la instalación, el ícono de Continue aparece en la barra lateral izquierda. Para una mejor experiencia, puedes arrastrarlo a la barra lateral derecha.
Configura tu modelo: haz clic en el menú desplegable del selector de agentes y selecciona el proveedor de modelos que prefieras. Continue es compatible con OpenAI, Anthropic, Ollama para modelos locales y muchos otros.
Opcional: Inicia sesión en Continue Hub: para usar flujos de trabajo de agentes administrados y funciones de colaboración en equipo, inicia sesión en Continue Hub (más detalles abajo). Sin embargo, es opcional: Continue funciona completamente sin conexión con modelos locales si así lo prefieres.

Compatibilidad con Model Context Protocol (MCP) en Continue
Como herramienta moderna de programación con IA, Continue es compatible con Model Context Protocol (MCP). MCP permite que los modelos de IA interactúen en tiempo real con herramientas externas, bases de datos y API, lo que amplía enormemente las posibilidades más allá de la simple generación de código.
Continue fue el primer cliente en ofrecer compatibilidad total con todas las funciones de MCP, incluidos Resources (acceso a datos), Prompts (interacciones con plantillas), Tools (invocación de funciones) y Sampling (respuestas generadas con IA).
Cómo configurar servidores MCP en Continue
Continue ofrece dos formas principales de configurar servidores MCP:
Configuración de MCP por espacio de trabajo
(.continue/mcpServers/): ideal para conjuntos de herramientas específicos de un proyecto. Crea este directorio en la raíz de tu espacio de trabajo y agrega archivos YAML individuales para cada servidor MCP. Estas herramientas solo estarán activas en ese espacio de trabajo.
Estructura de ejemplo:
your-project/
├── .continue/
│ └── mcpServers/
│ ├── playwright-mcp.yaml
│ └── snyk-mcp.yaml
└── ...Configuración global de MCP
(~/.continue/config.yaml): para las herramientas que quieras tener disponibles globalmente en todos los proyectos, defínelas en el archivo de configuración principal de Continue, dentro del bloque mcpServers. Es ideal para herramientas de análisis de seguridad como Snyk, que quieres tener disponibles en todas partes.
Tipos de transporte de MCP
Continue admite varios mecanismos de transporte:
STDIO (entrada/salida estándar): ideal para procesos locales y herramientas de línea de comandos. La mayoría de los servidores MCP usan este tipo de transporte.
Streamable HTTP: para servidores MCP remotos o alojados con capacidades de streaming.
SSE (eventos enviados por el servidor): para la comunicación en streaming en tiempo real con servidores remotos.
Ten en cuenta que el protocolo MCP está dejando de usar SSE en favor de Streamable HTTP.
La configuración YAML de un servidor MCP es sencilla y solo requiere unas pocas propiedades clave:
name: My MCP Server
version: 0.0.1
schema: v1
mcpServers:
- name: Server Display Name
command: npx # or full path to executable
args:
- "package-name"
- "--flags"
env:
API_KEY: ${{ secrets.MY_API_KEY }}Este formato facilita la migración. Si vienes de otra herramienta, como Claude Desktop, Cursor o Cline, puedes copiar sus archivos de configuración MCP en JSON directamente en tu directorio .continue/mcpServers/ (observa que «Servers» está en plural), y Continue los detectará automáticamente.
Cómo agregar Snyk Studio
El servidor MCP oficial de Snyk, que forma parte de Snyk Studio, integra las capacidades de análisis de seguridad directamente en tu flujo de trabajo de programación con IA. Puedes iniciar análisis de vulnerabilidades, consultar hallazgos de seguridad e incluso solicitar correcciones asistidas por IA, todo sin salir de tu entorno de desarrollo. De hecho, está integrado en Snyk CLI.
Requisitos previos
Antes de agregar el servidor MCP de Snyk, asegúrate de tener lo siguiente:
1. Snyk CLI instalado (v1.1296.2 o posterior): guía de instalación
# Install via npm
npm install -g snyk
# Or download from https://docs.snyk.io/developer-tools/snyk-cli/install-or-update-the-snyk-cli2. Autenticación de Snyk: el servidor MCP necesita tu token de API de Snyk. Ejecuta:
1snyk authSe abrirá el navegador para que te autentiques y el token se guardará localmente.

Opciones de configuración
La forma más sencilla de agregar el servidor MCP de Snyk a la extensión instalada de Continue para VS Code es:
Selecciona el ícono de Continue en la barra lateral izquierda.
Selecciona «Configure tools» en la parte superior del cuadro de texto para ingresar instrucciones.

3. Haz clic en el ícono «+» a la derecha de «MCP Servers» para agregar un servidor nuevo.

4. Se abrirá automáticamente un archivo new-mcp-server.yaml en la ubicación correcta del proyecto.
1owler@OwlUbuntu:~/Documents/Snyk/snyk-mcp-demos/pygoat$ tree .continue/
2.continue/
3└── mcpServers
4 └── new-mcp-server.yaml
5
61 directory, 1 filePuedes agregar el servidor MCP de Snyk con npx (recomendado) o invocando directamente la CLI.
Usar npx para mantenerlo actualizado automáticamente
Suponiendo que creaste .continue/mcpServers/snyk-mcp.yaml en tu espacio de trabajo, puedes definirlo así:
name: Snyk Security Scanner
version: 0.0.1
schema: v1
mcpServers:
- name: Snyk
command: npx
args:
- "-y"
- "snyk@latest"
- "mcp"
- "-t"
- "stdio"
env: {}Esta configuración usa npx para obtener siempre la versión más reciente de Snyk CLI.
Usar directamente la ruta de Snyk CLI instalada localmente
Si instalaste Snyk globalmente y quieres usar la instalación local:
name: Snyk Security Scanner
version: 0.0.1
schema: v1
mcpServers:
- name: Snyk
command: /absolute/path/to/snyk (i.e. from `which snyk`)
args:
- "mcp"
- "-t"
- "stdio"
env: {}En la mayoría de los sistemas Linux, puedes obtener /absolute/path/to/snyk con el resultado de which snyk.
Es posible que el servidor MCP de Snyk necesite la marca --experimental si se ejecuta directamente mediante CLI, pero se agrega automáticamente cuando se invoca con npx y la versión más reciente.
Activar el servidor MCP de Snyk en Continue
Después de crear el archivo de configuración, Continue detectará y cargará automáticamente el servidor MCP. Para verificar que funcione:
1. Activa el modo de agente de Continue: la funcionalidad de MCP solo está disponible en Agent Mode. Haz clic en el menú desplegable del selector de agentes, junto al campo de chat, y asegúrate de que Agent Mode esté activado.


2. Verifica las herramientas MCP: puedes preguntarle al LLM que seleccionaste qué herramientas tiene disponibles.

3. Verifica la autenticación: en el panel de chat, pregúntale a Continue: «¿Puedes verificar el estado de mi autenticación de Snyk?». El agente usará el servidor MCP de Snyk para verificar la conexión mediante llamadas a herramientas MCP.
Usar Continue para detectar y corregir vulnerabilidades automáticamente
Para esta demostración, usaremos el repositorio pyGoat de adeyosemanputra', líder de proyecto de OWASP. Es una aplicación Django deliberadamente vulnerable, diseñada para la enseñanza de seguridad. El proyecto incluye vulnerabilidades bien documentadas de distintos niveles de gravedad, por lo que es ideal para probar flujos de trabajo de análisis de seguridad y corrección.
Análisis de seguridad inicial
Primero, veamos qué vulnerabilidades detecta Snyk en la base de código. También podemos pedirle a Continue que use el servidor MCP de Snyk para analizar el proyecto:
En el panel de chat de Continue (Agent Mode), preguntamos:
Please run a Snyk code scan on the current project.El agente de Continue reconoce que tiene acceso a las herramientas MCP de Snyk y ejecuta el análisis:

Luego, Continue ofrece un resumen útil de los hallazgos críticos:
Top Critical Issues Found:
🔴 High Severity Issues:
Path Traversal (2 instances) - Unsanitized input flows into file operations
Code Injection (2 instances) - Use of eval() with unsanitized input
SQL Injection (2 instances) - Unsanitized input in SQL queries
Command Injection (2 instances) - Unsanitized input in subprocess calls
Deserialization of Untrusted Data (3 instances) - Unsafe pickle.loads() usage
XML External Entity (XXE) Injection - Insecure XML parser
Use of Hardcoded Cryptographic Key (2 instances) - JWT with hardcoded secret
Hardcoded Non-Cryptographic Secret (2 instances) - Including Django SECRET_KEY
🟡 Medium Severity Issues:
Debug Mode Enabled - Flask app running with debug=True
CSRF Protection Disabled (27 instances) - Many views using @csrf_exempt
Hardcoded Passwords (18 instances)
SSRF - Server-Side Request Forgery vulnerability
Insecure XML Parser (2 instances)
🟢 Low Severity Issues:
Insecure Hash (MD5) (4 instances) - Using MD5 for passwords
Hardcoded Credentials (5 instances)
Cookie Security Issues (46 instances) - Missing HttpOnly/Secure flags
This is clearly a vulnerable-by-design training application (PyGoat). Would you like me to help you understand any specific vulnerability or create fixes for them?Corregir una vulnerabilidad de inyección SQL de alta gravedad
Ahora pidámosle al agente de Continue que corrija una de estas vulnerabilidades prioritarias y vuelva a analizar el código para verificar la corrección. Le damos los detalles específicos de la vulnerabilidad detectada:
The scan found a High severity SQL Injection vulnerability:
Path: introduction/views.py, line 871
Info: Unsanitized input from an HTTP parameter flows into
introduction.models.sql_lab_table.objects.raw, where it is used in an SQL query.
Can you fix this vulnerability and then re-scan to verify it's fixed?El agente de Continue se pone manos a la obra con un plan claro:
The user wants me to:
1. Fix a SQL injection vulnerability in introduction/views.py around line 871
2. Re-scan to verify the fix
Let me first read the file to see the vulnerable code.
I'll help you fix the SQL injection vulnerability. Let me first examine the vulnerable code.Primero, el agente lee el código vulnerable para entender el contexto:
Continue read introduction/views.py
Now I can see the vulnerable code around line 871. The issue is in the injection_sql_lab function where raw SQL queries are constructed using string concatenation with unsanitized user input. Let me fix this vulnerability by using parameterized queries:
Luego, el agente aplica la corrección mediante una consulta parametrizada:

Continue explica la corrección:
What was fixed:
Before:
Line 856: sql_query = "SELECT * FROM introduction_sql_lab_table WHERE id='"+name+"'AND password='"+password+"'"
Line 870: user = sql_lab_table.objects.raw(sql_query)
This allowed attackers to inject malicious SQL code through the name or password parameters
After:
Line 851: sql_query = "SELECT * FROM introduction_sql_lab_table WHERE id=%s AND password=%s"
Line 871: user = sql_lab_table.objects.raw(sql_query, [name, password])
Now uses parameterized queries where user input is safely passed as separate parametersVerificar la corrección
El agente inicia automáticamente otro análisis de Snyk para verificar que se haya resuelto la vulnerabilidad:
Perfect! ✅ The SQL injection vulnerability has been successfully fixed!
Verification Results:
The scan now shows 101 issues (down from 102), confirming that one SQL injection vulnerability has been eliminated.
¡Con esto termina nuestra demostración de cómo corregir una vulnerabilidad de seguridad! 🎈
Continue Hub: colaboración en equipo y agentes compartidos
Para que lo tengas en cuenta, Continue Hub es la capa de colaboración en equipo de la plataforma y ofrece administración centralizada de agentes de IA personalizados. La extensión principal de Continue (que usaremos hoy) es gratis y de código abierto, mientras que Hub aporta valor adicional para usuarios avanzados:
Plan individual gratuito: para desarrolladores individuales y proyectos de código abierto, Hub ofrece tres niveles de visibilidad: configuraciones privadas, agentes compartidos con el equipo o asistentes públicos que cualquiera puede usar.
Agentes de Hub (administrados en la nube):
Administración basada en web: configura agentes desde una interfaz intuitiva, disponible en todas tus instancias de IDE.
Uso compartido con un clic: crea agentes personalizados con los estándares de programación de tu equipo y compártelos con un enlace sencillo.
Configuración rápida: no tienes que editar archivos de configuración; solo elige tus preferencias y empieza a programar.
Actualizaciones automáticas: los cambios se aplican al instante para todos los miembros del equipo.
Continue CLI: agente de IA nativo del terminal
Continue CLI (cn) es un agente de programación modular y de código abierto que ofrece asistencia de IA avanzada directamente en tu terminal. Para los desarrolladores que trabajan principalmente en el terminal y quieren automatizar tareas desde allí, la CLI ofrece toda la potencia del terminal sin salir de la línea de comandos.

Modo interactivo
# Install globally
npm i -g @continuedev/cli
# Launch interactive mode
cn
# Resume previous conversation
cn --resumeEn el modo interactivo, cn funciona igual que la extensión del IDE. Puedes pedirle que:
Corrija pruebas que fallan
Encuentre patrones en tu base de código
Ejecute refactorizaciones complejas
Escriba nuevas funciones
Ejecute comandos de terminal (con tu aprobación)
Usa @ para agregar contexto de archivos y / para ejecutar comandos de barra, igual que en el IDE. La CLI también incluye un modo sin interfaz, ideal para scripts al estilo Unix e incluso para automatizar CI/CD.
La misma configuración que el IDE
La CLI usa el mismo config.yaml que las extensiones del IDE. Alterna entre los agentes de Hub y la configuración local con el comando /config o la marca --config:
# Use Hub agent
cn --config continuedev/default-agent
# Use local configuration
cn --config ~/.continue/config.yaml¿Qué hace diferente a Continue?
Según su propia descripción, Continue está creando una «cultura de colaboración» en la que los desarrolladores experimentan, crean personalizaciones y las comparten con la comunidad, en lugar de que todos construyan asistentes de código cerrado de forma aislada. Continue adopta un enfoque fundamentalmente diferente al de las alternativas de código cerrado:
Arquitectura de código abierto y ampliable
Continue se define como «la antítesis de los proveedores propietarios de asistentes de IA de “caja negra”». Su arquitectura abierta fomenta una «cultura de colaboración» en la que los desarrolladores pueden experimentar, crear personalizaciones y compartirlas con la comunidad.
Examina el código fuente: puedes revisar exactamente cómo se procesa y comparte el contexto de tu código con los modelos de IA
Extensiones personalizadas: crea tus propios comandos de barra, fuentes de contexto, mensajes de sistema con plantillas y herramientas
Contribuciones de la comunidad: aprovecha y contribuye a un ecosistema creciente de extensiones y configuraciones
Flexibilidad de modelos y libertad para evitar la dependencia de un proveedor
Continue es independiente del modelo, así que puedes elegir el que mejor se adapte a tus necesidades. Desde OpenAI hasta Claude, Mixtral o LLaMA local a través de OpenRouter, Ollama o API personalizadas. Esto evita la dependencia de un proveedor y permite escalar con flexibilidad y eficiencia en costos. Incluso puedes:
Ejecutar modelos locales con privacidad total mediante ggml o una infraestructura autohospedada
Combina modelos: usa modelos Claude Sonnet para tareas de razonamiento complejas y reserva los modelos locales para las completaciones cotidianas
Cambia de modelo a mitad de la conversación según tus necesidades
Estructura de costos: Continue es completamente de código abierto y gratis, sin cargos de licencia. Solo tendrás costos si optas por API de pago de modelos externos, pero también puedes implementar tus propios modelos para evitar esos costos por completo.
Integración con el IDE, no un reemplazo
A diferencia de Cursor (una bifurcación de VS Code) o Windsurf (un IDE independiente), Continue funciona como una extensión ligera que se integra en los flujos de trabajo existentes. Esto significa que puedes:
Mantener tu configuración actual de VS Code o JetBrains con todos los ajustes y extensiones que ya conoces
Evitar la curva de aprendizaje de un IDE nuevo
Usar tus atajos de teclado y personalizaciones habituales
Reducir las barreras de adopción: instálalo y empieza a usarlo en minutos
Próximos pasos con Continue y Snyk
A medida que crezca la adopción de MCP y más herramientas de seguridad desarrollen servidores MCP, podemos imaginar agentes de IA capaces de:
No solo corregir vulnerabilidades, sino también generar pruebas de seguridad exhaustivas para evitar regresiones
Actualizar la documentación automáticamente para reflejar las correcciones de seguridad y los patrones de programación segura
Crear tickets detallados para la revisión manual de problemas de seguridad complejos que requieran criterio humano
Integrarse con pipelines de CI/CD para proporcionar comentarios de seguridad antes de fusionar el código
Ejecutar análisis de seguridad automatizados con Continue CLI en tareas programadas o flujos de trabajo activados por eventos
La naturaleza modular tanto de la arquitectura de Continue como del protocolo MCP permite que estas capacidades evolucionen de forma independiente y, a la vez, sigan siendo interoperables. La seguridad se convierte en un proceso continuo y automatizado, en lugar de un punto de control aislado.
Primeros pasos
Para los equipos que quieran implementar flujos de trabajo similares, la configuración es la siguiente (en resumen):
1. Instala Continue desde Visual Studio Code Marketplace o el repositorio de complementos de JetBrains.
2. Configura el modelo que prefieras (local mediante Ollama o en la nube mediante OpenAI/Anthropic, etc.).
3. Opcional: instala Continue CLI para integrarlo con la terminal y CI/CD.
npm i -g @continuedev/cli4. Agrega el servidor MCP de Snyk usando la configuración YAML que se muestra arriba o consíguelo en workshop-in-a-box.
5. Autentícate con Snyk mediante snyk auth.
6. Activa el modo Agent en Continue para acceder a las herramientas MCP.
7. Empieza a analizar y corregir vulnerabilidades directamente en tu flujo de trabajo.
Los LLM son excelentes para resolver correcciones rutinarias y bien conocidas (como la inyección SQL, XSS y los secretos codificados), mientras que las personas se enfocan en los nuevos desafíos de seguridad que requieren creatividad para resolver problemas y una visión arquitectónica. Con Continue y Snyk MCP, la seguridad se integra desde las primeras etapas: deja de ser un cuello de botella y pasa a formar parte del flujo de desarrollo.
Conoce hoy la alianza entre Snyk y Continue.
Innova con IA. De forma segura.
Descubre cómo Snyk Studio te ayuda a proteger el flujo de trabajo de desarrollo impulsado por IA.