
AIアシスタントがセルフホスト型のSn1perインストールを操作できるようにするMCPサーバー。スコープ設定され監査されたスキャンを実行し、検出結果、ポート、サブドメイン、テクノロジーを構造化データとして返します。
あなたのAIアシスタントからセルフホスト型のSn1perを操作: スコープ制御、監査対応、許可されたテスト向け。
許可されたセキュリティテスト専用です。Sn1per MCP Serverは、あなたが所有しているシステム、または書面により明示的にテストを許可されたシステムに対してのみ、その許可の範囲内で使用してください。
ステータス: ベータ (0.9.x)。ツール名、パラメータ、出力フィールドは 0.xリリースの互換性ポリシー に従います。
Sn1per MCP Serverは、あなたがすでに使用しているAIアシスタントを、あなた自身のLinuxホスト上のSn1perインストール環境に接続します。Sn1perの隣でstdio経由でローカルに動作し、設定したスコープ外のターゲットに対するスキャンリクエストを拒否し(制限事項を参照)、実行したすべてのスキャン、キャンセル、削除、エクスポートのリクエストをローカルの監査ログに記録し、Sn1perの検出結果、開いているポート、サブドメイン、テクノロジーを、デフォルトでシークレットを伏せた構造化データとして返します。Sn1per Community Edition 9.x、およびSE、Professional、Enterpriseで使用される11.xエンジンをサポートしています。エディションマトリクスには検証済みの内容が記載されています。Apache-2.0ライセンスの無料オープンソースであり、許可されたセキュリティテスト専用です。
サーバーはあなたのホスト上のSn1perの隣で動作します。戦利品はそこに留まり、ツールの結果がホストから出るのは、あなたのMCPクライアントとそれが使用するモデルサービスを通じてのみです。ホストから何が出るかについてはデータの取り扱いとプライバシーをお読みください。
スキャンを行うのはSn1perです。Sn1per MCP Serverは、あなたがすでに使用しているAIアシスタントにそれを操作させることを可能にします。汎用のツールランナーMCPサーバーは個々のコマンドを公開します。Sn1per MCP ServerはSn1perのオーケストレーションされたスキャンモードを操作し、その構造化された結果を、スコープの強制と監査ログとともに返します。
<user> は、あなたのMCPクライアントを実行するユーザーに置き換えてください。envファイルが正規の設定であるため、--check はクライアントが実行する内容を正確に認識します。
pipxをインストールし、そのユーザーとしてサーバーをインストールします(pipxを sudo で実行しないでください):
sudo apt install pipx
pipx ensurepath
# open a new shell, then:
pipx install sn1per-mcp==0.9.0
モード 0600 で環境ファイル /home/<user>/.config/sn1per-mcp/env を作成します:
mkdir -p /home/<user>/.config/sn1per-mcp
install -m 0600 /dev/null /home/<user>/.config/sn1per-mcp/env
この行を記述し、その後プレースホルダーをテストが許可されているターゲットに置き換えてください。プレースホルダー自体は拒否される(scope_invalid)ため、置き換えるまで何もスキャンされません。
SNIPER_MCP_SCOPE=<authorized-targets>
設定を確認します。出力には、sudo ルールが指定する必要がある Sn1per CLI の realpath が含まれます:
/home/<user>/.local/bin/sn1per-mcp --env-file /home/<user>/.config/sn1per-mcp/env --check
実際のパス(標準インストールでは /usr/share/sniper/sniper)を使用して sudoers ドロップインを追加します。クライアントが root として実行されている場合は、この手順をスキップしてください。完全な手順: docs/install.md。
sudo visudo -f /etc/sudoers.d/sn1per-mcp
<user> ALL=(root) NOPASSWD: /usr/share/sniper/sniper
Claude Code にサーバーを登録します(その他のクライアント: docs/clients.md):
claude mcp add sn1per -s user -- /home/<user>/.local/bin/sn1per-mcp --env-file /home/<user>/.config/sn1per-mcp/env
新しいクライアントセッションを開始し、「Run sniper_status」と尋ねます。
0.9.0 のクライアントテスト(2026-10-12)に合格したクライアントのみを掲載しています。設定パス、承認設定、クライアントごとの注意事項は docs/clients.md にあります。
| クライアント | ステータス | 削除およびエクスポートツール(MCP elicitation が必要) |
|---|---|---|
| Claude Code (2.1.284) | 検証済み | はい、対話セッション内で。SDK ホストなしの claude -p は確認をキャンセルするため、何も削除またはエクスポートされません |
| Codex CLI (0.125.0) | codex exec のみで検証済み | codex exec では不可。確認を拒否します。対話型 Codex インターフェースはまだテストされていません |
| Web、モバイル、リモートコネクタクライアント | 0.9.0 では未サポート(stdio のみ) | 該当なし |
Claude Code: クイックスタートのワンラインコマンド(ステップ 5)。Codex CLI: config.toml のエントリ、およびそこで export_workspace が必要とする承認設定は、docs/clients.md にあります。ローカル stdio サーバーを起動するその他のクライアントは、0.9.0 ではまだテストされていません。
Sn1per が別のマシンにある場合、またはクライアントが macOS や Windows にある場合は、docs/remote.md を参照してください。SSH レシピ(Linux OpenSSH クライアントで検証済み。Windows および macOS クライアントは文書化済み、未検証)、WSL2(文書化済み、未検証)、Docker レシピ(文書化済み、未検証)が記載されています。
サーバーは、ホスト上の Sn1per CLI からエディションとエンジンを検出します。「検証済み」とは、2026-10-12 の 0.9.0 検証実行で実際に試されたことを意味し、「想定内」とは、既知の阻害要因はないが、まだ試されていないことを意味します。ツールごとの結果、実行されたスキャンモード、実行後に行われた修正は、モード表およびエディションごとの注意事項とともに docs/editions.md にあります。
| エディション | エンジンダイアレクト | ステータス |
|---|---|---|
Sn1per Community Edition 9.2(リポジトリ master、a5450bc) | 9.x | 2026-10-12 に検証済み。サーバーは root として実行 |
| 以降の Sn1per Community Edition 9.x リリース | 9.x | 想定内 |
| Sn1per SE 11.0 および 11.1 | 11.x | 2026-10-12 に検証済み(11.0 は root として、および sudo 経由の一般ユーザーとして、11.1 は root として) |
| Sn1per Enterprise、11.3 開発ビルド | 11.x | 2026-10-12 に検証済み。sudo 経由の一般ユーザーとして |
| 11.2 を含むその他の 11.x リリース | 11.x | 想定内 |
| Sn1per Professional 2026 | 11.x | SE および Enterprise と同じ 11.x エンジンを使用。Professional インストールではまだ実行されていません |
| Sn1per Community Edition 9.2 未満 | - | 未サポート |
プラットフォーム: Linux のみ。Kali Rolling(amd64)で検証済み。Ubuntu 24.04: インストールと MCP セッションで検証済み(Ubuntu ではスキャンは実行されていません)。Debian 12 および 13 と Parrot: 想定内。Ubuntu 22.04 および Kali 2022.x: uv 管理の Python または別途インストールされた Python 3.11 以降がある場合のみ想定内。これらのシステム Python 3.10 は拒否されます。BlackArch: 想定内。PATH 上に sniper シンボリックリンクが必要です。arm64: 想定内。macOS および Windows はサーバーホストとしてはサポートされていません。SSH 経由のクライアントホストとして使用してください(docs/remote.md)。
完全なパラメータ、結果例、エラーコード: docs/tools.md。
| ツール | 機能 | 読み取り専用または状態変更 | 利用可否 |
|---|---|---|---|
sniper_status | 検出されたエディション、利用可能なスキャンモード、設定されたスコープ、およびスキャンが利用できない可能性がある理由を報告する | 読み取り専用 | 常時 |
list_workspaces | ホスト上の Sn1per ルートワークスペースを一覧表示する | 読み取り専用 | 常時 |
scan_status | スキャンの状態と編集済みのログ末尾、またはワークスペース内で何かが実行されているかどうかを報告する | 読み取り専用 | 常時 |
get_findings | 重大度、タイトル、場所、ホストを含む検出結果を読み取る | 読み取り専用 | 常時 |
get_ports | プロトコル、サービス、バージョンを含む開いているポートを読み取る | 読み取り専用 | 常時 |
get_subdomains | 発見されたサブドメインを読み取る | 読み取り専用 | 常時 |
get_technologies | 検出された Web テクノロジーを読み取る | 読み取り専用 | 常時 |
grep_loot | 1 つのワークスペース内(オペレーターが要求した場合はすべてのワークスペース内)のルートファイルを、文字列または拡張正規表現で検索する | 読み取り専用 | 常時 |
sniper_scan | 1 つのターゲットに対して root として Sn1per スキャンを開始し、ジョブハンドルを返す | 状態変更: ターゲットにトラフィックを送信する | 常に登録されるが、スコープを設定するまですべてのターゲットを拒否する |
cancel_scan | このサーバーが開始したスキャンを停止する | 状態変更 | 常時 |
delete_workspace | 人間がワークスペース名を入力した後、root として 1 つのワークスペースとそのスキャンデータを完全に削除する | 状態変更: 取り消し不能 | SNIPER_MCP_ENABLE_DESTRUCTIVE=1 かつ MCP elicitation 対応クライアントの場合のみ |
export_workspace | 人間がワークスペース名を入力した後、1 つのワークスペースの tar.gz アーカイブをサーバーの状態ディレクトリに書き込む | 状態変更: ファイルを書き込む | SNIPER_MCP_ENABLE_DESTRUCTIVE=1 かつ MCP elicitation 対応クライアントの場合のみ |
すべての設定、スコープの文法、コマンドラインフラグ: docs/configuration.md。