Lighthouse Mcp について
Lighthouse MCP は、ウェブページの品質を評価する開発者向けに、Google の Lighthouse 監査機能を AI クライアントへ提供します。パフォーマンススコアや指標を取得でき、カテゴリ、デバイスのエミュレーション、ネットワーク制限を設定できます。
主な機能
- 01URL の Lighthouse 監査
- 02パフォーマンススコアと指標の取得
- 03モバイルまたはデスクトップのエミュレーション
- 04ネットワーク制限の設定
- 05監査カテゴリの選択
活用シーン
- 01ページのパフォーマンススコアを確認
- 02アクセシビリティと SEO を監査
- 03異なるデバイス設定で監査結果を比較
MCP 対応
MCP サーバーは `run_audit` と `get_performance_score` ツールを MCP クライアントに公開し、URL の監査とパフォーマンススコアの取得を可能にします。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
2掲載時のツール一覧 · 3 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| url | string | はい | 監査する URL |
| categories | array | いいえ | 監査するカテゴリ(デフォルトはすべて) |
| device | enum | いいえ | エミュレートするデバイス(デフォルトはモバイル)mobile | desktop |
| throttling | boolean | いいえ | ネットワークスロットリングを適用するかどうか(デフォルトは true) |
詳細
Lighthouse MCP Server
ウェブページのさまざまなパフォーマンス指標を測定するため、Google の Lighthouse ツールをラップする MCP サーバーです。
特長
- 任意の URL で包括的な Lighthouse 監査を実行
- パフォーマンススコアと指標を取得
- デバイスのエミュレーションを設定(モバイル/デスクトップ)
- ネットワークスロットリングを制御
- 監査するカテゴリを選択
インストール
オプション 1:MCP Registry からインストール(推奨)
このサーバーは Model Context Protocol Registry で公開されています。MCP クライアントまたは Claude Desktop を使用してインストールしてください。
オプション 2:npx を使用
インストールせずに、npx を使ってツールを直接実行できます。
npx lighthouse-mcp
オプション 3:グローバルインストール
npm からパッケージをグローバルにインストールします。
npm install -g lighthouse-mcp
次に、実行します。
lighthouse-mcp
オプション 4:ローカル開発
- このリポジトリをクローンします
- 依存関係をインストールします。
npm install - プロジェクトをビルドします。
npm run build - サーバーを実行します。
npm start
MCP の設定
npm でインストールした場合(グローバルまたは npx)
以下を MCP 設定ファイルに追加します。
{
"mcpServers": {
"lighthouse": {
"command": "npx",
"args": ["lighthouse-mcp"],
"disabled": false,
"autoApprove": []
}
}
}
ローカル開発版を使用する場合
以下を MCP 設定ファイルに追加します。
{
"mcpServers": {
"lighthouse": {
"command": "node",
"args": ["/absolute/path/to/lighthouse-mcp/build/index.js"],
"disabled": false,
"autoApprove": []
}
}
}
/absolute/path/to/lighthouse-mcp を、このプロジェクトの実際のパスに置き換えてください。
利用可能なツール
run_audit
URL に対して包括的な Lighthouse 監査を実行します。
パラメーター:
url(必須):監査する URLcategories(任意):監査するカテゴリの配列(デフォルトではすべて)- 選択肢:"performance"、"accessibility"、"best-practices"、"seo"
device(任意):エミュレーションするデバイス(デフォルトは "mobile")- 選択肢:"mobile"、"desktop"
throttling(任意):ネットワークスロットリングを適用するかどうか(デフォルトは true)
例:
{
"url": "https://example.com",
"categories": ["performance", "accessibility"],
"device": "desktop",
"throttling": false
}
get_performance_score
URL のパフォーマンススコアのみを取得します。
パラメーター:
url(必須):監査する URLdevice(任意):エミュレーションするデバイス(デフォルトは "mobile")- 選択肢:"mobile"、"desktop"
例:
{
"url": "https://example.com",
"device": "mobile"
}
使用例
MCP サーバーを設定すると、Claude で使用できます。
What's the performance score for example.com?
Claude は get_performance_score ツールを使用してウェブサイトを分析し、結果を返します。
要件
- Node.js 22.19+
- Chrome/Chromium ブラウザー(Lighthouse 用)
推薦
セキュリティ
Chrome はサンドボックスを有効にして実行されます。localhost、IPv4 ループバック、IPv6 ループバックは、デフォルトで引き続きサポートされます。プライベート、リンクローカル、クラウドメタデータ、その他のパブリックではない宛先は、リダイレクトやページリソースによるリクエストも含めてブロックされます。DNS リバインディングを防ぐため、接続には検証済みの IP アドレスが使用されます。ループバックへのアクセスは意図的に許可されているため、ご自身のマシン上のサービスへのアクセスが信頼できるページのみを監査してください。悪意のあるサイトを扱う場合は、ネットワークが隔離された別の環境を使用してください。
監査は一度に 1 件に制限され、120 秒後にタイムアウトします。成功または失敗後、Chrome と監査プロキシはクリーンアップされます。
パブリック宛先のみを対象とする監査
AUDIT_ALLOW_LOOPBACK=false を設定すると、プライベートアドレスやメタデータアドレスに加えて、ループバック宛先も拒否されます。ホステッドワーカーではこの設定と、インフラストラクチャのエグレス分離を使用する必要があります。ローカル開発では、デフォルトでループバックへのアクセスが維持されます。
メンテナー向け CI とリリース
GitHub Actions は、ビルド、ネットワークとリリースポリシーのテスト、npm セキュリティ監査、および実際の Chrome を使ったスモークテストを、サポート対象の最小 Node バージョンと Node 24 で実行します。Node 24 ではさらに、クリーンな一時プロジェクトに npm tarball をインストールし、実行可能ファイル、依存関係、MCP バージョン、ブラウザー監査を確認します。
main へのプッシュごとに、リリースパイプラインが実行されます。パッケージファイルに変更がある場合、パッチバージョンを自動的にインクリメントし(または、すでにコミットされている、より大きなバージョンを採用し)、パッケージのメタデータを同期して、検証を再実行し、リリースをコミットしてタグ付けし、provenance を付与して npm に公開し、GitHub リリースを作成します。ドキュメント、テスト、ワークフローのみの変更では、新しいバージョンは公開されません。ランタイムのサーバーバージョンは package.json から取得します。
Dependabot は npm と GitHub Actions を毎週チェックします。PR の CI が成功すると、変更された既存の依存関係がすべて安定版のパッチ/マイナーアップグレードであり、変更されたファイルが package.json/package-lock.json のみの場合に限り、npm の更新を自動的にマージします。メジャーアップグレード、0.x のマイナーアップグレード、ダウングレード、プレリリース、GitHub Actions の変更にはレビューが必要です。マージジョブは main の信頼されたコードのみを実行し、テスト済みの PR のヘッドを検証して、ボットによるマージ後に公開処理を明示的に実行します。
npm への公開では、npm GitHub 環境と、priyankark/lighthouse-mcp 用の npm trusted publisher(ワークフロー publish.yml、環境 npm、直接公開を許可)を使用します。GitHub に npm トークンは保存されません。この環境では、main からのデプロイのみを受け入れます。
リリースに失敗した場合は、Publish ワークフローを再実行するか、./release.sh を実行して再試行してください。パイプラインは未公開のバージョンを再利用し、すでに公開済みで変更のないパッケージはスキップします。予約済みのリリースタグが異なるコードを指している場合、そのバージョンを上書きせずに停止します。破壊的変更を行う場合は、マージ前にレビュー済み PR で package.json と package-lock.json を、適切なメジャー/マイナーバージョンに更新してください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。