Screenshot Scout

公式

Screenshot Scoutを使用して、ウェブページのスクリーンショットを画像またはPDFとしてキャプチャします。

Screenshot Scout MCPで何ができますか?

  • 全ページまたはビューポートのキャプチャcapture_screenshot を使用して任意のURLのPNG、JPEG、WebP、GIF、TIFF、またはPDFを取得します。オプションでfullPageモードも利用できます。
  • 要素と操作の制御 — 特定のselectorをターゲットにし、hideSelectorsで要素を非表示にし、clickSelectorsで要素をクリックし、Cookieバナー、広告、チャットウィジェットをブロックします。
  • デバイスとロケーションのシミュレーションdevice、ビューポートの寸法、countrycolorScheme(ダーク/ライト)を指定して、さまざまなブラウジング環境を再現します。
  • レイアウトオプション付きのPDF生成pdfPaperFormatpdfLandscapepdfPrintBackground、カスタム余白、pdfScaleを使用して、印刷用のPDFを作成します。
  • 出力のリサイズと品質調整imageWidthimageHeightimageQuality(JPEG/WebP用)を調整して、ファイルサイズと解像度を制御します。
  • キャッシュと結果の配信cacheTtlを指定してcacheを有効にし、resultModeを選択してインライン画像または一時URLのみを取得します。

ドキュメント

Screenshot Scout MCP サーバー

MCP クライアントから Screenshot Scout を使用して、 HTTP または HTTPS のウェブページを画像または PDF としてキャプチャします。

このサーバーは 1 つのツール、capture_screenshot を公開します。フルページおよび 要素キャプチャ、デバイスとビューポートの制御、ロケーションの選択、ページ 操作とブロッキングオプション、画像サイズと品質、PDF レイアウト、キャッシュ、 一時的な結果 URL、および対象となる MCP 画像コンテンツをサポートします。

必要なもの

  • Screenshot Scout アカウントAPI キーページ からのアクセスキー。
  • npm/stdio インストール用の Node.js 22 以降。Claude Desktop の MCPB ランタイム は Claude にバンドルされています。
  • 選択した API キーが署名付き Screenshot Scout リクエストを要求する場合のみ、 オプションのシークレットキー。

すべてのキャプチャはお使いの Screenshot Scout アカウントを使用し、そのプラン、 クォータ、およびレート制限の対象となります。

npm を使用したローカル stdio

以下のローカル stdio 設定から始めます:

{
  "mcpServers": {
    "screenshotscout": {
      "command": "npx",
      "args": ["-y", "@screenshotscout/mcp"],
      "env": {
        "SCREENSHOTSCOUT_ACCESS_KEY": "YOUR_ACCESS_KEY"
      }
    }
  }
}

アクセスキーがリクエスト署名を要求する場合は、シークレットをローカルに追加します:

"SCREENSHOTSCOUT_SECRET_KEY": "YOUR_SECRET_KEY"

個人設定ファイルはソース管理の対象外にしてください。認証情報はプロセス 環境値であり、ツール引数ではありません。Claude Desktop、Claude Code、Cursor、VS Code/GitHub Copilot、Devin、Cline 向けの クライアント別コピーペースト設定 を参照してください。

ソースチェックアウトから実行する場合

npm ci
npm run build

クライアントを dist/stdio.js への絶対パスに node 付きで指定し、上記に示したのと同じ環境変数を 提供します。

Claude Desktop MCPB

Claude Desktop 拡張機能をインストールするには:

  1. そのバージョンの GitHub リリースから screenshotscout-mcp-<version>.mcpb をダウンロードします。
  2. Claude Desktop で Settings → Extensions → Advanced settings を開き、 Install Extension… を選択します。
  3. ダウンロードしたファイルを選択します。
  4. 必要なアクセスキーを入力します。署名付きリクエストを要求する API キーの場合のみシークレットキーを入力します。

Claude Desktop は両方のフィールドを機密設定として扱います。v0.1.0 MCPB は Windows をサポートしています。

ホスト型 Streamable HTTP

ホスト型 API キーエンドポイントは以下の場所で稼働しています:

https://mcp.screenshotscout.com/mcp/api-key

これは静的 HTTP ヘッダーを付加できるクライアントのみを対象としています:

Authorization: Bearer YOUR_ACCESS_KEY

エンドポイントはアクセスキーのみを受け付けます。Screenshot Scout のシークレット キーを送信しないでください。また、いずれのキーも URL やツール引数に含めないでください。静的 Bearer ヘッダーを付加できないクライアントはこのエンドポイントを使用できません。

リクエスト署名を要求する API キーは、代わりにローカル stdio または MCPB を使用するか、 ホスト型エンドポイント用に専用の非署名アクセスキーを使用する必要があります。

Docker を使用したローカル stdio

ソースチェックアウトから本番イメージをビルドします:

docker build --tag screenshotscout-mcp:local .

ローカル環境から認証情報を渡し、MCP stdio トラフィック用に stdin を接続したままにします:

docker run --rm -i --init --cap-drop=ALL --security-opt=no-new-privileges --read-only \
  -e SCREENSHOTSCOUT_ACCESS_KEY \
  -e SCREENSHOTSCOUT_SECRET_KEY \
  screenshotscout-mcp:local

