Skip to main content
Glama

caido-screenshot

Caido の Replay のリクエスト/レスポンスペアのフォーマット済みスクリーンショットをキャプチャする MCP サーバーです。Screenshot Mode プラグインを操作して実現します。

Caido にはスクリーンショット API はありません。Screenshot Mode はフロントエンドのみのプラグインで、ブラウザ内で DOM を PNG にレンダリングします。このサーバーは Chrome DevTools Protocol 経由でそれにアクセスし、プラグイン自身のエクスポート機能をクリックして、Electron が保存ダイアログを開く前に生成された画像をインターセプトします。出力はプラグインの実際の出力そのもので、ディスクに直接書き込まれます。

要件

  • Node >= 22(組み込みの WebSocket を使用。npm 依存関係はありません)

  • Caido デスクトップ版

  • Screenshot Mode プラグインが Caido にインストールされていること

  • Caido を --remote-debugging-port 付きで起動していること(下記参照)

Related MCP server: MCP Browser Screenshot Server

インストール

git clone <this-repo> caido-screenshot-mcp
cd caido-screenshot-mcp
npm link            # optional: puts `caido-screenshot` on your PATH

npm install の手順は不要です。依存関係はありません。

デバッグポート付きで Caido を起動する

プラグインは Caido のウィンドウ内でレンダリングされるため、サーバーはそのウィンドウと通信する必要があります。通常の起動ではポートが閉じているため、すべての呼び出しが失敗します。

caido-screenshot launch          # quits nothing; starts Caido with the port open

または手動で:

# macOS
open -a Caido --args --remote-debugging-port=9222
# Linux
caido --remote-debugging-port=9222
# Windows
"%LOCALAPPDATA%\Programs\Caido\Caido.exe" --remote-debugging-port=9222

すべてを一度に確認:

caido-screenshot doctor

Claude Code で使用する

claude mcp add caido-screenshot --scope user -- node /absolute/path/to/caido-screenshot-mcp/src/server.mjs

Claude Code を再起動して、次のように依頼するだけです: "screenshot the current Caido replay session"

任意の MCP クライアントで使用する

{
  "mcpServers": {
    "caido-screenshot": {
      "command": "node",
      "args": ["/absolute/path/to/caido-screenshot-mcp/src/server.mjs"]
    }
  }
}

ツール: caido_screenshot

パラメータ

説明

out_path

string

PNG の保存先。デフォルトは ~/Downloads/caido-screenshot-<timestamp>.png

collection

string

セッションを含む Replay コレクション。自動的に展開されます。

session

string

