caido-screenshot
caido-screenshot-mcp
MCP-сервер, который делает форматированные скриншоты пар запрос/ответ Replay из Caido, управляя плагином Screenshot Mode.
У Caido нет API для скриншотов — Screenshot Mode это плагин только для фронтенда, который рендерит DOM в PNG в браузере. Этот сервер обращается к нему через Chrome DevTools Protocol, нажимает собственную кнопку экспорта плагина и перехватывает результирующее изображение до того, как Electron откроет диалог сохранения. Результат — это настоящий вывод плагина, записанный прямо на диск.
Требования
Node >= 22 (использует встроенный
WebSocket; npm-зависимостей нет)Caido desktop
Плагин 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 порт остаётся закрытым, и все вызовы будут завершаться ошибкой.
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. Затем просто попросите: "сделай скриншот текущей replay-сессии Caido".
Использование с любым MCP-клиентом
{
"mcpServers": {
"caido-screenshot": {
"command": "node",
"args": ["/absolute/path/to/caido-screenshot-mcp/src/server.mjs"]
}
}
}Инструмент: caido_screenshot
Параметр | Тип | Описание |
| string | Куда сохранить PNG. По умолчанию |
| string | Replay-коллекция, содержащая сессию. Раскрывается автоматически. |
| string | Replay-сессия для выбора в первую очередь, по имени на боковой панели (например, |
| string | Точный ID Replay-сессии. Предпочтителен, так как однозначен. |
| boolean | Отклонять сессии только с запросом и устаревшие превью. По умолчанию |
| boolean | Также возвращать изображение в результате (большой). По умолчанию |
Примеры
Как только сервер зарегистрирован, вам не нужно называть инструмент. Опишите, что вы хотите, простым английским, и агент сам его вызовет.
Просто захватить то, что на экране
сделай скриншот текущего Caido replay запроса
Агент вызывает caido_screenshot и отвечает сохранённым путём:
Saved /Users/you/Downloads/caido-screenshot-2026-08-22T13-40-11-002Z.png (438 KB)Отправить запрос, затем сделать скриншот
Это частый сценарий. Объедините его с официальным Caido MCP-сервером, который умеет отправлять запросы, — этот сервер захватывает результат.
отправь GET на https://httpbin.org/get в Caido replay и сделай скриншот
Агент отправляет запрос, сопоставляет возвращённую Replay-запись с заполненной сессией и захватывает именно этот ID сессии:
Шаг | Инструмент | Сервер |
1 |
| caido |
2 |
| caido |
3 |
| caido-screenshot |
Сопоставьте caido_send_request.entryId с caido_list_replay_sessions[].activeEntryId. Не создавайте новую сессию из requestSourceId для доказательства ответа: Caido заполняет шаблон запроса, но не копирует завершённый ответ.
Отправить сырой запрос, который вы написали
Вставьте сырой HTTP и скажите, что хотите:
отправь это в Caido replay и сделай скриншот:
POST /post HTTP/1.1 Host: httpbin.org Content-Type: application/json {"user":"demo","token":"abc123"}
Выбрать конкретную сессию
Сессии называются по строке запроса на боковой панели Caido, например GET /, POST /login и так далее:
сделай скриншот replay-сессии "POST /login", рядом
Это превращается в caido_screenshot(session: "POST /login"). Каждый захват использует Side by Side.
Для надёжной автоматизации используйте ID сессии:
caido_screenshot(session_id: "67", require_response: true)
Если сессия находится в другой или свёрнутой коллекции, укажите обе:
сделай скриншот "01 admin create private conversation" из коллекции "OBS AI Assistant IDOR - Fresh Evidence"
Это превращается в caido_screenshot(collection: "OBS AI Assistant IDOR - Fresh Evidence", session: "01 admin create private conversation"). Инструмент раскрывает коллекцию перед выбором сессии и захватывает её в режиме Side by Side.
Внимание:
caido_send_requestавтоматически называет сессии по строке запроса, поэтому несколько целей могут называтьсяGET /. Переименуйте сессию в Caido перед захватом, если вам нужно однозначно на неё ссылаться.
Сохранить в определённое место
сделай скриншот и сохрани в ~/reports/login-flow.png
Использование из Codex
Запустите интерактивную сессию и спросите так же:
codex
> screenshot the current Caido replay sessionCodex запросит подтверждение в первый раз. Чтобы пропустить запрос для этого инструмента, добавьте в ~/.codex/config.toml:
[mcp_servers.caido-screenshot.tools.caido_screenshot]
approval_mode = "auto" # auto | prompt | writes | approvecodex exec (неинтерактивный) не будет работать — он принудительно устанавливает approval: never и отклоняет все вызовы 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 на вызов |
Известные ограничения
Это свойства плагина, а не этого сервера:
Длинный контент обрезается. Редакторы Caido основаны на CodeMirror, который рендерит только видимые строки. Всё, что выше окна Caido, отсутствует в DOM и не может быть захвачено. Очень длинные ответы могут получиться пустыми; сервер выдаёт ошибку вместо записи почти пустого файла.
Заголовки могут теряться. Рендер DOM-в-изображение иногда пропускает строки, с видимыми пробелами в номерах строк. Относитесь к таким изображениям как к иллюстративным, а не как к побайтово точным доказательствам — используйте собственный экспорт запросов Caido, когда важна точность.
Макет зафиксирован как Side by Side. Сервер намеренно не предоставляет опций макета или расположения, чтобы каждый скриншот-доказательство имел одинаковый готовый к отчёту формат.
Скриншоты не редактируются. Всё, что на экране —
Authorization,Cookie,Set-Cookie— захватывается полностью. Проверяйте перед публикацией.Replay-сессии только с запросом отклоняются по умолчанию. Screenshot Mode может сохранять предыдущее превью, если у выбранной сессии нет ответа. Передавайте
--allow-no-responseтолько когда скриншот только запроса намеренный.
Устранение неполадок
Сообщение | Причина |
| Caido запущен без |
| Нажмите Connect на локальном экземпляре в окне Caido. |
| Не открыта ни одна Replay-сессия, либо плагин Screenshot Mode не установлен/не включён. |
| Используйте точное имя коллекции, показанное на боковой панели Replay. |
| Инструмент раскрывает |
| Выбранная сессия была создана из запроса или не завершена. Захватите сессию, чей |
| Screenshot Mode показал другой URL. Ничего не сохранено; повторите попытку, используя заполненный |
| Контент слишком длинный для рендеринга. Захватите более короткий запрос/ответ. |
Лицензия
MIT
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Tools
Related MCP Servers
- AlicenseAqualityAmaintenanceEnables capturing screenshots of web pages and local HTML files through a simple MCP tool interface using Puppeteer with configurable options for dimensions and output paths.27729Apache 2.0
- AlicenseAqualityDmaintenanceEnables AI assistants to capture screenshots of web pages using automated browser sessions. Supports full-page and element-specific screenshots, device simulation, and JavaScript execution for comprehensive web testing and monitoring.610MIT
- AlicenseCqualityDmaintenanceEnables taking screenshots of web pages with support for multiple devices (desktop, mobile, tablet), custom dimensions, full-page capture, and various image formats. Built with Playwright for reliable web page rendering and screenshot generation.1MIT
- AlicenseNot gradedqualityCmaintenanceCaptures webpage screenshots via ScreenshotOne API, offering desktop, mobile, and element-specific views.1MIT
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.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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