
daoyuanli2816/mcp-fence
Security testingこのページは AI により自動翻訳されています。技術的な詳細は原文をご確認ください。 原文を見る
ローカルファースト・セキュリティ・スキャナー、MCP プロトコル・インスペクター、動的ファザー、ドッカー・サンドボックス、およびモデル・コンテキスト・プロトコル・サーバーのレポート・ジェネレータ.
概要
ローカルファースト・セキュリティ・スキャナー、MCP プロトコル・インスペクター、動的ファザー、ドッカー・サンドボックス、およびサーバーのレポート・ジェネレーター。 mcp-fence は開発者向けツールです。 mcp.json(または書き込まれたMCPサーバーを実行している)でそれをポイントし、次のようになります。 1。 ツール中毒、危険な起動コマンド、プレーンテキストの秘密、スキーマのギャップ、および未使用のHTTP輸送用の構成とソース。 2. サーバは stdio を上回る — 初期化、ツール/リストを実行し、スキーマ/注釈を収集します。 3.スキーマ-awareのペイロード(パスのtraversal、命令の注入、SSRF、プロンプトの注入、特大入力、タイプ混乱)が付いているすべての用具。 デフォルトで安全; --toy-mode または --allow-unsafe 経由でランタイムのペイロードを選択して下さい。 4。 センシブルプロファイル(制限、ファイルシステム読み取り専用、ネットワーク拒否、dev)を備えたDocker内の任意のstdioサーバー。 5。 プレーンテキストテーブル、JSON、SARIF 2.1.0(GitHubコードスキャン用)、または完全にオフラインのHTMLページとして見つける。 です。 オプションのローカルLLMの判断は、ローカルオラマまたはOpenAI互換のエンドポイントに話すことができます.
概要(AI 翻訳)
ローカルファーストの保証走査器、MCPの議定書の検査官、動的fuzzer、 Docker サンドボックス、およびModel コンテキストプロトコルのレポートジェネレータ サーバー
[mcp-fence]は開発者ツールです。 [mcp.json でポイントをつけます。
MCP サーバを実行して、次のようにします。
1.状態にスキャンツール中毒の構成とソース、
危険な起動コマンド、プレーンテキストの秘密、スキーマのギャップ、および
非認証された HTTP トランスポート。
2。Inspect サーバは stdio 上に ライブ — [initialize を実行します。
[tools/list]は、スキーマ/注釈を収集します。
3。Fuzzスキーマ・ウェア・ペイロード(パス・トラバーサル、
コマンド注入、SSRFのプロンプト注入、特大入力、タイプ
混乱)。 デフォルトで安全;ランタイムペイロードを経由して選択
[--toy-mode または [--allow-unsafe] 。
4。Sandbox センシブルプロファイルを持つDockerの任意のstdioサーバー
[strict, filesystem-readonly, [network-deny], [[dev]]).
5.報告書 プレーンテキストテーブル、JSON、SARIF 2.1.0(for
GitHub コードのスキャン)、または完全にオフラインのHTMLページ。
非破壊、ローカル優先、およびnoクラウドLLMを使用して デフォルト。 オプションのローカルLLMの判断は、ローカルオラマや OpenAI対応エンドポイント
インストール
このページは AI により自動翻訳されています。技術的な詳細は原文をご確認ください。
README
以下は原文 README の抜粋です。原文を見る。
Local-first security scanner, MCP protocol inspector, dynamic fuzzer, Docker sandbox, and report generator for Model Context Protocol servers.

mcp-fence is a developer tool. Point it at your mcp.json (or any
running MCP server you wrote) and it will:
- Statically scan the config and source for tool poisoning, dangerous startup commands, plaintext secrets, schema gaps, and unauthenticated HTTP transports.
- Inspect the server live over stdio — runs
initialize,tools/list, gathers schemas/annotations. - Fuzz every tool with schema-aware payloads (path traversal,
command injection, SSRF, prompt injection, oversize input, type
confusion). Safe by default; opt in to runtime payloads via
--toy-modeor--allow-unsafe. - Sandbox any stdio server in Docker with sensible profiles
(
strict,filesystem-readonly,network-deny,dev). - Report findings as a plain-text table, JSON, SARIF 2.1.0 (for GitHub code scanning), or a fully offline HTML page.
It is non-destructive, local-first, and uses no cloud LLM by default. An optional local-LLM judge can talk to a local Ollama or OpenAI-compatible endpoint.
Install
From PyPI:
pip install mcp-fence
From source (for contributors):
git clone https://github.com/DaoyuanLi2816/mcp-fence
cd mcp-fence
python -m venv .venv
source .venv/bin/activate # Windows: .venv\Scripts\activate
python -m pip install -e ".[dev]"
Requires Python 3.11+.
30-second quickstart
# 1. Bring up the bundled examples in your working directory.
mcp-fence init-example ./mcp-fence-examples
# 2. Static scan the intentionally poisoned metadata server.
mcp-fence scan mcp-fence-examples/vulnerable_metadata_server/mcp.json
# 3. Live-inspect the safe baseline.
mcp-fence inspect mcp-fence-examples/safe_server/mcp.json
# 4. Fuzz the arbitrary-file-read server.
mcp-fence fuzz mcp-fence-examples/vulnerable_filesystem_server/mcp.json
# 5. Generate a `docker run` command that sandboxes any of the above.
インストール
This server does not publish a one-line install command.
Open the repository installation guide MCP 初心者?mcpskill.org のガイドから始めましょう →