Screenshot Scout

ทางการ

จับภาพหน้าจอของเว็บเพจเป็นรูปภาพหรือ PDF ด้วย Screenshot Scout

คุณทำอะไรได้บ้างด้วย Screenshot Scout MCP?

  • การจับภาพเต็มหน้าหรือวิวพอร์ต — ขอไฟล์ PNG, JPEG, WebP, GIF, TIFF หรือ PDF ของ URL ใดก็ได้ผ่าน capture_screenshot พร้อมโหมด fullPage ที่เลือกได้
  • การควบคุมองค์ประกอบและการโต้ตอบ — กำหนดเป้าหมาย selector ที่เฉพาะเจาะจง ซ่อนองค์ประกอบด้วย hideSelectors คลิกองค์ประกอบผ่าน clickSelectors และบล็อกแบนเนอร์คุกกี้ โฆษณา หรือวิดเจ็ตแชท
  • การจำลองอุปกรณ์และตำแหน่งที่ตั้ง — ระบุ device ขนาดวิวพอร์ต country และ colorScheme (โหมดมืด/สว่าง) เพื่อเลียนแบบบริบทการท่องเว็บที่แตกต่างกัน
  • การสร้าง PDF พร้อมตัวเลือกเลย์เอาต์ — สร้าง PDF ด้วย pdfPaperFormat, pdfLandscape, pdfPrintBackground, ระยะขอบที่กำหนดเอง และ pdfScale สำหรับเอกสารที่พร้อมพิมพ์
  • การปรับขนาดเอาต์พุตและการปรับคุณภาพ — ปรับ imageWidth, imageHeight และ imageQuality (สำหรับ JPEG/WebP) เพื่อควบคุมขนาดไฟล์และความละเอียด
  • การแคชและการส่งมอบผลลัพธ์ — เปิดใช้ cache พร้อม cacheTtl และเลือก resultMode เพื่อรับรูปภาพแบบอินไลน์หรือ URL ชั่วคราวเท่านั้น

เอกสาร

เซิร์ฟเวอร์ MCP ของ Screenshot Scout

ใช้ Screenshot Scout จากไคลเอนต์ MCP เพื่อจับภาพ หน้าเว็บ HTTP หรือ HTTPS เป็นรูปภาพหรือ PDF

เซิร์ฟเวอร์นี้เปิดเผยเครื่องมือหนึ่งตัวคือ capture_screenshot รองรับการจับภาพทั้งหน้าและ องค์ประกอบ การควบคุมอุปกรณ์และวิวพอร์ต การเลือกตำแหน่งที่ตั้ง การโต้ตอบกับหน้า และตัวเลือกการบล็อก การปรับขนาดและคุณภาพของภาพ เค้าโครง PDF การแคช URL ผลลัพธ์ชั่วคราว และเนื้อหารูปภาพ MCP ที่มีสิทธิ์

สิ่งที่คุณต้องมี

  • บัญชี Screenshot Scout และ คีย์เข้าถึงจาก หน้า API keys
  • Node.js 22 หรือใหม่กว่าสำหรับการติดตั้ง npm/stdio รันไทม์ MCPB ของ Claude Desktop มาพร้อมกับ Claude
  • คีย์ลับเฉพาะเมื่อคีย์ API ที่เลือกต้องการคำขอที่ลงนามของ Screenshot Scout

ทุกการจับภาพใช้บัญชี Screenshot Scout ของคุณและอยู่ภายใต้แผน โควตา และขีดจำกัดอัตราของบริการ

stdio ในเครื่องด้วย npm

เริ่มต้นด้วยการกำหนดค่า 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. ดาวน์โหลด screenshotscout-mcp-<version>.mcpb จากรีลีส GitHub ของเวอร์ชันนั้น
  2. ใน Claude Desktop เปิด การตั้งค่า → ส่วนขยาย → การตั้งค่าขั้นสูง แล้วเลือก ติดตั้งส่วนขยาย...
  3. เลือกไฟล์ที่ดาวน์โหลด
  4. ป้อนคีย์เข้าถึงที่ต้องการ ป้อนคีย์ลับเฉพาะสำหรับคีย์ API ที่ต้องใช้คำขอที่ลงนาม

