mcpField
S
Security Headers

Security Headers

ローカル
basitalisandhu.github.ioセキュリティ11 日前に更新

Security Headers について

Security Headers は、公開 URL や入力されたヘッダーを評価する開発者向け MCP サーバーです。一般的なセキュリティ対策を採点し、レスポンス本文を取得せずに説明と推奨事項を示します。

主な機能

  1. 01公開 URL のレスポンスヘッダーを取得・採点
  2. 02ネットワーク接続なしで入力ヘッダーを採点
  3. 03ヘッダーの目的と推奨値を説明
  4. 04CSP、HSTS、Cookie 属性などを確認

活用シーン

  1. 01公開サイトの HTTP セキュリティ設定を確認
  2. 02curl のレスポンスからコピーしたヘッダーを評価

MCP 対応

URL のヘッダー確認、オフライン採点、個別ヘッダーの説明を MCP ツールとして公開します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"basitalisandhu-mcp-security-headers": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/basitalisandhu/mcp-security-headers:0.3.0"
]
}
}
}
起動コマンドdocker run -i --rm ghcr.io/basitalisandhu/mcp-security-headers:0.3.0

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
ocighcr.io/basitalisandhu/mcp-security-headers:0.3.0

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

security-headers MCP サーバー

公開 URL のレスポンスヘッダーを取得し、Content-Security-Policy、Strict-Transport-Security、X-Frame-Options、X-Content-Type-Options、Referrer-Policy、Permissions-Policy、Cross-Origin-* ヘッダー、Set-Cookie 属性、情報開示ヘッダーを評価します。各ヘッダーについて、説明と推奨事項も提示します。レスポンス本文はダウンロードされません。

dev-mcp-servers の一部です。Stdio トランスポートのみを使用し、サーバーがポートを開くことはありません。

ツール

ツール入力戻り値
check_url_headersurl、method?(HEAD または GET)、max_redirects?(0~10、デフォルトは 5)公開 http(s) URL に HEAD リクエストを送信します(405/501 の場合は GET)。すべてのリダイレクト先で同じ検証を行った後、評価レポートを返します。localhost、.local、.internal、プライベート、ループバック、リンクローカル、CGNAT、クラウドメタデータのアドレス、およびそれらのアドレスに解決される名前は拒否します。
grade_headersheaders(オブジェクト)、https?たとえば curl -I で取得したヘッダーを、同じ基準で評価します。ネットワークアクセスはありません。
explain_headerheader1 つのヘッダーの目的、推奨値、参考情報を返します。

インストール

Claude Code:

claude mcp add security-headers -- docker run --rm -i ghcr.io/basitalisandhu/mcp-security-headers:0.2.2

すべてのプロジェクトで利用できるようにするには、-s user を追加します。.mcp.json を読み込むクライアント(Claude Code、Claude Desktop、Cursor)で利用する場合:

{
  "mcpServers": {
    "security-headers": {
      "command": "docker",
      "args": ["run", "--rm", "-i", "ghcr.io/basitalisandhu/mcp-security-headers:0.2.2"]
    }
  }
}

バージョンを以下のように固定すると、気づかないうちに更新によってエディターで実行される内容が変わるのを防げます。パッケージはまだ npmjs.com に公開されていないため、npx は使えません。GitHub Packages npm についてはリポジトリの READMEを参照してください。チェックアウトしたリポジトリから使う場合は、リポジトリのルートで npm install && npm run build を実行した後、"command": "node", "args": ["<path>/packages/security-headers/dist/index.js"] を使用します。

影響する範囲

  • ネットワーク:指定した URL へのリクエストを 1 回送信し、最大で max_redirects 回、検証を行いながらリダイレクトをたどります。リクエストごとのタイムアウトは 10 秒です。接続前にホストを解決し、すべてのアドレスを検証します。ただし、検証から接続までの間の DNS リバインディングは防げないため、正直な応答を返すと信頼できないホストをこのツールに指定しないでください。テレメトリはありません。
  • ローカルファイル:なし。
  • テレメトリ:なし。

注意事項

  • スコア:CSP は 25 点、HSTS は 20 点、X-Frame-Options は 10 点、X-Content-Type-Options は 10 点、Referrer-Policy は 10 点、Set-Cookie は 10 点、Permissions-Policy は 5 点、COOP は 5 点、CORP は 5 点です。評価は A+(95%以上かつ fail なし)、A(85%以上かつ fail なし)、B(70%)、C(55%)、D(40%)、それ以外は F です。
  • レポート専用の CSP は適用されないため、スコアは加算されません。
  • 評価が高いことは、ヘッダーが適切に設定されていることを示しますが、アプリケーションが安全であることを意味するものではありません。

ビルドとテスト

npm install        # at the repository root
npm run build -w @basitalisandhu/mcp-security-headers
npm test -w @basitalisandhu/mcp-security-headers

テストでは node:test と SDK のインメモリトランスポートを使用し、ネットワークにはアクセスしません。

ライセンス

MIT。LICENSE を参照してください。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。