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