MCP Shield logo

MCP Shield

by @buildwithabid

Scans npm packages and local MCP projects for vulnerabilities, injection, secrets, transport risks, and supply-chain issues.

Install MCP Shield

Pick your client, then add it in one click or paste the config.

STDIONode.js
~/Library/Application Support/Claude/claude_desktop_config.json
claude_desktop_config.json
{
  "mcpServers": {
    "buildwithabid-mcp-shield": {
      "command": "npx",
      "args": [
        "-y",
        "@buildwithabid/mcp-shield"
      ]
    }
  }
}

Settings → Developer → Edit Config, merge this into mcpServers, then fully quit and reopen Claude Desktop.

We couldn’t confirm it starts correctly

The install command installed and started the server, which then stopped for configuration (such as an API key) that our sandbox does not have — expected for servers that connect to your account.

npx -y @buildwithabid/mcp-shield

No response to initialize.

This is an experimental automated check and can have false negatives — missing environment variables, a slow cold install, etc. It doesn’t necessarily mean something’s wrong. Last checked 10d ago.

Overview

@buildwithabid/mcp-shield scans npm MCP packages and local project directories for security issues before an agent uses them. It checks dependencies, permissions, tool descriptions, rug-pull behavior, secrets, transport settings, and supply-chain indicators, then produces scored terminal, JSON, or Markdown reports. It runs from the CLI or over stdio as an MCP server, exposing scan_package, scan_local, and get_report. Reach for it when reviewing an MCP server before installation, deployment, or connection to an AI client.

Use cases

  • Scan an npm MCP package before installing it
  • Audit a local MCP project before deployment
  • Export JSON findings for CI/CD checks
  • Review tool descriptions for prompt injection
  • Check packages for secrets and suspicious install scripts

Key features

  • Seven security check categories
  • npm package and local directory scanning
  • Prompt injection and rug-pull detection
  • Secrets and dependency auditing
  • Terminal, JSON, and Markdown reports
  • MCP tools over stdio

Tools3

What MCP Shield lets your agent do. Expand a tool for its parameters.

Self-reported~50 tokens of context

Security & health

What it can reach and how reliably it runs — from our own checks, not the maintainer’s claims.

ActiveLast checked 3d ago

Recent health check succeeded.

Supply-chain signal

No high-severity advisories surfaced by our automated scan.

Critical 0High 0Medium 0Low 0

Scanned 11d ago via OSV.dev · @buildwithabid/mcp-shield (npm)

Adoption & maintenance

Factual signals from GitHub, npm, and our automated checks — not a rating.

GitHub stars2Stargazers on the source repository.
npm downloads129Package downloads in the last 30 days.
Last commit1mo agoMost recent push to the default branch.
Install checkRunsOur sandbox started it; it then asked for an API key or config.
Tools exposed3Callable tools this server registers over MCP.

How MCP Shield works

What @buildwithabid/mcp-shield does

@buildwithabid/mcp-shield is a security scanner for MCP servers. It accepts either an npm package name or a local directory and evaluates source, configuration, package metadata, and dependency information. The result is a scored report that groups findings by severity and identifies passed checks as well as issues.

Seven check areas are covered:

  • Dependency auditing through npm audit, including direct and transitive dependency CVEs.
  • Permission and scope analysis for unrestricted shell commands, file paths, URLs, raw SQL, dynamic code execution, and child_process access.
  • Tool-description injection detection, including hidden instructions, role changes, encoded payloads, Unicode tricks, and exfiltration patterns.
  • Rug-pull detection for tool descriptions that can change after approval.
  • Secret discovery in source files and .env files.
  • Transport checks for insecure HTTP, permissive CORS, exposed credentials, disabled TLS verification, and unprotected sensitive routes.
  • npm supply-chain analysis, including typosquatting, maintainer risk, lifecycle scripts, package naming, and repository metadata.

How it works

The CLI determines the scan type from the target. Names that are not paths are resolved through npm; targets beginning with ., /, or ~, along with absolute paths, are treated as local directories. Relative paths use the current working directory, while a leading tilde expands to the home directory.

Scans inspect JavaScript and TypeScript, several configuration formats, environment files, shell scripts, and source files from languages including Python, Ruby, Go, Rust, Java, Kotlin, C#, PHP, and Terraform. Common generated, dependency, cache, and version-control directories are excluded. Package scans also query npm metadata and inspect package lifecycle scripts before installation.

Setup and configuration

Run a scan without a global installation:

Terminal
npx @buildwithabid/mcp-shield scan @some/mcp-server
npx @buildwithabid/mcp-shield scan ./my-mcp-server

Install globally with npm if preferred:

Terminal
npm install -g @buildwithabid/mcp-shield

The CLI supports terminal output by default, plus JSON and Markdown formats. Use --output to save a report, and --quick to skip slower checks such as rug-pull detection. Node.js 18, 20, or 22 and newer are supported.

To expose the scanner to an MCP client, start its stdio server:

Terminal
npx @buildwithabid/mcp-shield serve

Claude Code can register it with claude mcp add mcp-shield -- npx @buildwithabid/mcp-shield serve.

Tools and capabilities

In MCP server mode, scan_package scans an npm MCP package by name, scan_local examines a directory on disk, and get_report returns the most recent report as JSON, Markdown, or terminal-formatted output. The CLI offers equivalent package and local scans with selectable output formats.

Supply-chain checks can flag recently published packages as informational findings, detect package names close to known MCP packages, identify packages with a single maintainer, and report suspicious install scripts or scripts that download remote code. Secret checks recognize common cloud, API, messaging, database, JWT, private-key, password, token, and secret patterns while ignoring common placeholder values.

Limitations and notes

Quick scans omit slower checks, including rug-pull detection. Local and package scans skip dependency, version-control, cache, virtual-environment, coverage, and test-cache directories; local scans also skip common build-output directories. Package scans inspect downloaded npm content and metadata, while local scans operate on the path supplied to the command. The MCP server uses stdio transport.

Reviews

No reviews yet — be the first to share how it worked for you.

Frequently Asked Questions about MCP Shield

@buildwithabid/mcp-shield is an MCP server that connects AI assistants to security scans for npm MCP packages and local directories. Its main tools are scan_package, scan_local, and get_report, covering vulnerability checks, prompt injection, secrets, transport settings, rug-pull behavior, dependencies, and supply-chain risks.

Install it with npm or run it directly through npx. Use `npm install -g @buildwithabid/mcp-shield` for a global install, or start MCP mode with `npx @buildwithabid/mcp-shield serve`.

Run `npx @buildwithabid/mcp-shield scan <package-name>`. Add `--format json` for machine-readable output, `--format markdown --output report.md` to save Markdown, or `--quick` to skip slower checks such as rug-pull detection.

Pass the project path to the scan command, such as `npx @buildwithabid/mcp-shield scan ./my-mcp-server`. Relative paths resolve from the current directory, while absolute paths and paths beginning with `~` are also supported.

Yes. Start the stdio server with `npx @buildwithabid/mcp-shield serve`, then register it using `claude mcp add mcp-shield -- npx @buildwithabid/mcp-shield serve`.

Related MCP servers

Add a badge to your READMEShow it’s listed — live SVG, Markdown or HTML.

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewMCP Shield AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/buildwithabid-mcp-shield?style=directory)](https://allmcps.com/mcp/buildwithabid-mcp-shield)
HTML Embed
<a href="https://allmcps.com/mcp/buildwithabid-mcp-shield"><img src="https://allmcps.com/api/badge/buildwithabid-mcp-shield?style=directory" alt="MCP Shield on AllMCPs" /></a>