nel-veil について
nel-veilは、サイトの公開セキュリティ状況を調べるための、エージェントや利用者向けのパッシブなドメインスキャンMCPサーバーです。メール保護、TLS、HTTPヘッダー、公開ファイル、乗っ取りリスク、参考情報としてのコンプライアンス準備状況を確認し、ポートスキャンやエクスプロイトテストは行いません。
主な機能
- 01DMARC・SPF・DKIMによるメール保護を確認
- 02TLS証明書とHTTPセキュリティヘッダーを検査
- 03既知のパスにある公開ファイルを確認
- 04サブドメイン乗っ取りの可能性を特定
- 05スキャン結果を102のコンプライアンスフレームワークに対応付け
活用シーン
- 01ドメインのメールなりすまし対策の確認
- 02サイトの公開TLS・ヘッダー設定の点検
- 03公開面のスキャン結果を基準に照らして確認
MCP 対応
個別チェック、統合スキャン、過去のレポート取得、コンプライアンス対応付けなど、9種類のドメイン確認・レポートツールをMCPクライアントに公開します。ポートスキャンやエクスプロイトテストは提供しません。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
npx -y nel-veil-mcpNEL_API_URLOverride the NEL VEIL API base URL. Only needed for local development against a self-hosted backend; leave unset to use the public API at https://api.nelprofessional.com.ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。
ツール
9掲載時のツール一覧 · 2 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| domain | string | はい | 確認するドメイン。例:example.com。ドメインのみを指定するのが最適です。完全な URL、www. 接頭辞付きの名前、userinfo 部分を含むアドレスも受け付け、ホスト名のみに正規化します。パブリック IP アドレスも受け付けるため、オリジンサーバーを直接確認できます。拒否されるもの:プライベートまたは予約済みアドレス(127.0.0.1、10.x、192.168.x、169.254.169.254 など)、localhost のような TLD のない名前、IPv6 リテラル。 |
詳細
NEL VEIL MCP — AI エージェント向けの無料ドメインセキュリティチェック
エージェントに 「example.com のメールをなりすまして送信できますか?」 と尋ねると、約10秒で実際の結果が得られます。
NEL VEIL MCP は、MCP 互換エージェントに、ドメインの公開セキュリティ状況をチェックする9つのツールを提供します。メールのなりすまし(DMARC/SPF/DKIM)、TLS の弱点、HTTP セキュリティヘッダー、公開状態のファイル、サブドメイン乗っ取りのリスク、一括スキャン、過去のスキャン結果の取得、そして世界の102のフレームワークを登録したリストに基づくコンプライアンス対応状況をチェックできます。
無料。API キー不要。登録不要。
インストール
Claude Code — コマンド1つでインストールできます。
claude mcp add nel-veil -- npx -y nel-veil-mcp
任意の MCP クライアント — 設定ファイルに以下を追加してください。
{
"mcpServers": {
"nel-veil": {
"command": "npx",
"args": ["-y", "nel-veil-mcp"]
}
}
}
直接実行して、動作を確認します。
npx -y nel-veil-mcp
準備完了を示す行(例:nel-veil-mcp 0.2.1 ready — 9 tools, free passive tier.)が標準エラー出力に表示された後、標準入力で JSON-RPC を待ち受けます。これは正常な動作です。これは CLI ではなく stdio サーバーであり、標準出力はプロトコル用のため、それ以外の内容が書き込まれることはありません。
Node 18 以降が必要です。
30秒で確認:あなたのドメインはなりすまし可能ですか?
インストール後、エージェントに次のように尋ねます。
example.com のメールがなりすまし可能かチェックしてください。
check_email_spoofing が呼び出されます。執筆時点での example.com の実際の出力は次のとおりです。
Check if a domain can be email-spoofed — example.com
Score: 100/100 (done)
2 findings:
[LOW] DMARC has no reporting address (rua/ruf), you have no visibility into spoofing
[LOW] DKIM key may be 1024-bit (weak), 2048-bit recommended
Free check, built from public information. No port scanning and no exploit testing —
though some checks (well-known path requests, admin-panel reachability) do more than
passive reading; see nelprofessional.com/mcp. Active scanning requires verified domain
ownership and runs only at nelprofessional.com.
More: https://www.nelprofessional.com/mcp
このドメインは良好な状態です。特に驚かれることが多いのは、DMARC ポリシーが p=none になっているケースです。設定済みで、すべてを監視しているように見えますが、何もブロックしません。
ツール
| ツール | 回答する内容 |
|---|---|
check_email_spoofing | このドメインから送信されたように見えるメールを、誰かが送信できますか?(DMARC/SPF/DKIM) |
check_tls | このドメインの証明書は有効で信頼でき、有効期限が迫っていませんか?また、接続で非推奨の TLS バージョンが引き続きネゴシエートされていませんか? |
check_security_headers | このサイトは、ブラウザーで訪問者を保護するためのヘッダーを送信していますか? |
check_exposed_files | このドメインは、本来公開すべきでないファイルを公開していますか? |
check_subdomain_takeover | 他人が取得できるサービスを指す DNS レコードはありますか? |
scan_domain | 上記すべてを一度にチェックし、モジュールごとのスコアを表示します。 |
get_scan_report | nelprofessional.com で実行済みのスキャンを、scn_… ID で取得します。 |
list_compliance_frameworks | どの法律や規格に照らしてチェックでき、どれには対応できないかを示します。 |
check_compliance | この検出結果は、GDPR、NIS2、PIPEDA、CCPA、ISO 27001、SOC 2 など、さらに96の規格への準拠状況について何を示唆していますか? |
各ツールは、実行可能な具体的な検出結果とともに、0〜100のスコアを返します。
コンプライアンス
check_compliance は、カナダ、米国、EU/EEA、英国、アジア太平洋、アフリカ、および世界各地の102のフレームワークを登録したリストに対して、1回のパッシブスキャンを照合し、各検出結果に関連する具体的な条項を示します。
スコアを再利用する前に、coverage フィールドを確認してください。各フレームワークについて、依拠するスキャンカテゴリのうち実際に確認できた数が、9/16 のように表示されます。
- 関連するチェックが実行されなかったフレームワークは、スコアが null、評価層が "Not assessed" となり、理由も示されます。これは不明であり、問題がないという意味ではありません。
- フレームワークのカテゴリの半数未満しか確認できていない状態で問題なしと判定された場合は、"Strong" ではなく "Partial" となります。
- **102のうち26は「評価不能」**です。マネーロンダリング防止制度、消費者保護法、刑事犯罪に関する規定、証券開示規則には、外部スキャンでは証拠を提示できない技術的な保護措置がありません。これらも一覧に記載して説明しますが、スコアは付けません。
これらは、公開領域の証拠に基づく、準備状況を示す参考情報です。**監査でも、認証でも、法的助言でもありません。**また、各フレームワークには、外部スキャンでは確認できない要件についての注記も付いています。たとえば、同意記録、影響評価、保存期間の計画、ベンダー契約、取締役会のガバナンスなどです。
送信する情報 — 明確に説明します
ここでは、安全そうに聞こえることよりも正確さが重要です。別の人が所有するドメインをツールの対象にしてよいか判断する際に、頼りにする説明だからです。
ここにあるツールは、ポートスキャンもエクスプロイトテストも行いません。 これらは実際に侵入性があり、ドメイン所有者の許可が必要なため、MCP 経由では意図的に一切提供していません。
ただし、「パッシブ」は「見えない」と同じではなく、これらのツールのいくつかは公開情報を読み取るだけではありません。
check_tlsは、ブラウザーと同じようにドメインへ接続します。 NEL のインフラからポート 443 に対して通常の TLS ハンドシェイクを 1 回行い、サーバーが提示する情報を読み取ります。具体的には、証明書の発行者とサブジェクト、有効期間と残り日数、サブジェクト代替名、ネゴシエートされたプロトコルと暗号スイートです。それ以外には接続せず、サードパーティに対象のテストを依頼することもありません。有効期限切れの証明書、14 日以内または 30 日以内に期限切れとなる証明書、自己署名証明書、信頼されていないチェーン、ホスト名をカバーしない証明書、TLS 1.0 または 1.1 でネゴシエートされた接続を報告します。1 回のハンドシェイクではわからないこと: その接続でサーバーが選んだ内容はわかりますが、サーバーが受け入れる可能性のあるすべての内容がわかるわけではありません。サポートされている暗号スイートの一覧表示、Heartbleed、POODLE、DROWN、RC4 のサポートのテストは行わず、レターグレードも出しません。これらには、以下で説明する詳細な評価が必要です。check_subdomain_takeoverは DNS だけを調べるものではありません。 一般的なサブドメイン名の小規模な固定リストを解決し、既知のクラウドホストを指しているものに対して HTTPS リクエストを 1 回行います。何かを取得したり変更したりすることはありません。check_exposed_filesは、よく知られたパス(.env、.git/configなど)の小規模な固定リストにリクエストを送信します。ブルートフォースやファジングは行いません。リストが増えたり、状況に応じて変化したりすることもありません。ただし、これらはクローラーがリクエストしないパスなので、対象のログにはセキュリティチェックとして認識される形で記録されます。scan_domainは上記のすべてを実行し、さらに一般的な管理パネル(/phpmyadmin/、/manager/html)にパブリックからアクセスできるかどうかも確認します。
上記はすべて、ドメインが公開している情報です。攻撃は一切行いません。ただし、通常のクローリングより踏み込んだ確認を行うため、自分が所有する、または評価する権限を持つドメインを対象に実行することをおすすめします。
ポートの公開状況、API のプロービング、概念実証チェック、Qualys SSL Labs のグレードと Heartbleed、POODLE、DROWN、RC4 のテストを実施する詳細な TLS 評価(tls_labs)などのアクティブスキャンは、ドメインを管理していることを DNS-TXT で証明したうえで、nelprofessional.com から利用できます。これらには、この MCP サーバーからアクセスできません。所有者が一度所有権を証明すれば、NEL が結果に責任を持てるため、これが適切な場所です。
レート制限。 IP アドレスごとに、単体チェックは 1 分あたり 10 回、フルスキャンは 1 分あたり 3 回です。上限に達した場合は、1 分待ってください。
プライバシー。 このパッケージは API キー、メールアドレス、アカウント識別子を送信しません。各リクエストには、問い合わせたドメインと nel-veil-mcp のユーザーエージェントが含まれます。他のあらゆる HTTP サービスと同様に、NEL にはリクエスト元の IP アドレスが見えることにご注意ください。レート制限はこの IP アドレスに基づいています。
設定
| 変数 | デフォルト | 用途 |
|---|---|---|
NEL_API_URL | https://api.nelprofessional.com | セルフホストの NEL バックエンドを指定します。ローカル開発でのみ必要です。 |
開発
以下の手順には、公開されている npm パッケージではなく、git リポジトリが必要です。tarball に含まれるのは dist/ だけなので、src/ と scripts/ は含まれていません。
git clone https://github.com/NELPROINC/nel-veil-mcp.git
cd nel-veil-mcp
npm install
npm run build
node scripts/mcp-smoke.mjs example.com
scripts/mcp-smoke.mjs は、ビルド済みサーバーを npx とまったく同じように起動し、MCP ハンドシェイクを実行して、ツールの一覧を取得したうえで実際に 1 つのツールを呼び出します。そのため、ユニットテストでは検出できないトランスポートやスキーマの問題も検出できます。
NEL VEIL について
NEL VEIL は、組織と認証済みのサイバーセキュリティ専門家をつなぐマーケットプレイスである NEL Professional を支えるセキュリティスキャナーです。この MCP サーバーを支えるモジュールは、サイト上のスキャンにも使用されています。
詳細なドキュメント:nelprofessional.com/mcp
ライセンス
MIT — LICENSE を参照してください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。