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 เราอยากทราบประสบการณ์การใช้งานของคุณ
- แชร์ความคิดเห็นเกี่ยวกับโครงสร้าง API โดยแสดงความคิดเห็นในปัญหาที่มีอยู่หรือ เปิดปัญหาใหม่ในวิดีโออธิบาย WebMCP ใน GitHub
- หากมีความคิดเห็นเกี่ยวกับการใช้งานของ Chrome โปรดรายงานข้อบกพร่อง Chromium
- เข้าร่วมโปรแกรมทดลองใช้ก่อนเปิดตัว เพื่อดู API ใหม่ก่อนใครและรับสิทธิ์เข้าถึงรายชื่ออีเมลของเรา
- ดูการใช้งานสำหรับ Chrome ใน สถานะ Chrome
หากคุณกำลังสร้าง Agent เราขอแนะนำให้อ่าน ข้อควรพิจารณาด้านความปลอดภัยของ Agent สำหรับ WebMCP