Tools, Resources และ Prompts: 3 ส่วนประกอบของ MCP

Plants.work · · upskilling
Tools, Resources และ Prompts: 3 ส่วนประกอบของ MCP

เข้าใจว่า Tools, Resources และ Prompts ต่างกันยังไง ใครเป็นคนควบคุมแต่ละส่วน และออกแบบ MCP Server ให้ใช้ทั้ง 3 อย่างร่วมกัน

หลายคนสร้าง MCP Server แล้วยัดทุกอย่างเป็น Tool หมด ทั้งการค้นหา การอ่านเอกสาร และคำสั่งสำเร็จรูป ผลคือโมเดลต้องเดาเยอะ ผู้ใช้คุมอะไรไม่ได้ และบริบทเต็มไปด้วยข้อมูลที่ไม่จำเป็น สาเหตุคือยังไม่เห็นว่า MCP แบ่งความสามารถของ Server ไว้ 3 แบบโดยตั้งใจ

3 ส่วนประกอบของ MCP Server คืออะไร

เอกสาร Server Concepts ของ MCP แบ่งไว้ชัดเจน และจุดที่สำคัญที่สุดคือ "ใครเป็นคนควบคุม"

Tools: ให้ AI ลงมือทำ

Tool คือการกระทำที่มี input และ output ชัดเจน เช่น ค้นเที่ยวบิน ส่งอีเมล เขียนข้อมูลลงฐานข้อมูล แต่ละ tool ประกาศ input ด้วย JSON Schema และโมเดลค้นพบได้เองผ่านคำขอรายการเครื่องมือ

กลไกที่ควรรู้

Resources: ให้ข้อมูลเป็นบริบท

Resource คือข้อมูลแบบ passive เช่น เนื้อหาไฟล์ schema ฐานข้อมูล หรือเอกสาร API แต่ละ resource มี URI ของตัวเองและระบุ MIME type

2 รูปแบบที่ใช้บ่อย

ข้อดีคือแอปเป็นผู้ตัดสินว่าจะส่งข้อมูลส่วนไหนให้โมเดล จะเลือกบางส่วน ค้นด้วย embedding หรือส่งทั้งหมดก็ได้ จึงคุมบริบทได้ดีกว่าให้โมเดลเรียก tool อ่านไฟล์เอง

Prompts: ทางลัดที่ผู้ใช้เรียกเอง

Prompt คือเทมเพลตที่มีช่องให้กรอก ผู้ใช้ต้องเลือกเรียกเองเสมอ ไม่ทำงานอัตโนมัติ แอปมักแสดงเป็น slash command เช่น พิมพ์ "/" แล้วเลือกคำสั่ง ข้อดีคือทำให้งานที่ทำซ้ำได้ผลลัพธ์สม่ำเสมอ และสอนผู้ใช้ว่าควรใช้ Server นี้อย่างไร

ตัวอย่าง: บริษัททัวร์ในเชียงใหม่

บริษัททัวร์อยากให้พนักงานขายใช้ AI วางโปรแกรมให้ลูกค้า จึงออกแบบ Server แบบนี้

พนักงานเรียก "/วางทริป" กรอก 3 วัน งบ 15,000 บาท ชอบธรรมชาติ แอปแนบ resource แพ็กเกจที่เกี่ยวข้อง โมเดลเรียก tool เช็กที่นั่งว่าง แล้วร่างใบเสนอราคาให้ตรวจก่อนส่งลูกค้า

ข้อควรระวัง

Tools ให้ AI ลงมือ Resources ให้ AI รู้ Prompts ให้คนกำหนดทิศทาง

เริ่มต้นยังไง

  1. ลิสต์สิ่งที่อยากให้ Server ทำ แล้วแยกว่าอะไรคือ "การกระทำ" อะไรคือ "ข้อมูล" อะไรคือ "งานที่ทำซ้ำ"
  2. การกระทำเป็น Tools ข้อมูลอ้างอิงเป็น Resources งานซ้ำเป็น Prompts
  3. เขียนคำอธิบายของแต่ละส่วนให้คนที่ไม่รู้จักระบบอ่านแล้วเข้าใจ
  4. ทดสอบใน Client ที่ทีมใช้จริง ว่าแสดงทั้ง 3 ส่วนอย่างไร

ถ้ายังไม่เคยสร้าง Server เลย อ่าน สร้าง MCP Server ตัวแรก ก่อน แล้วลองลงมือกับคอร์ส ลองใช้ MCP เชื่อม AI กับเครื่องมือจริง บน Plants.work Learn