Screenshot Scout
offiziellErfassen Sie Screenshots von Webseiten als Bilder oder PDFs mit Screenshot Scout.
Was kann man mit Screenshot Scout MCP machen?
- Ganzseitige oder Viewport-Aufnahmen — Fordern Sie ein PNG, JPEG, WebP, GIF, TIFF oder PDF einer beliebigen URL über
capture_screenshotan, optional mit dem ModusfullPage. - Element- und Interaktionssteuerung — Zielen Sie auf einen bestimmten
selector, blenden Sie Elemente mithideSelectorsaus, klicken Sie überclickSelectorsauf Elemente und blockieren Sie Cookie-Banner, Werbung oder Chat-Widgets. - Geräte- und Standortsimulation — Geben Sie ein
device, Viewport-Abmessungen,countryundcolorScheme(dunkel/hell) an, um verschiedene Browsing-Kontexte nachzubilden. - PDF-Erzeugung mit Layout-Optionen — Erstellen Sie PDFs mit
pdfPaperFormat,pdfLandscape,pdfPrintBackground, benutzerdefinierten Rändern undpdfScalefür druckfertige Dokumente. - Ausgabegröße und Qualitätsanpassung — Passen Sie
imageWidth,imageHeightundimageQuality(für JPEG/WebP) an, um Dateigröße und Auflösung zu steuern. - Caching und Ergebniszustellung — Aktivieren Sie
cachemit einemcacheTtlund wählen SieresultMode, um nur Inline-Bilder oder temporäre URLs zu erhalten.
Dokumentation
Screenshot Scout MCP Server
Verwenden Sie Screenshot Scout über einen MCP-Client, um HTTP- oder HTTPS-Webseiten als Bilder oder PDFs zu erfassen.
Dieser Server stellt ein Tool bereit: capture_screenshot. Es unterstützt Ganzseiten- und Elementaufnahmen, Geräte- und Viewport-Steuerung, Standortauswahl, Seiteninteraktions- und Blockierungsoptionen, Bildgröße und -qualität, PDF-Layout, Caching, temporäre Ergebnis-URLs und berechtigte MCP-Bildinhalte.
Was Sie benötigen
- Ein Screenshot Scout-Konto und einen Zugriffsschlüssel von der API-Schlüssel-Seite.
- Node.js 22 oder neuer für die npm/stdio-Installation. Die MCPB-Laufzeit von Claude Desktop wird von Claude mitgeliefert.
- Den optionalen geheimen Schlüssel nur, wenn Ihr ausgewählter API-Schlüssel signierte Screenshot Scout-Anfragen erfordert.
Jede Aufnahme verwendet Ihr Screenshot Scout-Konto und unterliegt dessen Plan, Kontingent und Ratenbegrenzungen.
Lokales stdio mit npm
Beginnen Sie mit dieser lokalen stdio-Konfiguration:
{
"mcpServers": {
"screenshotscout": {
"command": "npx",
"args": ["-y", "@screenshotscout/mcp"],
"env": {
"SCREENSHOTSCOUT_ACCESS_KEY": "YOUR_ACCESS_KEY"
}
}
}
}
Wenn der Zugriffsschlüssel eine Anfragesignierung erfordert, fügen Sie den geheimen Schlüssel lokal hinzu:
"SCREENSHOTSCOUT_SECRET_KEY": "YOUR_SECRET_KEY"
Halten Sie persönliche Konfigurationsdateien aus der Versionskontrolle heraus. Anmeldedaten sind Prozessumgebungsvariablen, keine Tool-Argumente. Siehe client-spezifische Copy-Paste-Konfigurationen für Claude Desktop, Claude Code, Cursor, VS Code/GitHub Copilot, Devin und Cline.
Aus einem Quellcode-Checkout ausführen
npm ci
npm run build
Weisen Sie den Client mit node auf den absoluten Pfad zu dist/stdio.js und stellen Sie dieselben oben gezeigten Umgebungsvariablen bereit.
Claude Desktop MCPB
So installieren Sie die Claude Desktop-Erweiterung:
- Laden Sie
screenshotscout-mcp-<version>.mcpbaus dem GitHub-Release dieser Version herunter. - Öffnen Sie in Claude Desktop Einstellungen → Erweiterungen → Erweiterte Einstellungen und wählen Sie Erweiterung installieren….
- Wählen Sie die heruntergeladene Datei aus.
- Geben Sie den erforderlichen Zugriffsschlüssel ein. Geben Sie den geheimen Schlüssel nur für einen API-Schlüssel ein, der signierte Anfragen erfordert.
Claude Desktop behandelt beide Felder als vertrauliche Einstellungen. Die v0.1.0 MCPB unterstützt Windows.
Gehostetes Streamable HTTP
Der gehostete API-Schlüssel-Endpunkt ist erreichbar unter:
https://mcp.screenshotscout.com/mcp/api-key
Er ist nur für Clients gedacht, die einen statischen HTTP-Header anhängen können:
Authorization: Bearer YOUR_ACCESS_KEY
Der Endpunkt akzeptiert nur einen Zugriffsschlüssel. Senden Sie niemals einen geheimen Screenshot Scout-Schlüssel dorthin und setzen Sie keinen der Schlüssel in die URL oder ein Tool-Argument. Clients, die keinen statischen Bearer-Header anhängen können, können diesen Endpunkt nicht verwenden.
API-Schlüssel, die Anfragesignaturen erfordern, müssen stattdessen lokales stdio oder MCPB verwenden oder einen dedizierten unsignierten Zugriffsschlüssel für den gehosteten Endpunkt nutzen.
Lokales stdio mit Docker
Erstellen Sie das Produktionsimage aus einem Quellcode-Checkout:
docker build --tag screenshotscout-mcp:local .
Übergeben Sie Anmeldedaten aus der lokalen Umgebung und halten Sie stdin für den MCP-stdio-Verkehr angehängt:
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 bleibt optional. Das Image läuft als unprivilegierter Benutzer und enthält nur den kompilierten stdio-Server und seine Produktionsabhängigkeiten. Es deklariert keinen Port und keinen Container-Health-Check: Ein MCP-Client besitzt den stdio-Prozess und überprüft die Bereitschaft durch Abschluss der MCP-Initialisierung. Das Image und seine Docker-MCP-Katalog-Metadaten in docker-mcp-catalog.yaml sind lokale Vorbereitung; durch diese Befehle wird kein öffentliches Image impliziert.
Tool: capture_screenshot
capture_screenshot sendet eine Aufnahmeanfrage für die angegebene URL und Optionen. Die Zielwebseite ist extern, und ihr zurückgegebener Inhalt muss als nicht vertrauenswürdig behandelt werden.
Eingaben
Nur url ist erforderlich. Aufnahmen verwenden standardmäßig einen 1280×720-Viewport. Wenn kein Format angegeben ist, gibt das Tool JPEG mit Qualität 60 zurück. resultMode ist standardmäßig "auto".
| Gruppe | Eingaben |
|---|---|
| Ziel und Ausgabe | url; format (png, jpg, jpeg, webp, gif, tiff, pdf); resultMode (auto, url_only) |
| Standort und Viewport | country (zweistelliger Ländercode), device, deviceViewportWidth, deviceViewportHeight, colorScheme (auto, dark, light), fullPage |
| Seitenvorbereitung | blockCookieBanners, blockAds, blockChatWidgets, selector, hideSelectors, clickSelectors |
| Zeitsteuerung | waitUntil (load, domcontentloaded, networkidle0, networkidle2), delay (0–30 Sekunden), navigationTimeout (5–90 Sekunden), timeout (1–240 Sekunden) |
| Cache | cache, cacheTtl (14.400–2.592.000 Sekunden) |
| Ausgabegrößenanpassung | imageWidth, imageHeight (1–8.192; verfügbar für Bilder und PDFs) |
| Nur Bild | imageQuality (0–100, nur JPEG/WebP) |
| Nur PDF | pdfPaperFormat (letter, legal, tabloid, a4, a3, content), pdfLandscape, pdfPrintBackground, pdfMargin, Randfelder pro Seite, pdfScale (größer als 0 und höchstens 3) |
Wenn beide Ausgabeabmessungen angegeben sind, darf ihr Produkt 64.000.000 Pixel nicht überschreiten. PDF-Ränder akzeptieren nicht-negative Werte in px, in, mm oder cm. imageQuality erfordert JPEG- oder WebP-Ausgabe, und PDF-only-Optionen erfordern format: "pdf".
Ergebnisse
- PNG, JPEG, WebP und GIF können als MCP-Bildinhalt eingebunden werden, wenn
resultModeautoist, der MIME-Typ berechtigt ist, die Abmessungen bekannt sind und höchstens 8.000 Pixel pro Seite betragen, die Rohdaten höchstens 5 MiB groß sind und das vollständige serialisierte Ergebnis in das aktuelle Serverlimit von 128.000 Byte passt. - Eine Aufnahme, die nicht eingebettet werden kann, bleibt erfolgreich und gibt ihre temporäre URL sowie einen umsetzbaren Auslassungsgrund zurück.
- TIFF ist nur per URL verfügbar.
- PDF-Bytes werden niemals eingebettet. Ein PDF-Ergebnis enthält sicheren Text und strukturierte Metadaten sowie einen Ressourcenlink, wenn Screenshot Scout eine Ergebnis-URL bereitstellt.
resultMode: "url_only"lässt Bildbytes für jedes Format aus.
MCP-Clients steuern, ob zurückgegebene Bildinhalte oder Ressourcenlinks angezeigt oder einem Modell zur Verfügung gestellt werden.
Strukturierte Metadaten können screenshotUrl, screenshotUrlExpiresAt, cacheStatus, format, mimeType, imageWidth, imageHeight, inlineImageIncluded und inlineImageOmissionReason enthalten.
Behandeln Sie Ergebnis-URLs als vertrauliche, temporäre Links und beachten Sie deren angegebene Ablaufzeit.
Beispielaufforderungen
- „Erfassen Sie
https://example.comals ganzseitiges PNG im Dunkelmodus. Geben Sie nur eine URL zurück.“ - „Machen Sie einen 1280×720-JPEG-Screenshot von
https://example.com/pricing, blockieren Sie Cookie-Banner und Werbung und verwenden Sie Qualität 80.“ - „Erstellen Sie ein A4-PDF von
https://example.com/reportmit aktivierten Hintergründen und 10 mm Rändern.“
Datenschutz und Sicherheit
Der Server sendet die Ziel-URL und die ausgewählten Aufnahmeoptionen an Screenshot Scout, das die Zielwebsite lädt. Prüfen Sie die Datenschutzrichtlinie von Screenshot Scout, bevor Sie privates oder reguliertes Material erfassen.
- Erfassen Sie keine Seiten, auf die Sie nicht zugreifen dürfen.
- Fügen Sie keine Anmeldedaten in Aufforderungen, Tool-Eingaben, URLs, Problemberichte oder Protokolle ein.
- Bewahren Sie lokale Zugriffs- und geheime Schlüssel in clientverwaltetem Secret-Speicher oder privater Umgebungskonfiguration auf.
- Der lokale stdio-Server fügt keine Telemetrie hinzu. Die Anwendungsprotokollierung für den gehosteten Dienst ist auf Anfragemethode, Antwortstatus, Dauer und bereinigte unerwartete Fehler beschränkt. Sie ist so konzipiert, dass sie keine Anmeldedaten, Ziel-URLs, Screenshot-URLs, Anfrage- oder Antwortinhalte oder Bildbytes enthält.
- Prüfen Sie jedes Ziel und jede Aufnahmeanfrage, bevor Sie die Tool-Nutzung zulassen. Das Tool ist offen, verbraucht Kontingent und interagiert mit einer externen Website.
- Melden Sie Schwachstellen privat, wie in SECURITY.md beschrieben.
Entwicklung
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
Lizenz
MIT © Oleksii Velykyi