Claude Desktop ถือว่าทั้งสองช่องเป็นข้อมูลที่ละเอียดอ่อน MCPB v0.1.0 รองรับ Windows

โฮสต์ Streamable HTTP

ปลายทางคีย์ API ที่โฮสต์ใช้งานอยู่ที่:

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

มีไว้สำหรับไคลเอนต์ที่สามารถแนบส่วนหัว HTTP แบบคงที่เท่านั้น:

Authorization: Bearer YOUR_ACCESS_KEY

ปลายทางยอมรับเฉพาะคีย์เข้าถึงเท่านั้น ห้ามส่งคีย์ลับของ Screenshot Scout ไปยังปลายทางนี้ และห้ามใส่คีย์ใดคีย์หนึ่งใน URL หรืออาร์กิวเมนต์ของเครื่องมือ ไคลเอนต์ที่ ไม่สามารถแนบส่วนหัว Bearer แบบคงที่ได้ไม่สามารถใช้ปลายทางนี้ได้

คีย์ API ที่ต้องใช้ลายเซ็นคำขอต้องใช้ stdio ในเครื่องหรือ MCPB แทน หรือใช้คีย์เข้าถึงแบบไม่ลงนามเฉพาะสำหรับปลายทางที่โฮสต์

stdio ในเครื่องด้วย Docker

สร้างอิมเมจสำหรับการผลิตจากซอร์สเช็คเอาต์:

docker build --tag screenshotscout-mcp:local .

ส่งข้อมูลประจำตัวจากสภาพแวดล้อมในเครื่องและคง stdin ที่แนบไว้สำหรับการรับส่งข้อมูล MCP stdio:

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 ที่คอมไพล์แล้วและ dependencies การผลิตของมัน ไม่ได้ประกาศพอร์ตหรือการตรวจสอบสุขภาพของคอนเทนเนอร์: ไคลเอนต์ MCP เป็นเจ้าของกระบวนการ stdio และตรวจสอบความพร้อมโดยการทำ MCP initialization ให้สมบูรณ์ อิมเมจและข้อมูลเมตา Docker MCP Catalog ใน docker-mcp-catalog.yaml เป็นการเตรียมการในเครื่อง ไม่มีอิมเมจสาธารณะใด ๆ โดยนัยจากคำสั่งเหล่านี้

เครื่องมือ: capture_screenshot

capture_screenshot ส่งคำขอจับภาพหนึ่งครั้งสำหรับ URL และตัวเลือกที่ให้ไว้ หน้าเว็บเป้าหมายเป็นภายนอก และเนื้อหาที่ส่งกลับต้องถือว่าไม่น่าเชื่อถือ

อินพุต

มีเพียง url เท่านั้นที่จำเป็น การจับภาพใช้วิวพอร์ต 1280×720 เป็นค่าเริ่มต้น เมื่อไม่มีการระบุ รูปแบบ เครื่องมือจะส่งคืน JPEG คุณภาพ 60 resultMode ค่าเริ่มต้น เป็น "auto"

