Skip to main content
Glama

Site-Shot MCP サーバー

Claude、Cursor、および他のAIエージェントに任意のWebページを見る能力を提供します — Site-Shot を Model Context Protocol 経由でウェブサイトのスクリーンショットを撮ります。

実際のChromiumレンダリング・全ページキャプチャ・国別プロキシ・自動広告・Cookieバナー除去(よりクリーンな画像、より少ないビジョントークン)。

クイックスタート (Claude Desktop)

  1. Site-Shot APIキーを https://www.site-shot.com/start/ で取得します。

  2. これをClaude Desktopの設定(claude_desktop_config.json)に追加します:

{
  "mcpServers": {
    "site-shot": {
      "command": "npx",
      "args": ["-y", "site-shot-mcp"],
      "env": { "SITESHOT_API_KEY": "YOUR_API_KEY" }
    }
  }
}
  1. Claude Desktopを再起動します。"https://news.ycombinator.com の全ページスクリーンショットを撮って" と依頼すると、サーバーを呼び出して画像を表示します。

他のMCPクライアント(Cursor、Cline、VS Code、LangChain、CrewAI)でも同様に動作します — 環境変数に SITESHOT_API_KEY を設定し、クライアントを npx -y site-shot-mcp に向けます。

Related MCP server: Webpage Screenshot MCP Server

ツール

capture_screenshot

Webページのスクリーンショットを撮ります(デフォルトはビューポート)。

パラメータ

型

デフォルト

備考

url

string (必須)

—

キャプチャするページ

full_page

boolean

false

スクロール可能なページ全体をキャプチャ

width / height

number

APIデフォルト

ビューポート/デバイスサイズ

format

"png" | "jpeg"

png

画像形式

block_ads

boolean

true

広告を削除

block_cookie_banners

boolean

true

Cookie同意ポップアップを削除

country

string

—

2文字の ISO 3166-1 alpha-2 コードによるプロキシ国、例: "DE"(IP/言語/タイムゾーン/地理位置を自動設定)

strict_country

boolean

true

国にプロキシがない場合、米国にフォールバックせずエラーにする

language / time_zone / geolocation

string

—

手動オーバーライド

wait_ms

number

APIデフォルト

キャプチャ前の追加待機時間(SPA/アニメーション)

max_height

number

20000(全ページ)

キャプチャする高さの上限

スクリーンショットをMCP画像として返します。

「APIデフォルト」はこのパッケージが指定できる数値ではありません。 width、height、wait_ms は渡した場合のみ転送されるため、渡さなかった場合に適用される値はSite-Shot APIが決定し、ここでのリリースなしに変更される可能性があります。1.1.0までのバージョンでは、APIが使用しない width / height のピクセルサイズを出力していました — それらを省略して「デフォルト」を取得したエージェントは、返された画像にそれを示すものがないまま、異なるビューポートを取得していました。サイズが重要になる場合は、常に明示的な値を渡してください。

国コードはISOコードであり、国名ではありません。 "DE" を渡し、"Germany" は渡さないでください。APIはコードを完全一致で照合するため、国名を渡すと米国プロキシ経由でレンダリングされ、そのことを通知しません。そのため、サーバーはレンダリングを消費する前に完全な国名を拒否します。strict_country(デフォルトでオン)も同様に、利用できない国を黙って米国スクリーンショットにする代わりにエラーにします — フォールバックを希望する場合は false を渡してください。対応国 →

capture_full_page

capture_screenshot と同じですが、全ページキャプチャが有効です。

エージェント自身のブラウザではなく、このサーバーを呼ぶ理由

エージェントがブラウザを操作する場合、ページ自体をスクリーンショットできます — ログインが必要なページやフローをステップ実行する必要があるページには、それが適切なツールです。公開URLの場合、キャプチャをこのサーバーに委任する方が通常は優れたエンジニアリングです。各キャプチャは同じパイプラインで実行され(実行間の再計画なし)、一致するロケールとタイムゾーンを持つ特定の国から取得でき(country + strict_country)、返される前に画像分類器とその背後にあるエスカレーション式リトライラダーによってスコアリングされ、ブラウザセッションと毎回のビジョントークンではなく、1セント未満のコストで済みます。両方向を正直に論じた完全な比較: AIエージェント vs スクリーンショットAPI — 誰がページをキャプチャすべきか。

設定

環境変数

必須

説明

SITESHOT_API_KEY

はい

あなたのSite-Shot APIキー(userkey として使用)。

