security-mcp
Configuración de Security MCP
Esta configuración conecta el servidor security-mcp a herramientas de codificación con IA para que el agente pueda obtener alertas de Code Scanning de GitHub para el repositorio actual y aplicar parches locales.
Clientes compatibles:
Claude Code — MCP mediante
claude mcp add, comando slash mediante.claude/commands/fix-vuls.mdCursor — MCP mediante configuración, skill mediante
.cursor/skills/fix-vuls/SKILL.mdGitHub Copilot CLI — MCP mediante
copilot mcp addo.github/mcp.json, skill mediante.github/skills/fix-vuls/SKILL.mdIntelliJ IDEA (plugin de GitHub Copilot) — MCP mediante el widget del modo Agente de Copilot Chat, skill mediante
.github/skills/fix-vuls/SKILL.md
El skill /fix-vuls ejecuta un bucle de remediación:
/fix-vuls
→ fetch open GitHub Code Scanning alerts
→ triage and classify each alert
→ research CVEs (Spring Boot BOM first for dependency alerts)
→ apply minimal local patches
→ validate with build and tests
→ re-check alerts and repeat until done or blockedEl agente no hace commit, push ni abre un PR a menos que se lo pidas explícitamente. El prompt completo del skill está en fix-vuls.md en este repositorio.
El token de GitHub usado para obtener alertas se lee de un archivo .env dentro del repositorio que estás remediando (el repositorio de la organización que abres en tu IDE o CLI) — nunca se pasa en la línea de comandos ni se sube al control de versiones. También puedes configurar GITHUB_TOKEN en la configuración env del servidor MCP donde tu cliente lo soporte.
1. Clonar e instalar dependencias
Clona este repositorio e instala las dependencias de Node.js antes de conectar el servidor MCP:
git clone https://github.com/P-Shreyas-Maersk/security-mcp.git
cd security-mcp
npm installUsa la ruta absoluta a esta carpeta al registrar el servidor MCP en los pasos siguientes.
Related MCP server: osv-ui-mcp
2. Añadir un archivo .env con tu token de GitHub
El token de GitHub no se pasa como un flag de CLI. En su lugar, crea un archivo .env dentro del repositorio de la organización que quieres escanear (no la carpeta del servidor security-mcp).
Para la v1 actual, el token solo necesita acceso para leer alertas de seguridad/code scanning.
macOS:
cd your-org-repo
echo "GITHUB_TOKEN=YOUR_GITHUB_TOKEN" > .envWindows (PowerShell):
cd your-org-repo
"GITHUB_TOKEN=YOUR_GITHUB_TOKEN" | Out-File -Encoding utf8 .envWindows (Command Prompt):
cd your-org-repo
echo GITHUB_TOKEN=YOUR_GITHUB_TOKEN > .envReemplaza YOUR_GITHUB_TOKEN con un token de GitHub que tenga permiso para leer alertas de Code Scanning.
⚠️ Añade
.enva.gitignorepara que el token nunca se suba.
3. Claude Code — conectar MCP
Desde la misma carpeta del repositorio, añade el servidor MCP (no se necesita flag de token — security-mcp lo lee de .env en tiempo de ejecución):
macOS:
claude mcp add security-mcp -- node /absolute/path/to/security-mcp/server.jsEjemplo:
claude mcp add security-mcp -- node /Users/p.shreyas/workplace/experiment/code-vuls/security-mcp/server.jsWindows (PowerShell / Command Prompt):
claude mcp add security-mcp -- node C:\absolute\path\to\security-mcp\server.jsEjemplo:
claude mcp add security-mcp -- node C:\Users\shreyas\workplace\experiment\code-vuls\security-mcp\server.js4. Verificar la conexión MCP
Ejecuta:
claude mcp listSalida esperada:
security-mcp ✓ ConnectedSi el servidor no está conectado, reinicia Claude Code y verifica la ruta MCP y el archivo .env.
5. Abrir Claude Code en el repositorio objetivo
Ve a tu repositorio de la organización (la misma carpeta que contiene tu archivo .env):
macOS:
cd your-org-repo
claudeEjemplo:
cd /Users/p.shreyas/workplace/vas-experience-api
claudeWindows (PowerShell / Command Prompt):
cd your-org-repo
claudeEjemplo:
cd C:\Users\shreyas\workplace\vas-experience-api
claude6. Probar el MCP manualmente
Dentro de Claude Code, ejecuta este prompt:
Use the security-mcp tool to list open code scanning alerts for this current GitHub repo. Detect owner and repo from git remote.Resultado esperado:
Found open code scanning alerts:
- java/sql-injection ...
- java/path-injection ...
- java/log-injection ...Si ves este error:
Missing GITHUB_TOKEN in environmentComprueba lo siguiente:
Existe un archivo
.enven la carpeta del repositorio desde donde ejecutasteclaude(no la carpeta del servidorsecurity-mcp).El archivo
.envcontiene una línea exactamente comoGITHUB_TOKEN=YOUR_GITHUB_TOKEN, sin comillas ni espacios extra.Reiniciaste Claude Code (
claude) después de crear o editar.env.
Si es necesario, elimina y vuelve a añadir el MCP:
macOS:
claude mcp remove security-mcp
claude mcp add security-mcp -- node /absolute/path/to/security-mcp/server.jsWindows:
claude mcp remove security-mcp
claude mcp add security-mcp -- node C:\absolute\path\to\security-mcp\server.jsLuego reinicia Claude Code.
7. Instalar el skill fix-vuls
Este repositorio incluye el prompt del skill en fix-vuls.md. No copies el contenido manualmente — copia o mueve ese archivo a la carpeta de skills o comandos slash de tu repositorio y herramienta objetivo.
Comando slash de Claude Code — copia en el repositorio que escaneas:
macOS:
mkdir -p your-org-repo/.claude/commands
cp /absolute/path/to/security-mcp/fix-vuls.md your-org-repo/.claude/commands/fix-vuls.mdWindows (PowerShell):
New-Item -ItemType Directory -Force your-org-repo\.claude\commands
Copy-Item C:\absolute\path\to\security-mcp\fix-vuls.md your-org-repo\.claude\commands\fix-vuls.mdSkill de proyecto de Cursor — copia en el repositorio que escaneas:
macOS:
mkdir -p your-org-repo/.cursor/skills/fix-vuls
cp /absolute/path/to/security-mcp/fix-vuls.md your-org-repo/.cursor/skills/fix-vuls/SKILL.mdWindows (PowerShell):
New-Item -ItemType Directory -Force your-org-repo\.cursor\skills\fix-vuls
Copy-Item C:\absolute\path\to\security-mcp\fix-vuls.md your-org-repo\.cursor\skills\fix-vuls\SKILL.mdSkill de GitHub Copilot — copia en el repositorio que escaneas como SKILL.md (Copilot requiere frontmatter YAML; consulta la sección 11 o la sección 13):
macOS:
mkdir -p your-org-repo/.github/skills/fix-vuls
cp /absolute/path/to/security-mcp/fix-vuls.md your-org-repo/.github/skills/fix-vuls/SKILL.mdWindows (PowerShell):
New-Item -ItemType Directory -Force your-org-repo\.github\skills\fix-vuls
Copy-Item C:\absolute\path\to\security-mcp\fix-vuls.md your-org-repo\.github\skills\fix-vuls\SKILL.mdLuego añade el frontmatter YAML que se muestra en las secciones 11 o 13 al principio de SKILL.md.
Reemplaza /absolute/path/to/security-mcp con la ruta donde clonaste este repositorio, y your-org-repo con el repositorio que quieres remediar.
Cuando el skill se actualice aquí, vuelve a copiar fix-vuls.md a tu carpeta objetivo para recoger los cambios.
8. Claude Code — ejecutar el comando
Dentro de Claude Code:
/fix-vulsComportamiento final esperado:
Remediation complete after 2 cycles.
Fixed:
- Alert #4 (java/sql-injection) — src/main/java/.../Repository.java
- Alert #7 (CVE-2024-XXXX) — root pom.xml Spring Boot 3.2.x → 3.2.y
Fixed locally, pending GitHub rescan:
- Alert #9 (java/path-injection) — green build; push and wait for CodeQL rescan
Blocked:
- Alert #12 — generated code; cannot patch locally
Build: mvn -B test — SUCCESS
No commit, push, or PR was performed.9. Revisión del desarrollador
Después de que el bucle de remediación termine, revisa el resumen y el diff local:
git diffClaude ejecuta la compilación y las pruebas durante el bucle, pero confirma los resultados en tu entorno antes de hacer commit.
Si los cambios tienen buena pinta, crea una rama, haz commit, haz push y abre un PR usando el flujo de trabajo normal de tu equipo. Las alertas de Code Scanning de GitHub se actualizarán después del push y el rescan de CodeQL.
10. GitHub Copilot CLI — servidor MCP
Requisitos previos:
GitHub Copilot CLI instalado y con sesión iniciada
Abre una terminal en el repositorio de la organización que quieres escanear (la carpeta que contiene tu archivo
.env)
Opción A — registrar globalmente con copilot mcp add
macOS:
copilot mcp add security-mcp -- node /absolute/path/to/security-mcp/server.jsWindows (PowerShell / Command Prompt):
copilot mcp add security-mcp -- node C:\absolute\path\to\security-mcp\server.jsSi el proceso MCP no puede leer el .env de tu repositorio objetivo, pasa el token explícitamente:
macOS:
copilot mcp add security-mcp -e GITHUB_TOKEN=YOUR_GITHUB_TOKEN -- node /absolute/path/to/security-mcp/server.jsWindows (PowerShell):
copilot mcp add security-mcp -e GITHUB_TOKEN=YOUR_GITHUB_TOKEN -- node C:\absolute\path\to\security-mcp\server.jsVerifica:
copilot mcp list
copilot mcp get security-mcpOpción B — confirmar la configuración MCP del proyecto en el repositorio de la organización
Añade .github/mcp.json en el repositorio que escaneas para que los colaboradores tengan la misma configuración:
Ejemplo macOS (your-org-repo/.github/mcp.json):
{
"mcpServers": {
"security-mcp": {
"type": "local",
"command": "node",
"args": ["/Users/you/workplace/projects/security-mcp/server.js"],
"env": {
"GITHUB_TOKEN": "YOUR_GITHUB_TOKEN"
},
"tools": ["*"]
}
}
}Ejemplo Windows (your-org-repo\.github\mcp.json):
{
"mcpServers": {
"security-mcp": {
"type": "local",
"command": "node",
"args": ["C:\\Users\\you\\workplace\\projects\\security-mcp\\server.js"],
"env": {
"GITHUB_TOKEN": "YOUR_GITHUB_TOKEN"
},
"tools": ["*"]
}
}
}Inicia Copilot CLI desde la raíz del repositorio de la organización. En el primer uso, confía en la carpeta cuando se te solicite para que los servidores MCP del proyecto se carguen.
Dentro de una sesión interactiva también puedes ejecutar /mcp add, elegir STDIO e introducir node /absolute/path/to/security-mcp/server.js.
11. GitHub Copilot CLI — skill fix-vuls
Los skills de GitHub Copilot deben estar en una carpeta con el nombre del skill y usar un archivo llamado SKILL.md con frontmatter YAML.
Copia
fix-vuls.mden tu repositorio de la organización:
macOS:
mkdir -p your-org-repo/.github/skills/fix-vuls
cp /absolute/path/to/security-mcp/fix-vuls.md your-org-repo/.github/skills/fix-vuls/SKILL.mdWindows (PowerShell):
New-Item -ItemType Directory -Force your-org-repo\.github\skills\fix-vuls
Copy-Item C:\absolute\path\to\security-mcp\fix-vuls.md your-org-repo\.github\skills\fix-vuls\SKILL.mdAñade este bloque de frontmatter al principio de
SKILL.md:
---
name: fix-vuls
description: Fetch open GitHub code scanning alerts, apply minimal local fixes, validate with build/tests, and loop until alerts are resolved or blocked. Use when asked to fix vulnerabilities, code scanning alerts, CVEs, or /fix-vuls.
---Inicia Copilot CLI en el repositorio de la organización y recarga los skills:
cd your-org-repo
copilot/skills reload
/skills listEjecuta la remediación:
Use the /fix-vuls skill to fetch open code scanning alerts for this repo and fix them locally.12. IntelliJ IDEA — servidor MCP (widget de Copilot)
Requisitos previos:
IntelliJ IDEA con el plugin GitHub Copilot más reciente
Modo Agente habilitado en Copilot Chat (las herramientas MCP están disponibles en modo Agente)
Repositorio de la organización abierto como proyecto de IntelliJ (la carpeta que contiene tu archivo
.env)Si tu organización usa Copilot Business/Enterprise, la política Servidores MCP en Copilot debe estar habilitada
Configurar mediante el widget de Copilot Chat
Abre tu repositorio de la organización en IntelliJ IDEA.
Haz clic en el icono de GitHub Copilot en la barra de estado (esquina inferior derecha).
Selecciona Open Chat.
En el panel de chat, cambia el menú desplegable de modo a Agent.
Haz clic en el icono de herramientas en la parte inferior del panel de chat (Configure your MCP server).
Haz clic en Add MCP Tools (o Add More Tools...).
En el editor de
mcp.json, añade la entrada del servidorsecurity-mcpque se muestra a continuación.Guarda el archivo con Command + S (macOS) o Ctrl + S (Windows). Reinicia el IDE si las herramientas no aparecen inmediatamente.
Haz clic de nuevo en el icono de herramientas y confirma que
list_code_scanning_alertsaparece listado bajosecurity-mcp.
Alternativa — abrir la configuración MCP desde la barra de estado
Haz clic en el icono de GitHub Copilot en la barra de estado.
Selecciona Edit Settings.
Abre Model Context Protocol → Configure.
Edita
mcp.jsoncon la misma entrada del servidor que se muestra a continuación y guarda.
Entrada de mcp.json para security-mcp
macOS:
{
"servers": {
"security-mcp": {
"command": "node",
"args": ["/Users/you/workplace/projects/security-mcp/server.js"],
"env": {
"GITHUB_TOKEN": "YOUR_GITHUB_TOKEN"
}
}
}
}Windows:
{
"servers": {
"security-mcp": {
"command": "node",
"args": ["C:\\Users\\you\\workplace\\projects\\security-mcp\\server.js"],
"env": {
"GITHUB_TOKEN": "YOUR_GITHUB_TOKEN"
}
}
}
}Reemplaza la ruta de args con tu carpeta clonada de security-mcp. Si .env está presente en el proyecto abierto de IntelliJ, puedes omitir env y dejar que dotenv cargue GITHUB_TOKEN desde la raíz del proyecto.
Probar en modo Agente
En Copilot Chat (modo Agente), ejecuta:
Use the security-mcp tool to list open code scanning alerts for this current GitHub repo. Detect owner and repo from git remote.13. IntelliJ IDEA — skill fix-vuls
El modo Agente de IntelliJ usa la misma disposición de Agent Skills que Copilot CLI.
Copia
fix-vuls.mden tu repositorio de la organización:
macOS:
mkdir -p your-org-repo/.github/skills/fix-vuls
cp /absolute/path/to/security-mcp/fix-vuls.md your-org-repo/.github/skills/fix-vuls/SKILL.mdWindows (PowerShell):
New-Item -ItemType Directory -Force your-org-repo\.github\skills\fix-vuls
Copy-Item C:\absolute\path\to\security-mcp\fix-vuls.md your-org-repo\.github\skills\fix-vuls\SKILL.mdAñade el frontmatter YAML al principio de
SKILL.md(igual que en la sección 11):
---
name: fix-vuls
description: Fetch open GitHub code scanning alerts, apply minimal local fixes, validate with build/tests, and loop until alerts are resolved or blocked. Use when asked to fix vulnerabilities, code scanning alerts, CVEs, or /fix-vuls.
---Vuelve a abrir el proyecto o reinicia IntelliJ si el skill no aparece inmediatamente.
En Copilot Chat (modo Agente), ejecuta:
Use the /fix-vuls skill to fetch open code scanning alerts for this repo and fix them locally.Cuando fix-vuls.md se actualice en este repositorio, vuelve a copiarlo a .github/skills/fix-vuls/SKILL.md en tu repositorio de la organización (mantén el bloque de frontmatter).
Ciclo de vida final
Developer runs /fix-vuls (Claude Code, Cursor, or Copilot Agent mode)
↓
Agent detects GitHub repo
↓
Security MCP fetches Code Scanning alerts
↓
Agent triages, researches CVEs, patches, and validates (loop)
↓
Agent reports summary (fixed / blocked / pending rescan)
↓
Developer reviews diff, commits, pushes, and raises PR manuallyThis server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
Alicense-quality-maintenanceProvides tools for autonomous CVE detection, enrichment, and remediation across managed repositories using GHSA and NVD data. It enables automated triage and pull request creation for dependency fixes based on configurable severity policies.- AlicenseAqualityCmaintenanceVisual CVE audit dashboard for npm, Python, Go, and Rust projects. Scans your project manifests (package-lock.json, requirements.txt, go.sum, Cargo.lock) against OSV.dev live data, opens a browser dashboard for human review, then applies fixes only after explicit confirmation. Supports multi-service monorepos in one command.4354MIT
- Flicense-qualityCmaintenanceScans Python, Node.js, Java/Spring, and PHP dependency manifests for known vulnerabilities using OSV and GitHub Advisory APIs.
- AlicenseAqualityAmaintenanceLocal-only GitHub Actions and CI maintenance scanner for AI-built apps. Exposes scan, explanation, and fix-planning tools to MCP clients; modifies nothing and makes no outbound requests by default.3632MIT
Related MCP Connectors
Generate SBOMs, scan vulnerabilities, and analyze dependencies from local projects or Git repos.
Screens public GitHub repos and PRs to generate risk maps, findings, and merge-readiness signals.
CVE lookups (NVD) and dependency-manifest audits (OSV) for AI agents. No API keys.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/P-Shreyas-Maersk/security-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server