MCP
ทั้งสองฝั่งของโปรโตคอล: เซิร์ฟเวอร์และไคลเอนต์
หน้าที่การทำงาน
แพลตฟอร์มนี้เป็นเซิร์ฟเวอร์ MCP: เซิร์ฟเวอร์ทรัพยากร OAuth 2.1 ที่มีการตรวจสอบขอบเขต (scope) นโยบายการอนุมัติ และบัญชีแยกประเภทการเรียกใช้งาน ซึ่งช่วยให้ไคลเอนต์ภายนอกสามารถใช้เอเจนต์ของคุณเป็นเครื่องมือได้ นอกจากนี้ยังเป็นไคลเอนต์ MCP ด้วย: เซิร์ฟเวอร์ MCP ระยะไกลใดๆ จะกลายเป็นตัวเชื่อมต่อโดยไม่ต้องใช้โค้ดเฉพาะของผู้ให้บริการ และได้รับการปกป้องโดย circuit breaker เพื่อไม่ให้ระบบภายนอกที่ไม่เสถียรทำให้การสนทนาล่มไปด้วย
ทำไมสิ่งนี้จึงสำคัญ
ผลิตภัณฑ์ส่วนใหญ่เลือกฝั่งใดฝั่งหนึ่งของ MCP และเรียกว่าการรองรับ แต่การเป็นทั้งสองฝั่งหมายความว่าเอเจนต์ของคุณสามารถถูกใช้เป็นเครื่องมือและสามารถใช้เครื่องมืออื่นๆ ได้ ซึ่งทำให้ระบบสามารถประกอบเข้าด้วยกันได้ (composable) แทนที่จะเป็นจุดสิ้นสุด (terminal)
วิธีการทำงาน
ฝั่งเซิร์ฟเวอร์เป็นเซิร์ฟเวอร์ทรัพยากร OAuth 2.1 จริง
การตรวจสอบขอบเขต (scope) และนโยบายการอนุมัติจะคอยควบคุมการเรียกใช้เครื่องมือ และการเรียกใช้งานจะถูกบันทึกลงในบัญชีแยกประเภทเซสชัน แทนที่จะเป็นแบบส่งแล้วลืม (fire-and-forget)
ฝั่งไคลเอนต์เป็นแบบทั่วไป (generic)
การเพิ่มเซิร์ฟเวอร์ MCP ระยะไกลเป็นเพียงการกำหนดค่า มีตัวเชื่อมต่อเพียงไม่กี่ตัวเท่านั้นที่มีอะแดปเตอร์เนทีฟที่เขียนขึ้นเอง ส่วนที่เหลือจะผ่านเส้นทางทั่วไป
เซิร์ฟเวอร์เครื่องมือที่ทำงานล้มเหลวจะถูกจำกัดวงไว้
ระบบ circuit breaker จะตัดการทำงานเมื่อเซิร์ฟเวอร์ระยะไกลทำงานผิดปกติ เพื่อให้ความล้มเหลวนั้นลดทอนความสามารถลงเพียงจุดเดียว แทนที่จะทำให้การสนทนาทั้งหมดล่ม
คำถาม
- ฉันสามารถเชื่อมต่อเซิร์ฟเวอร์ MCP ของตัวเองได้หรือไม่?
- ได้: มันจะกลายเป็นตัวเชื่อมต่อโดยไม่ต้องเขียนโค้ดเฉพาะ ปัจจุบันการตรวจสอบสิทธิ์ใช้ static bearer token ส่วน OAuth 2.1 สำหรับเซิร์ฟเวอร์ระยะไกลแบบกำหนดเองนั้นอยู่ในแผนงาน
- เครื่องมืออื่นๆ สามารถเรียกใช้เอเจนต์ของฉันผ่าน MCP ได้หรือไม่?
- ได้ แพลตฟอร์มจะเปิดเผยอินเทอร์เฟซเซิร์ฟเวอร์ MCP พร้อม OAuth, ขอบเขต (scopes) และนโยบายการอนุมัติ
The rest of the bag
การกำหนดสิทธิ์รายเอกสารที่กรองคำตอบ ไม่ใช่แค่หน้าเว็บ
การประมวลผลนโยบายจะถูกแคชไว้ต่อเซสชันเพื่อความรวดเร็ว การเปลี่ยนแปลงสิทธิ์จะส่งผลเมื่อแคชถูกล้างข้อมูล แทนที่จะส่งผลทันทีกับทุกคำขอที่กำลังดำเนินการอยู่
ทุกโฟลเดอร์และเอกสารย่อยจะมีนโยบายการเข้าถึง: สาธารณะ, ลงชื่อเข้าใช้แล้ว, หรือได้รับการอนุมัติจากเจ้าของ นโยบายเหล่านี้จะถูกประมวลผลเป็นกรอบข้อมูลต่อเซสชันเพื่อกรองสิ่งที่เอเจนต์สามารถดึงข้อมูลได้ก่อนที่จะตอบกลับ ทะเบียนความสามารถ (capability registry) จะควบคุมฟีเจอร์ทั้งหมดตามผู้เช่า (tenant) และการตรวจสอบการเข้าถึงที่สำคัญจะถูกปิดกั้นการเข้าถึงเมื่อเกิดข้อผิดพลาด (fail closed)
เอกสาร
โครงสร้างโฟลเดอร์ที่เอเจนต์ใช้อ่าน และไฟล์กำหนดค่าที่เอเจนต์ปฏิบัติตาม
การดึงข้อมูลครอบคลุมไฟล์ PDF, สเปรดชีต และบันทึกการสนทนา ส่วนไฟล์ไบนารีรูปแบบพิเศษจะไม่ถูกแยกวิเคราะห์
เหตุการณ์
บัญชีแยกประเภทที่ทนทานซึ่งบันทึกสิ่งที่เอเจนต์ทำและเหตุผล
event bus ภายในกระบวนการ (in-process) เป็นตัวส่งสัญญาณแบบโหนดเดียว (single-node emitter) ไม่ใช่โบรกเกอร์แบบกระจายศูนย์ (distributed broker) ส่วนบันทึกข้ามเอเจนต์ที่ทนทานนั้นเป็นบัญชีแยกประเภทงาน Postgres ที่แยกต่างหาก
That was step 5 of 6: the agent consults its bag. Next, tasks, delegation edges, decisions and artifacts persist as rows you can replay, and the spend is already accounted for.