Fetch-MCP: นักพัฒนาถกเถียงเกี่ยวกับเครื่องมือสกัดเนื้อหาเว็บและความท้าทายในการใช้งาน MCP

BigGo Editorial Team
Fetch-MCP: นักพัฒนาถกเถียงเกี่ยวกับเครื่องมือสกัดเนื้อหาเว็บและความท้าทายในการใช้งาน MCP

Fetch-MCP ได้ก้าวขึ้นมาเป็นเครื่องมือที่ทรงพลังสำหรับการสกัดเนื้อหาจากเว็บ จุดประกายให้เกิดการถกเถียงในหมู่นักพัฒนาเกี่ยวกับความสามารถของมันและนัยสำคัญในวงกว้างของระบบนิเวศ Model Context Protocol (MCP) สร้างขึ้นบนเทคโนโลยีเบราว์เซอร์แบบ headless ของ Playwright เครื่องมือนี้มอบความสามารถในการดึงข้อมูลที่ซับซ้อนทั้งจากเว็บไซต์แบบสแตติกและไดนามิก พร้อมคุณสมบัติที่ดึงดูดความสนใจของชุมชนนักพัฒนา

ทำความเข้าใจ MCP และระบบนิเวศที่กำลังเติบโต

Model Context Protocol (MCP) แสดงถึงความก้าวหน้าที่สำคัญในวิธีที่โมเดล AI สื่อสารกับเครื่องมือภายนอกและแหล่งข้อมูล ผู้แสดงความคิดเห็นหลายคนในการสนทนาต้องการคำอธิบายเพิ่มเติมว่า MCP คืออะไรกันแน่ ซึ่งชี้ให้เห็นว่านักพัฒนาจำนวนมากยังคงอยู่ในขั้นตอนของการทำความรู้จักกับเทคโนโลยีนี้ MCP ช่วยให้โมเดล AI สามารถสื่อสารกับบริการภายนอกผ่านโปรโตคอลมาตรฐาน ทำให้สามารถเข้าถึงข้อมูลแบบเรียลไทม์และดำเนินการที่เกินขอบเขตของข้อมูลที่ใช้ในการฝึกฝนได้

คำอธิบายอย่างง่ายสามารถดูได้ที่นี่: https://www.youtube.com/watch?v=7j_NE6Pjv-E

ความสนใจที่เพิ่มขึ้นในการใช้งาน MCP อย่าง Fetch-MCP แสดงให้เห็นว่านักพัฒนากำลังสำรวจวิธีการเพิ่มขีดความสามารถของ AI ผ่านเครื่องมือและบริการภายนอกอย่างจริงจัง ผู้ใช้บางรายได้แบ่งปันทรัพยากรเพิ่มเติมสำหรับผู้ที่ต้องการเรียนรู้เพิ่มเติมเกี่ยวกับ MCP และการประยุกต์ใช้ที่เป็นไปได้

ความท้าทายด้านการยืนยันตัวตนในการสกัดเนื้อหาเว็บ

ประเด็นสำคัญที่ถูกยกขึ้นมาในการสนทนาของชุมชนคือข้อจำกัดด้านการยืนยันตัวตน ผู้ใช้ชี้ให้เห็นว่า Playwright ไม่ได้ใช้คุกกี้ของเบราว์เซอร์ที่มีอยู่โดยอัตโนมัติ ทำให้เกิดความท้าทายในการเข้าถึงเนื้อหาที่อยู่หลังกำแพงการเข้าสู่ระบบ ข้อจำกัดนี้มีความสำคัญโดยเฉพาะสำหรับผู้ที่ต้องการสกัดเนื้อหาจากแพลตฟอร์มเช่น Twitter ที่ต้องการการเข้าสู่ระบบเพื่อเข้าถึงเนื้อหาทั้งหมด

นักพัฒนาหลายคนได้เสนอวิธีแก้ปัญหาทางเทคนิค หนึ่งในนั้นแนะนำให้เชื่อมต่อ Playwright ผ่านโปรโตคอลการดีบักของ Chrome โดยเปิด Chrome ด้วยแฟล็ก --remote-debugging-port=9222 แล้วเชื่อมต่อผ่าน CDP ใน Playwright ผู้แสดงความคิดเห็นอีกรายกล่าวถึงการพัฒนาเครื่องมือชื่อ Herd ที่ให้ API คล้าย Puppeteer บนเบราว์เซอร์ของผู้ใช้เอง ช่วยให้สามารถใช้เซสชันได้อย่างราบรื่นสำหรับการทำงานอัตโนมัติและการสกัดข้อมูล ในขณะเดียวกันก็หลีกเลี่ยงการตรวจจับบอท

วิธีแก้ปัญหาเหล่านี้แสดงให้เห็นถึงแนวทางการทำงานร่วมกันของชุมชนในการแก้ไขความท้าทายทางเทคนิคและการขยายความสามารถของเครื่องมืออย่าง Fetch-MCP ให้เกินกว่าการออกแบบดั้งเดิม

