ความปลอดภัยของเครื่องมือ WebMCP

Julia Pagnucco
Julia Pagnucco
Alexandra Klepper
Alexandra Klepper

Published: June 9, 2026, Last updated: September 1, 2026

วิดีโออธิบาย เว็บ ส่วนขยาย สถานะ Chrome ความตั้งใจ
GitHub ช่วงทดลองใช้จากต้นทาง ช่วงทดลองใช้จากต้นทาง ดู ความตั้งใจที่จะทดลอง

คุณสามารถใช้ Web Model Context Protocol (WebMCP) เพื่อสร้าง และแสดงเครื่องมือที่มีโครงสร้างให้กับ Agent AI ที่ทำงานภายในเบราว์เซอร์ ซึ่งรวมถึง Agent ที่ขับเคลื่อนโดยส่วนขยาย โดย Agent จะใช้โมเดลภาษาขนาดใหญ่ (LLM) กฎ หน่วยความจำ และเครื่องมือต่างๆ เพื่อดำเนินการ ในนามของผู้ใช้

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

แม้ว่าโมเดลบางรายการจะมีเลเยอร์ที่จัดการการแทรกพรอมต์ แต่ก็ไม่สามารถรับประกันความปลอดภัยภายในโมเดลภาษาขนาดใหญ่ (LLM) ได้ เนื่องจากโมเดลมีลักษณะเป็นแบบความน่าจะเป็น คุณควรทราบว่ามีการโจมตีด้วยการแทรกพรอมต์ซ้ำๆ กับระบบที่เป็น Agent ซึ่งใช้ LLM ที่ทันสมัยที่สุด และ การโจมตีบนเว็บก็มีแนวโน้มเพิ่มขึ้น

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

ใช้คำแนะนำในการใส่คำอธิบายประกอบ

คุณควรเพิ่มคำแนะนำต่อไปนี้เมื่อสร้างเครื่องมือ

  • ใช้ untrustedContentHint เมื่อเหมาะสม. หากเครื่องมือแสดงเนื้อหาที่ผู้ใช้สร้างขึ้น (UGC) หรือข้อมูลจากแหล่งภายนอก ให้พิจารณาเพิ่ม untrustedContentHint ลงในเครื่องมือ ฟิลด์นี้จะติดป้ายกำกับเพย์โหลดอย่างชัดเจนว่าไม่น่าเชื่อถือ เพื่อช่วยปกป้องความสมบูรณ์ของเว็บไซต์ในขณะที่ส่งสัญญาณไปยัง Agent ว่าข้อมูลนี้ต้องได้รับการตรวจสอบอย่างละเอียด
  • ใช้ consequentialHint สำหรับการดำเนินการที่มีความเสี่ยงสูงหรือย้อนกลับไม่ได้ หากการดำเนินการเครื่องมือส่งผลให้เกิดการดำเนินการที่สำคัญ เช่น การจองการเดินทางหรือการโอนเงิน ให้ตั้งค่า consequentialHint: true เพื่อให้ Agent หรือเบราว์เซอร์ขอการยืนยันจากผู้ใช้ก่อนดำเนินการได้
  • ใช้ readOnlyHint กับเครื่องมือที่ไม่เปลี่ยนสถานะ ซึ่งจะช่วยให้ Agent ตัดสินใจได้ดีขึ้นว่าจะขอการยืนยันจากผู้ใช้เมื่อใด

แสดงเครื่องมืออย่างระมัดระวัง

API document.modelContext.registerTool ของ WebMCP จะแสดงฟังก์ชันการทำงานของเครื่องมือให้กับ Agent เท่านั้น โดยค่าเริ่มต้น เว็บไซต์อื่นๆ หรือ iframe แบบข้ามต้นทางจะไม่สามารถสังเกตหรือโต้ตอบกับเครื่องมือของคุณได้

คุณสามารถให้สิทธิ์เข้าถึงเครื่องมือได้ด้วยตัวเลือก exposedTo ใน registerTool กับอาร์เรย์ของต้นทางที่เฉพาะเจาะจงและปลอดภัย ซึ่งจะแสดงเครื่องมือของคุณต่อต้นทางเหล่านั้นเมื่อฝังอยู่ในเว็บไซต์ของคุณ และเมื่อเว็บไซต์ของคุณฝังอยู่ในต้นทางนั้น

// https://partner.org

await document.modelContext.registerTool({
  name: 'my_shared_tool',
  description: 'Shared across origins',
  // ...
}, {
  exposedTo: ['https://trusted.com', 'https://example.com']
});

แสดงเครื่องมือต่อต้นทางที่คุณเชื่อถือเท่านั้น ซึ่งมีความสำคัญอย่างยิ่งเมื่อเครื่องมือจัดการข้อมูลผู้ใช้หรือส่งผลกระทบต่อผู้ใช้ในลักษณะอื่นๆ

  • เครื่องมือแบบอ่านอย่างเดียว เช่น getFavoriteProducts สามารถเปิดเผยข้อมูลเกี่ยวกับผู้ใช้ได้ คุณควรแสดงเครื่องมือเหล่านี้ต่อเว็บไซต์ที่คุณจะแชร์ข้อมูลนี้ด้วยโดยตรงเท่านั้น
  • เครื่องมือที่มีสิทธิ์เข้าถึงแบบอ่านและเขียนจะดำเนินการในนามของผู้ใช้ คุณควรแสดงเครื่องมือเหล่านี้ต่อต้นทางที่คุณตัดสินใจว่าเชื่อถือได้เมื่อดำเนินการในนามของผู้ใช้เท่านั้น ตัวอย่างเช่น คุณอาจต้องการแสดง postComment ต่อ trustedExample.com แต่ไม่ต้องการแสดงต่อ evilExample.com

กำหนดงบประมาณอักขระ

เขียนคำอธิบายและเอาต์พุตของเครื่องมือให้กระชับเพื่อให้ไม่เกินขีดจำกัดของ Agent เราขอแนะนำให้จำกัดจำนวนอักขระดังต่อไปนี้เพื่อให้ได้ผลลัพธ์ที่ดีขึ้น

  • 500 อักขระต่อคำอธิบายเครื่องมือ
  • 150 อักขระต่อคำอธิบายพารามิเตอร์
  • 30 อักขระต่อชื่อเครื่องมือและชื่อพารามิเตอร์
  • จำกัดจำนวนอักขระ 1,500 ตัวต่อเอาต์พุตเครื่องมือแต่ละรายการ

Agent แต่ละรายการอาจมีความแตกต่างกัน และคุณอาจต้องปรับงบประมาณอักขระตามความคิดเห็นของผู้ใช้

ขั้นตอนถัดไป

เราจะทำการวิจัยและพัฒนาโครงสร้างพื้นฐานที่ปลอดภัยสำหรับเว็บที่เป็น Agent ต่อไป ตัวอย่างเช่น เรากำลังพูดคุยกันเกี่ยวกับการจัดการความยินยอม ระหว่างบุคคลที่เกี่ยวข้อง และฉบับร่างข้อกำหนดมี requestUserInteraction() เพื่อขอข้อมูลจากผู้ใช้แบบไม่พร้อมกันเมื่อมีการเรียกใช้เครื่องมือ

คุณวางแผนที่จะใช้ WebMCP ในแอปพลิเคชันอย่างไร คุณมีข้อกังวลอื่นๆ เกี่ยวกับความปลอดภัยหรือเรื่องอื่นๆ ไหม หากลงชื่อสมัครเข้าร่วมช่วงทดลองใช้จากต้นทางของ WebMCP เราอยากทราบประสบการณ์การใช้งานของคุณ

หากคุณกำลังสร้าง Agent เราขอแนะนำให้อ่าน ข้อควรพิจารณาด้านความปลอดภัยของ Agent สำหรับ WebMCP