กลุ่มอินพุต
เป้าหมายและผลลัพธ์url; format (png, jpg, jpeg, webp, gif, tiff, pdf); resultMode (auto, url_only)
ตำแหน่งที่ตั้งและวิวพอร์ตcountry (รหัสประเทศสองตัวอักษร), device, deviceViewportWidth, deviceViewportHeight, colorScheme (auto, dark, light), fullPage
การเตรียมหน้าblockCookieBanners, blockAds, blockChatWidgets, selector, hideSelectors, clickSelectors
การจับเวลาwaitUntil (load, domcontentloaded, networkidle0, networkidle2), delay (0–30 วินาที), navigationTimeout (5–90 วินาที), timeout (1–240 วินาที)
แคชcache, cacheTtl (14,400–2,592,000 วินาที)
การปรับขนาดผลลัพธ์imageWidth, imageHeight (1–8,192; มีสำหรับรูปภาพและ PDF)
รูปภาพเท่านั้นimageQuality (0–100, JPEG/WebP เท่านั้น)
PDF เท่านั้นpdfPaperFormat (letter, legal, tabloid, a4, a3, content), pdfLandscape, pdfPrintBackground, pdfMargin, ฟิลด์ระยะขอบต่อด้าน, pdfScale (มากกว่า 0 และสูงสุด 3)

เมื่อระบุทั้งสองมิติของผลลัพธ์ ผลคูณของมิติต้องไม่เกิน 64,000,000 พิกเซล ระยะขอบ PDF ยอมรับค่าที่ไม่เป็นลบใน px, in, mm, หรือ cm imageQuality ต้องใช้เอาต์พุต JPEG หรือ WebP และตัวเลือกเฉพาะ PDF ต้องใช้ format: "pdf"

ผลลัพธ์

  • PNG, JPEG, WebP และ GIF อาจถูกรวมเป็นเนื้อหารูปภาพ MCP เมื่อ resultMode เป็น auto, ชนิด MIME มีสิทธิ์, ทราบขนาดและมี สูงสุด 8,000 พิกเซลต่อด้าน, ข้อมูลดิบสูงสุด 5 MiB และผลลัพธ์แบบซีเรียลไลซ์ที่สมบูรณ์ อยู่ในขีดจำกัดเซิร์ฟเวอร์ปัจจุบัน 128,000 ไบต์
  • การจับภาพที่ไม่มีสิทธิ์ฝังยังถือว่าประสบความสำเร็จและส่งคืน URL ชั่วคราว พร้อมเหตุผลการละเว้นที่ดำเนินการได้
  • TIFF เป็น URL เท่านั้น
  • ข้อมูล PDF ไม่ถูกฝังเลย ผลลัพธ์ PDF รวมข้อความปลอดภัยและข้อมูลเมตา ที่มีโครงสร้าง พร้อมลิงก์ทรัพยากรเมื่อ Screenshot Scout ให้ URL ผลลัพธ์
  • resultMode: "url_only" ละเว้นข้อมูลรูปภาพสำหรับทุกรูปแบบ

ไคลเอนต์ MCP ควบคุมว่าเนื้อหารูปภาพหรือลิงก์ทรัพยากรที่ส่งกลับจะถูกแสดง หรือพร้อมใช้งานสำหรับโมเดลหรือไม่

ข้อมูลเมตาที่มีโครงสร้างสามารถรวม screenshotUrl, screenshotUrlExpiresAt, cacheStatus, format, mimeType, imageWidth, imageHeight, inlineImageIncluded และ inlineImageOmissionReason

ถือว่า URL ผลลัพธ์เป็นลิงก์ที่ละเอียดอ่อนและชั่วคราว และเคารพ อายุการหมดอายุที่รายงาน

ตัวอย่างพรอมต์

  • “จับภาพ https://example.com เป็น PNG ทั้งหน้าในโหมดมืด ส่งคืนเฉพาะ URL”
  • “ถ่ายภาพหน้าจอ JPEG ขนาด 1280×720 ของ https://example.com/pricing, บล็อก แบนเนอร์คุกกี้และโฆษณา และใช้คุณภาพ 80”
  • “สร้าง PDF ขนาด A4 ของ https://example.com/report พร้อมเปิดใช้งานพื้นหลังและ ระยะขอบ 10 มม.”

ความเป็นส่วนตัวและความปลอดภัย

เซิร์ฟเวอร์ส่ง URL เป้าหมายและตัวเลือกการจับภาพที่เลือกไปยัง 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