このサーバーは既存のSite-Shot HTTP API(https://api.site-shot.com/)の薄いラッパーです — 別のバックエンドはありません。

ローカル開発

npm install
npm run check   # syntax check
npm run smoke   # offline tests (stubbed fetch, no API key needed)
SITESHOT_API_KEY=yourkey npm start   # run the server on stdio

要件

Node.js ≥ 18(組み込みの fetch を使用)。

ライセンス

MIT

Available Tools

2 tools
capture_full_pageCapture full-page website screenshotA

Take a full-page (entire scrollable height) screenshot of a web page with Site-Shot and return it as an image. Convenience wrapper around capture_screenshot with full-page capture enabled.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesThe URL of the web page to capture. A bare domain like example.com is accepted (https:// is assumed).
widthNoViewport width in pixels (default 1280).
heightNoViewport height in pixels (default 1024).
formatNoImage format. Default: png.
block_adsNoRemove ads for a cleaner screenshot. Default: true.
block_cookie_bannersNoRemove cookie-consent banners/popups. Default: true.
countryNoRender through a proxy in this country, e.g. "Germany" (auto-sets IP, language, time zone, geolocation).
languageNoOverride browser language, e.g. "de".
time_zoneNoOverride time zone, e.g. "Europe/Berlin".
geolocationNoOverride geolocation as "lat,lng".
wait_msNoMilliseconds to wait after load before capturing (for SPAs/animations).
max_heightNoCap the captured height in pixels (max 20000).

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It describes the action as a wrapper but does not disclose side effects, output format details, or limitations beyond what the schema parameters cover.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences with no wasted words; the core purpose is front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has 12 parameters (all well-described in schema) and no output schema, the description is adequate as a summary but lacks details on return format and additional behavioral context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with detailed parameter descriptions, so the description adds little extra meaning. Baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool takes a full-page screenshot and mentions it's a convenience wrapper around capture_screenshot with full-page capture enabled, distinguishing it from the sibling tool.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for full-page screenshots and references the sibling tool, but does not explicitly state when not to use it or provide alternative scenarios.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

capture_screenshotCapture website screenshotB

Take a screenshot of a web page with Site-Shot and return it as an image. Renders in a real Chromium browser. Supports viewport/device sizing, full-page capture, country proxies, and automatic ad & cookie-banner removal (cleaner image, fewer vision tokens).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesThe URL of the web page to capture. A bare domain like example.com is accepted (https:// is assumed).
widthNoViewport width in pixels (default 1280).
heightNoViewport height in pixels (default 1024).
formatNoImage format. Default: png.
block_adsNoRemove ads for a cleaner screenshot. Default: true.
block_cookie_bannersNoRemove cookie-consent banners/popups. Default: true.
countryNoRender through a proxy in this country, e.g. "Germany" (auto-sets IP, language, time zone, geolocation).
languageNoOverride browser language, e.g. "de".
time_zoneNoOverride time zone, e.g. "Europe/Berlin".
geolocationNoOverride geolocation as "lat,lng".
wait_msNoMilliseconds to wait after load before capturing (for SPAs/animations).
max_heightNoCap the captured height in pixels (max 20000).
full_pageNoCapture the entire scrollable page instead of just the viewport. Default: false.

TDQS

B3.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the burden of behavioral disclosure. It states the tool renders in a real Chromium browser and automatically removes ads and cookie banners, which is helpful. However, it does not mention potential side effects, rate limits, execution time, or authentication requirements. It also does not clarify whether the screenshot is destructive or what happens to the browser instance after capture.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences long, making it relatively concise. The first sentence states the core action, and the second lists major features. It avoids extraneous details but could be slightly more compact by combining the two sentences or trimming the feature list slightly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity of the tool (13 parameters, no output schema), the description provides a high-level overview of capabilities but lacks detail on return format (e.g., image type, resolution), error handling, and how features like 'full_page' work in practice. It is adequate for an experienced user but incomplete for a novice.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema covers all 13 parameters with descriptions, achieving 100% coverage. The tool description reiterates some schema concepts (viewport sizing, full-page capture, country proxies) but does not add significant new meaning beyond what the schema already provides. For example, 'country' parameter is explained in the schema; the description only mentions 'country proxies' generically. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it takes a screenshot of a web page using Site-Shot and returns an image. It mentions features like viewport sizing, full-page capture, and ad removal. However, it does not explicitly distinguish itself from the sibling tool 'capture_full_page', which may cause confusion.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description lists features but provides no guidance on when to use this tool versus alternatives like 'capture_full_page'. It does not mention any prerequisites or conditions for use, nor does it explain when to use the 'full_page' parameter or when to prefer a different tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 2 tool updatesv1.0.1
    • Changedcapture_full_page3 fields changed
      • changedInput schema / properties / url / description
        Previous value: -"The URL of the web page to capture."New value: +"The URL of the web page to capture. A bare domain like example.com is accepted (https:// is assumed)."
      • removedInput schema / properties / url / format
        Removed value: -"uri"
      • addedInput schema / properties / url / minLength
        Added value: +1
    • Changedcapture_screenshot3 fields changed
      • changedInput schema / properties / url / description
        Previous value: -"The URL of the web page to capture."New value: +"The URL of the web page to capture. A bare domain like example.com is accepted (https:// is assumed)."
      • removedInput schema / properties / url / format
        Removed value: -"uri"
      • addedInput schema / properties / url / minLength
        Added value: +1
  2. 2 tool updatesv0.1.1
    • First observedcapture_full_page
    • First observedcapture_screenshot

TDQS

B3.2/5.0

Scored across 2 tools

Disambiguation2/5

The two tools are nearly identical; capture_full_page is explicitly a wrapper for capture_screenshot with full-page enabled. An agent would likely misuse them, as the difference is only a parameter.

Naming Consistency3/5

Both use verb_noun pattern ('capture_screenshot', 'capture_full_page'), but 'full_page' is a qualifier while 'screenshot' is the resource; inconsistent because one tool name specifies a parameter in the name itself.

Tool Count3/5

Two tools is minimal but arguably sufficient for a simple screenshot service. However, the duplication suggests one tool could have been omitted, making the surface slightly too heavy for the scope.

Completeness3/5

The set covers basic screenshot needs with features like viewport sizing, proxies, and ad removal. However, it lacks tools for specific device emulation or batch processing, which are common in screenshot services.

Maintenance

ActivityMaintained
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers