เผยแพร่: 9 มิถุนายน 2026, อัปเดตล่าสุด: 1 กันยายน 2026
| วิดีโออธิบาย | เว็บ | ส่วนขยาย | สถานะของ Chrome | ความตั้งใจ |
|---|---|---|---|---|
| GitHub | ดู | ความตั้งใจที่จะทดสอบ |
คุณใช้ Web Model Context Protocol (WebMCP) เพื่อสร้าง และแสดงเครื่องมือที่มีโครงสร้างต่อ Agent AI ที่ทำงานภายในเบราว์เซอร์ได้ ซึ่งรวมถึง Agent ที่ขับเคลื่อนโดยส่วนขยาย เอเจนต์ ใช้โมเดลภาษาขนาดใหญ่ (LLM) กฎ หน่วยความจำ และเครื่องมือเพื่อดำเนินการ ในนามของผู้ใช้
เนื่องจาก LLM จะถือว่าข้อความ คำสั่ง และข้อมูลผู้ใช้ทั้งหมดเป็นลำดับโทเค็นเดียว จึงมีแนวโน้มที่จะเกิดการแทรกพรอมต์โดยอ้อม ซึ่งเป็นการรวมคำสั่งที่เป็นอันตรายโดยผู้โจมตี ทีมของเราได้เขียนเอกสารนี้เกี่ยวกับ ความปลอดภัยของเครื่องมือ เพื่อช่วยคุณปกป้องเว็บไซต์และผู้ใช้จากผู้ประสงค์ร้าย
แม้ว่าโมเดลบางรุ่นจะมีเลเยอร์ที่จัดการการแทรกพรอมต์ แต่ก็ไม่สามารถรับประกันความปลอดภัยภายในโมเดลภาษาขนาดใหญ่ (LLM) ได้ โมเดลมีลักษณะเป็น เชิงความน่าจะเป็น โปรดทราบว่ามีการโจมตีด้วยการแทรกพรอมต์ที่ทำซ้ำได้ ต่อระบบเอเจนต์ที่ใช้ LLM ที่ล้ำสมัย และการโจมตีบนเว็บที่แพร่หลาย กำลังเพิ่มขึ้น
เราได้จัดทำคำแนะนำเบื้องต้นเกี่ยวกับความปลอดภัยสำหรับผู้ที่สร้างเครื่องมือด้วย WebMCP เพื่อตอบข้อกังวลเหล่านี้
ใช้คำแนะนำในการใส่คำอธิบายประกอบ
เคล็ดลับบางอย่างที่คุณควรเพิ่มเมื่อสร้างเครื่องมือมีดังนี้
- ใช้
untrustedContentHintตามความเหมาะสม หากเครื่องมือแสดงเนื้อหาที่ผู้ใช้สร้างขึ้น (UGC) หรือข้อมูลที่มาจากภายนอก ให้พิจารณาเพิ่มuntrustedContentHintลงในเครื่องมือ ฟิลด์นี้จะติดป้ายกำกับเพย์โหลด อย่างชัดเจนว่าไม่น่าเชื่อถือ เพื่อช่วยปกป้องความสมบูรณ์ของเว็บไซต์ในขณะที่ให้สัญญาณ แก่ตัวแทนว่าข้อมูลนี้ต้องได้รับการตรวจสอบอย่างละเอียด - ใช้
consequentialHintสำหรับการดำเนินการที่มีความเสี่ยงสูงหรือย้อนกลับไม่ได้ หากการเรียกใช้เครื่องมือส่งผลให้เกิดการดำเนินการที่สำคัญ เช่น การจองการเดินทางหรือการโอนเงิน ให้ตั้งค่าconsequentialHint: trueเพื่อให้เอเจนต์หรือเบราว์เซอร์ขอการยืนยันจากผู้ใช้ก่อนการดำเนินการได้ - ใช้
readOnlyHintในเครื่องมือที่ไม่เปลี่ยนสถานะ ซึ่งช่วยให้ เอเจนต์ตัดสินใจได้ดีขึ้นว่าจะขอการยืนยันจากผู้ใช้เมื่อใด
เปิดเผยเครื่องมือของคุณอย่างระมัดระวัง
document.modelContext.registerTool API ของ WebMCP จะแสดงเฉพาะฟังก์ชันการทำงานของเครื่องมือต่อตัวแทนเท่านั้น โดยค่าเริ่มต้น เว็บไซต์อื่นๆ หรือ 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
กำหนดงบประมาณตัวละคร
เขียนคำอธิบายและเอาต์พุตของเครื่องมือให้กระชับเพื่อหลีกเลี่ยงการละเมิดขอบเขตการใช้งานของเอเจนต์ เราขอแนะนำให้ใช้จำนวนอักขระต่อไปนี้เพื่อให้ได้ผลลัพธ์ที่ดีขึ้น
- 500 อักขระต่อคำอธิบายเครื่องมือ
- 150 อักขระต่อคำอธิบายพารามิเตอร์
- 30 อักขระต่อชื่อเครื่องมือและชื่อพารามิเตอร์
- จำกัดอักขระ 1,500 ตัวต่อเอาต์พุตของเครื่องมือแต่ละอย่าง
เป็นไปได้ว่าตัวแทนแต่ละรายอาจมีความแตกต่างกัน และคุณอาจต้องปรับงบประมาณตัวละครตามความคิดเห็นของผู้ใช้
ขั้นตอนถัดไป
เราจะดำเนินการวิจัยและสร้างโครงสร้างพื้นฐานที่ปลอดภัยสำหรับ
เว็บที่มีเอเจนต์ต่อไป ตัวอย่างเช่น มีการอภิปรายเกี่ยวกับการจัดการความยินยอม
อย่างต่อเนื่องในหมู่บุคคลที่เกี่ยวข้อง และฉบับร่างของข้อกำหนดมี
requestUserInteraction()
เพื่อขอข้อมูลจากผู้ใช้แบบไม่พร้อมกันเมื่อมีการเรียกใช้เครื่องมือ
คุณวางแผนที่จะติดตั้งใช้งาน WebMCP ในแอปพลิเคชันอย่างไร คุณมีข้อกังวลอื่นๆ ด้านความปลอดภัยหรืออื่นๆ ไหม หากคุณลงชื่อสมัครใช้ช่วงทดลองใช้จากต้นทางของ WebMCP เราอยากทราบประสบการณ์การใช้งานของคุณ
- แชร์ความคิดเห็นเกี่ยวกับรูปแบบ API โดยแสดงความคิดเห็นในปัญหาที่มีอยู่หรือ เปิดปัญหาใหม่ในคำอธิบาย WebMCP ใน GitHub
- หากมีความคิดเห็นเกี่ยวกับการติดตั้งใช้งานของ Chrome โปรดรายงานข้อบกพร่องของ Chromium
- เข้าร่วมโปรแกรมเวอร์ชันตัวอย่างก่อนเปิดตัว เพื่อดู API ใหม่ๆ ก่อนใครและรับสิทธิ์เข้าถึงรายชื่ออีเมลของเรา
- ดูการติดตั้งใช้งานสำหรับ Chrome ได้ที่ สถานะของ Chrome
หากคุณกำลังสร้างเอเจนต์ เราขอแนะนำให้อ่านข้อควรพิจารณาด้านความปลอดภัยของเอเจนต์สำหรับ WebMCP