最初に選択する Replay セッション(サイドバー上の名前、例: GET /login

session_id

string

正確な Replay セッション ID。曖昧さがないため推奨されます。

require_response

boolean

リクエストのみのセッションや古いプレビューを拒否します。デフォルトは true

inline

boolean

結果に画像も含めて返します(サイズが大きくなります)。デフォルトは false

サーバーが登録されていれば、ツール名を指定する必要はありません。やりたいことを平易な英語で伝えるだけで、エージェントが適切に処理します。

現在の画面をキャプチャするだけ

screenshot the current Caido replay request

エージェントが caido_screenshot を呼び出し、保存されたパスを返します:

Saved /Users/you/Downloads/caido-screenshot-2026-08-22T13-40-11-002Z.png (438 KB)

リクエストを送信してからキャプチャする

これは一般的な使い方です。公式の Caido MCP サーバー と組み合わせて使用します。そちらがリクエストを送信し、このサーバーが結果をキャプチャします。

send a GET to https://httpbin.org/get in Caido replay and screenshot it

エージェントがリクエストを送信し、返ってきた Replay エントリを展開済みセッションに対応付け、その正確なセッション ID をキャプチャします:

手順

ツール

サーバー

1

caido_send_request

caido

2

caido_list_replay_sessions

caido

3

caido_screenshot(session_id: ...)

caido-screenshot

caido_send_request.entryIdcaido_list_replay_sessions[].activeEntryId に対応付けます。requestSourceId から新しいセッションを作成しないでください。Caido はリクエストテンプレートをシードしますが、完了したレスポンスはコピーしません。

自分で書いた生のリクエストを送信する

生の HTTP を貼り付けて、次のように依頼します:

send this in Caido replay and screenshot it:

POST /post HTTP/1.1
Host: httpbin.org
Content-Type: application/json

{"user":"demo","token":"abc123"}

特定のセッションを選択する

セッションはサイドバーにリクエストラインの名前で表示されます。例: GET /POST /login など:

screenshot the "POST /login" replay session, stacked

これは caido_screenshot(session: "POST /login") になります。すべてのキャプチャは Side by Side レイアウトで行われます。

確実に動作させるには、セッション ID を使用します:

caido_screenshot(session_id: "67", require_response: true)

セッションが別のコレクション内や折りたたまれたコレクション内にある場合は、両方を指定します:

screenshot "01 admin create private conversation" from the "OBS AI Assistant IDOR - Fresh Evidence" collection

これは caido_screenshot(collection: "OBS AI Assistant IDOR - Fresh Evidence", session: "01 admin create private conversation") になります。ツールがコレクションを展開してからセッションを選択し、Side by Side でキャプチャします。

注意: caido_send_request はセッション名をリクエストラインから自動生成するため、複数のセッションがすべて GET / という名前になる可能性があります。曖昧さを避けるため、キャプチャ前に Caido 内でセッション名を変更してください。

特定の場所に保存する

screenshot it and save to ~/reports/login-flow.png

Codex から使用する

インタラクティブセッションを開始して、同じように依頼します:

codex
> screenshot the current Caido replay session

Codex は初回に承認を求めます。このツールのプロンプトをスキップするには、~/.codex/config.toml に追加します:

[mcp_servers.caido-screenshot.tools.caido_screenshot]
approval_mode = "auto"   # auto | prompt | writes | approve

codex exec(非インタラクティブ)では動作しませんapproval: never が強制され、per-tool 設定に関係なくすべての MCP ツール呼び出しが拒否されます。インタラクティブセッションを使用してください。

CLI

caido-screenshot                                   # current session -> ~/Downloads
caido-screenshot shot.png                          # explicit path
caido-screenshot shot.png --session "GET /login"
caido-screenshot shot.png --session-id 67
caido-screenshot shot.png --collection "Fresh Evidence" --session "01 admin request"
caido-screenshot doctor
caido-screenshot launch

環境変数

変数

デフォルト

説明

CAIDO_CDP_PORT

9222

Caido のリモートデバッグポート

CAIDO_CDP_TIMEOUT_MS

45000

CDP 呼び出しあたりのタイムアウト

既知の制限事項

これらはプラグイン自体の制限であり、このサーバーの問題ではありません:

  • 長いコンテンツは切り詰められます。 Caido のエディタは CodeMirror で、表示されている行のみをレンダリングします。Caido ウィンドウより縦に長いものは DOM に存在せず、キャプチャできません。非常に長いレスポンスは空白になることがあり、その場合サーバーはエラーを返し、ファイルを書き込みません。

  • ヘッダーが省略されることがあります。 DOM から画像へのレンダリングで行が省略され、行番号に途切れが生じることがあります。これらの画像は参考用であり、バイト単位で正確な証拠としては扱わないでください。正確さが重要な場合は Caido 自身のリクエストエクスポート機能を使用してください。

  • レイアウトは Side by Side に固定されています。 サーバーはレイアウトや配置のオプションを意図的に公開していません。これにより、すべての証拠スクリーンショットが同じレポート対応フォーマットになります。

  • スクリーンショットは編集されません。 画面に表示されているもの(AuthorizationCookieSet-Cookie など)はすべてそのままキャプチャされます。共有する前に必ず確認してください。

  • リクエストのみの Replay セッションはデフォルトで拒否されます。 Screenshot Mode は、選択したセッションにレスポンスがない場合、以前のプレビューを保持することがあります。リクエストのみのスクリーンショットを意図している場合にのみ --allow-no-response を渡してください。

トラブルシューティング

メッセージ

原因

Cannot reach Caido's debug port

Caido が --remote-debugging-port 付きで起動されていません。Caido を終了して caido-screenshot launch を実行してください。

Caido is showing the instance picker

Caido ウィンドウで Connect をクリックしてください。

No Screenshot button in the Replay toolbar

Replay セッションが開いていないか、Screenshot Mode プラグインがインストール/有効化されていません。

No Replay collection matching "..."

Replay サイドバーに表示されている正確なコレクション名を使用してください。

No Replay session matching "..."

ツールは collection が指定された場合にそれを展開し、完全一致がない場合は表示されているセッション名を一覧表示します。

has no rendered response

選択したセッションがリクエストからシードされたか、まだ完了していません。activeEntryId が送信結果の entryId と一致するセッションをキャプチャしてください。

preview is stale

Screenshot Mode が異なる URL を表示していました。何も保存されていません。展開済みの session_id を使用して再試行してください。

returned an empty image

コンテンツが長すぎてレンダリングできません。より短いリクエスト/レスポンスをキャプチャしてください。

ライセンス

MIT

Install Server
A
license - permissive license
A
quality
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

View all related MCP servers

Related MCP Connectors

  • Capture screenshots, detect visual regressions between page versions, and analyze with AI.

  • Screenshots, PDFs and Markdown from any URL or HTML for AI agents, via the SnapForge API

  • Capture screenshots of webpages as images or PDFs with Screenshot Scout.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/jayjpatel9717/Caido-Screenshot'

If you have feedback or need assistance with the MCP directory API, please join our Discord server