Model Context Protocol (MCP) ได้ถูกเปิดตัวในฐานะมาตรฐานที่เป็นรูปธรรมสำหรับการเปลี่ยนโมเดลภาษาขนาดใหญ่ (LLMs) ให้กลายเป็นเอเจนต์ที่สามารถเรียกใช้เครื่องมือภายนอกผ่านลูปที่วัดผลได้และมีความปลอดภัย ด้วยการกำหนด "จุดเชื่อมต่อ" (plug) ร่วมกันระหว่างโฮสต์ที่รองรับ MCP และเซิร์ฟเวอร์ MCP ใดๆ โปรโตคอลนี้ช่วยให้นักพัฒนาสามารถแทนที่โค้ดที่เขียนขึ้นเฉพาะกิจด้วยเวิร์กโฟลว์ที่คาดการณ์ได้และตรวจสอบได้
ทำไม LLMs ถึงต้องการโปรโตคอล
LLM ทำหน้าที่เพียงแค่ทำนายโทเคนถัดไปของข้อความจากข้อมูลที่ใช้ฝึกฝนเท่านั้น มันไม่สามารถดึงข้อมูลใหม่ๆ เขียนลงฐานข้อมูล หรือเรียกใช้ API ภายนอกได้หากไม่มีตรรกะเพิ่มเติม นักพัฒนาได้สร้าง "เอเจนต์" (agents) ที่ห่อหุ้มโมเดลไว้ในลูป: โมเดลจะร้องขอเครื่องมือ เครื่องมือจะทำงาน ผลลัพธ์จะถูกส่งกลับมา และโมเดลจะตัดสินใจว่าจะดำเนินการต่อหรือตอบผู้ใช้
ลูปดังกล่าวสามารถทำงานได้ แต่หากไม่มีชุดกฎเกณฑ์ที่เป็นมาตรฐาน ก็อาจทำให้เกิดกระบวนการที่ควบคุมไม่ได้หรือทำให้ระบบเสี่ยงต่อการถูกเรียกใช้งานโดยไม่ตั้งใจ เครื่องมือใหม่แต่ละอย่างต้องมีการเชื่อมต่อแบบกำหนดเอง (custom integration) ทำให้ยากต่อการติดตามการใช้งานโทเคน ขีดจำกัดงบประมาณ หรือนโยบายความปลอดภัยในแต่ละโปรเจกต์
MCP เข้ามาเติมเต็มช่องว่างเหล่านั้นด้วยการกำหนดโครงสร้างของลูปและข้อมูลที่ต้องเดินทางผ่านลูปนั้นให้เป็นรูปแบบมาตรฐาน (codifying)
โครงสร้างสองส่วนของ MCP Agent
MCP แยกเอเจนต์ออกเป็น definition (คำจำกัดความ) – ซึ่งเป็นเทมเพลตที่อธิบายว่าเอเจนต์สามารถทำอะไรได้บ้าง – และ instance (อินสแตนซ์) – ซึ่งเป็นการทำงานจริงตามคำขอของผู้ใช้
Agent Definition (เทมเพลต)
- Host loop – ผู้ประสานงาน (orchestrator) ที่ขับเคลื่อนวงจรการถาม-ใช้เครื่องมือ-อ่าน-ตัดสินใจ
- System context – บุคลิกภาพ (persona) และคำสั่งระดับสูงที่กำหนดพฤติกรรมของโมเดล
- MCP server set – แคตตาล็อกของแหล่งที่มาเครื่องมือที่มีอยู่ซึ่งโฮสต์อาจเรียกใช้
- Tool policy – รายการที่ระบุอย่างชัดเจนว่าเครื่องมือใดบ้างที่ได้รับอนุญาตสำหรับเอเจนต์นั้นๆ
- LLM selection – โมเดลเฉพาะเจาะจงที่จะสร้างการใช้เหตุผลในรูปแบบข้อความ
- Termination limits – จำนวนรอบสูงสุดและงบประมาณโทเคนเพื่อป้องกันลูปที่ไม่สิ้นสุด
- Task contract – คำอธิบายที่เป็นทางการว่าเอเจนต์รับอินพุตแบบใดและคืนค่าผลลัพธ์ในรูปแบบใด
- Context strategy – กฎเกณฑ์ในการตัดหรือสรุปประวัติการสนทนาเพื่อให้ยังคงอยู่ในขีดจำกัดของโทเคน
Agent Instance (การทำงานจริง)
- Goal – คำขอของผู้ใช้ที่เป็นจุดเริ่มต้นของลูป
- Working context – ประวัติที่สะสมมา รวมถึงผลลัพธ์จากเครื่องมือก่อนหน้า
- Credentials – โทเคนหรือชุดสิทธิ์ที่จำเป็นในการเรียกใช้เครื่องมือที่เลือก
- Consumed budget – ยอดรวมของโทเคนที่ใช้ไปและขั้นตอนที่ดำเนินการไปแล้ว
องค์ประกอบเหล่านี้แสดงให้เห็นทั้งสิ่งที่เอเจนต์ได้รับอนุญาตให้ทำ และสิ่งที่มันกำลังทำอยู่ในขณะนั้น
MCP เปลี่ยนแปลงกระบวนการพัฒนาอย่างไร
ก่อนจะมี MCP นักพัฒนาที่ต้องการให้ LLM สอบถาม weather API, ดึงข้อมูลจากฐานข้อมูล และจากนั้นจึงร่างรายงาน ต้องเขียนโค้ดเชื่อมต่อ (glue code) เฉพาะสำหรับแต่ละ endpoint โค้ดเหล่านั้นมักจะซ่อนการเรียกใช้เครื่องมือไว้ภายในพรอมต์ (prompt) ของโมเดล ทำให้ไม่สามารถมองเห็นได้ว่าคำขอใดเป็นตัวกระตุ้นการตอบสนองใด
ด้วย MCP โฮสต์จะส่งการสนทนาไปยังโมเดล ตรวจสอบคำขอเครื่องมือที่โมเดลสร้างขึ้น ส่งคำสั่งไปยังเครื่องมือด้วยตัวเอง แล้วจึงส่งผลลัพธ์กลับมา โค้ดส่วนเกินนั้นมีเพียงเล็กน้อย แต่ความสามารถในการมองเห็น (visibility) นั้นสมบูรณ์แบบ: ทุกการรับส่งข้อมูล (round-trip) และทุกโทเคนจะถูกบันทึกไว้
ความสามารถในการมองเห็นนี้ให้ประโยชน์ในทางปฏิบัติสองประการ:
- การวัดต้นทุน (Cost measurement) – นักพัฒนาสามารถเปรียบเทียบโมเดลที่ราคาถูกกว่ากับโมเดลที่ใหญ่กว่าในงานเดียวกัน โดยเห็นได้ชัดเจนว่าแต่ละรอบการทำงานใช้โทเคนไปเท่าใด
- การตรวจสอบความปลอดภัย (Security auditing) – นโยบายเครื่องมือและการตรวจสอบสิทธิ์จะเกิดขึ้นภายนอกโมเดล เพื่อป้องกันไม่ให้โมเดลเรียกใช้บริการที่ไม่ได้รับอนุญาตอย่างเงียบๆ
สิ่งที่ยังไม่มีการกำหนด
MCP ระบุรูปแบบของการสนทนาและเมทาดาตา (metadata) ที่มาพร้อมกับการสนทนา แต่ไม่ได้กำหนดว่าเครื่องมือจะถูกนำไปใช้งานภายในอย่างไร
สิ่งที่ควรจับตามองต่อไป
- Metric suites – บทความถัดไปในซีรีส์นี้สัญญาว่าจะนำเสนอรายการตรวจสอบตัวเลขที่นักพัฒนาควรติดตาม (การใช้โทเคน, จำนวนรอบการทำงาน, ความหน่วงต่อเครื่องมือ) ตัวชี้วัดเหล่านี้จะกลายเป็นมาตรฐานการตรวจสอบสุขภาพ (health checks) สำหรับเอเจนต์ที่ใช้ MCP
บทสรุป
Model Context Protocol มอบโครงสร้างที่ใช้ร่วมกันและตรวจสอบได้ให้กับเอเจนต์ LLM โดยแยกสิ่งที่เอเจนต์สามารถทำได้ออกจากสิ่งที่มันกำลังทำอยู่ในขณะใดขณะหนึ่ง ด้วยการเปลี่ยนการเรียกใช้เครื่องมือที่คลุมเครือให้เป็นลูปที่โปร่งใส MCP จึงทำให้การวัดผลเหล่านี้เป็นไปได้