วิธีแก้ปัญหาการยืนยันตัวตนที่กล่าวถึง:

  1. การเชื่อมต่อผ่าน Chrome Debugging Protocol:

    // เปิด Chrome พร้อมกับ flag
    --remote-debugging-port=9222
    
    // เชื่อมต่อผ่าน CDP ใน Playwright
    const browser = await chromium.connectOverCDP('http://localhost:9222');
    
  2. เครื่องมือ Herd (https://herd.garden):

    • ให้บริการ API คล้าย puppeteer บนเบราว์เซอร์ของผู้ใช้เอง
    • ใช้เซสชันเบราว์เซอร์ที่มีอยู่แล้วสำหรับการยืนยันตัวตน
    • ช่วยหลีกเลี่ยงการตรวจจับบอทได้อีกด้วย

การใช้งานทางเลือกและคำถามเกี่ยวกับการบูรณาการ

การสนทนาเผยให้เห็นความสนใจในการใช้งานทางเลือกและความเป็นไปได้ในการบูรณาการ ผู้ใช้รายหนึ่งกล่าวถึง Pure.md ในฐานะทางเลือก REST API สำหรับ Fetch-MCP ซึ่งบ่งชี้ว่านักพัฒนากำลังสำรวจแนวทางที่แตกต่างกันในการสกัดเนื้อหาเว็บตามความต้องการเฉพาะและความชอบทางเทคนิค

คนอื่น ๆ ตั้งคำถามเกี่ยวกับวิธีที่ตัวแทน (agents) สามารถโต้ตอบกับ MCP ได้ โดยสงสัยว่าจะมาแทนที่หรือเสริมอินเทอร์เฟซเครื่องมือที่มีอยู่หรือไม่ คำตอบสั้น ๆ ระบุว่าการโต้ตอบสามารถเกิดขึ้นผ่านทั้งอินพุต/เอาต์พุตมาตรฐาน (stdio) หรือ Server-Sent Events (SSE) ซึ่งชี้ให้เห็นถึงความยืดหยุ่นของโปรโตคอล

การแลกเปลี่ยนเหล่านี้แสดงให้เห็นถึงจุดสนใจของชุมชนในรายละเอียดการนำไปใช้งานจริงและวิธีต่าง ๆ ที่ MCP สามารถบูรณาการเข้ากับขั้นตอนการทำงานและระบบที่มีอยู่

คุณสมบัติหลักของ Fetch-MCP:

  • fetch_url: การดึงเนื้อหาจากหน้าเว็บเดียว

    • ใช้เบราว์เซอร์แบบ Playwright headless เพื่อประมวลผล JavaScript
    • รองรับการดึงเนื้อหาหลักอย่างชาญฉลาด
    • แปลงเนื้อหาเป็น Markdown โดยค่าเริ่มต้น
  • fetch_urls: การดึงข้อมูลจาก URL หลายรายการพร้อมกันแบบขนาน

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

    • timeout: เวลาที่รอการโหลดหน้าเว็บ (ค่าเริ่มต้น: 30000 มิลลิวินาที)
    • waitUntil: เกณฑ์การเสร็จสิ้นการนำทาง (ตัวเลือก: 'load', 'domcontentloaded', 'networkidle', 'commit')
    • extractContent: การดึงเนื้อหาหลักอย่างชาญฉลาด (ค่าเริ่มต้น: true)
    • maxLength: ขีดจำกัดความยาวเนื้อหาสูงสุด
    • returnHtml: ส่งคืนเป็น HTML แทน Markdown (ค่าเริ่มต้น: false)

การประยุกต์ใช้ที่เป็นไปได้ในบริบทขององค์กร

ผู้แสดงความคิดเห็นบางรายได้สำรวจการประยุกต์ใช้ MCP และเครื่องมือสกัดเนื้อหาที่เป็นไปได้ในองค์กร มีความสนใจเป็นพิเศษว่าแนวทางนี้สามารถใช้จำกัด LLM ให้อยู่ในบริบทข้อมูลเฉพาะได้หรือไม่ เช่น การรับประกันว่าคำถามเกี่ยวกับ CRM บนเว็บไซต์ของ Microsoft จะให้ข้อมูลเฉพาะเกี่ยวกับ Dynamics เท่านั้น และไม่เกี่ยวกับคู่แข่งอย่าง Salesforce

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

สรุปแล้ว Fetch-MCP เป็นเพียงหนึ่งในการใช้งานในระบบนิเวศ MCP ที่กำลังพัฒนาอย่างรวดเร็ว เมื่อนักพัฒนายังคงสำรวจความสามารถและข้อจำกัด เราน่าจะได้เห็นเครื่องมือที่ซับซ้อนมากขึ้นซึ่งแก้ไขความท้าทายในปัจจุบันเกี่ยวกับการยืนยันตัวตน การเข้าถึงเนื้อหา และการบูรณาการกับองค์กร การสนทนาของชุมชนเน้นย้ำทั้งอุปสรรคทางเทคนิคและวิธีแก้ปัญหาที่สร้างสรรค์ซึ่งเป็นลักษณะของสาขาที่กำลังพัฒนานี้

อ้างอิง: Fetch MCP