SCREENSHOTSCOUT_SECRET_KEY はオプションのままです。イメージは非特権 ユーザーとして実行され、コンパイル済みの stdio サーバーとその本番依存関係のみを含みます。 ポートやコンテナヘルスチェックは宣言されていません。MCP クライアントが stdio プロセスを所有し、MCP 初期化を完了することで準備完了を検証します。イメージと docker-mcp-catalog.yaml 内の Docker MCP Catalog メタデータはローカル 準備用です。これらのコマンドによって公開イメージが示唆されることはありません。

ツール: capture_screenshot

capture_screenshot は、指定された URL とオプションに対して 1 つのキャプチャリクエストを送信します。 対象のウェブページは外部のものであり、返されたコンテンツは信頼できないものとして 扱う必要があります。

入力

url のみが必須です。キャプチャはデフォルトで 1280×720 のビューポートを使用します。 フォーマットが指定されていない場合、ツールは品質 60 の JPEG を返します。resultMode のデフォルトは "auto" です。

グループ入力
ターゲットと出力url; format (png, jpg, jpeg, webp, gif, tiff, pdf); resultMode (auto, url_only)
ロケーションとビューポートcountry (2 文字の国コード)、devicedeviceViewportWidthdeviceViewportHeightcolorScheme (auto, dark, light)、fullPage
ページ準備blockCookieBannersblockAdsblockChatWidgetsselectorhideSelectorsclickSelectors
タイミングwaitUntil (loaddomcontentloadednetworkidle0networkidle2)、delay (0〜30 秒)、navigationTimeout (5〜90 秒)、timeout (1〜240 秒)
キャッシュcachecacheTtl (14,400〜2,592,000 秒)
出力リサイズimageWidthimageHeight (1〜8,192。画像と PDF で利用可能)
画像のみimageQuality (0〜100、JPEG/WebP のみ)
PDF のみpdfPaperFormat (letterlegaltabloida4a3content)、pdfLandscapepdfPrintBackgroundpdfMargin、辺ごとのマージンフィールド、pdfScale (0 より大きく最大 3)

両方の出力寸法が指定されている場合、その積は 64,000,000 ピクセルを超えることはできません。PDF マージンは pxinmm、または cm の非負の値を受け付けます。 imageQuality には JPEG または WebP 出力が必要で、PDF のみのオプションには format: "pdf" が必要です。

結果

  • PNG、JPEG、WebP、および GIF は、resultModeauto の場合、MIME タイプが対象となり、寸法が既知で 各辺が最大 8,000 ピクセル、生データが最大 5 MiB、かつ完全な シリアライズ結果が現在の 128,000 バイトのサーバー制限に収まる場合に、MCP 画像コンテンツとして含めることができます。
  • 埋め込みの対象にならないキャプチャも成功として扱われ、一時 URL と 実行可能な省略理由を返します。
  • TIFF は URL のみです。
  • PDF バイトは埋め込まれません。PDF 結果には安全なテキストと構造化 メタデータ、および Screenshot Scout が結果 URL を提供する場合のリソースリンクが含まれます。
  • resultMode: "url_only" はすべてのフォーマットで画像バイトを省略します。

MCP クライアントは、返された画像コンテンツまたはリソースリンクを 表示するか、モデルが利用できるようにするかを制御します。

構造化メタデータには、screenshotUrlscreenshotUrlExpiresAtcacheStatusformatmimeTypeimageWidthimageHeightinlineImageIncluded、および inlineImageOmissionReason を含めることができます。

結果 URL は機密性の高い一時リンクとして扱い、報告された 有効期限を尊重してください。

プロンプト例

  • https://example.com をダークモードのフルページ PNG としてキャプチャしてください。URL のみを返してください。」
  • https://example.com/pricing の 1280×720 JPEG スクリーンショットを撮り、Cookie バナーと広告をブロックし、品質 80 を使用してください。」
  • https://example.com/report の A4 PDF を、背景を有効にして 10 mm マージンで作成してください。」

プライバシーとセキュリティ

サーバーはターゲット URL と選択されたキャプチャオプションを Screenshot Scout に送信し、 Screenshot Scout がターゲットウェブサイトを読み込みます。プライベートな 素材や規制対象の素材をキャプチャする前に、 Screenshot Scout プライバシーポリシー を確認してください。

  • アクセスが許可されていないページをキャプチャしないでください。
  • プロンプト、ツール入力、URL、問題レポート、または ログに認証情報を貼り付けないでください。
  • ローカルのアクセスキーとシークレットキーは、クライアント管理のシークレットストレージまたはプライベートな 環境設定に保管してください。
  • ローカル stdio サーバーはテレメトリを追加しません。ホスト型 サービスのアプリケーションログは、リクエストメソッド、レスポンスステータス、所要時間、およびサニタイズされた 予期しないエラーに限定されます。認証情報、ターゲット URL、 スクリーンショット URL、リクエストまたはレスポンスのコンテンツ、画像バイトを含まないように設計されています。
  • ツールの使用を許可する前に、各ターゲットとキャプチャリクエストを確認してください。このツールは オープンワールドであり、クォータを消費し、外部ウェブサイトと対話します。
  • 脆弱性は SECURITY.md に記載されているとおり、非公開で報告してください。

開発

npm ci
npm run format:check
npm run lint
npm run typecheck
npm test
npm run metadata:check
npm run registry:validate
npm run mcpb:validate
npm run mcpb:pack

ライセンス

MIT © Oleksii Velykyi