•
22 ก.ย. เวลา 04:32 • การศึกษา
Protocol By Shoper Gamer

MCP Protocol คืออะไร

โดย
ในยุคที่ AI Agents กำลังกลายเป็นผู้ช่วยสำคัญในทุกวงการ ปัญหาหนึ่งที่นักพัฒนาต้องเจอคือ การเชื่อมต่อ AI เข้ากับเครื่องมือและแหล่งข้อมูลต่างๆ นั้นยุ่งยากและต้องเขียนโค้ดเฉพาะทางสำหรับแต่ละเครื่องมือ ทุกครั้งที่อยากให้ AI เข้าถึงฐานข้อมูลใหม่หรือเรียกใช้ API ใหม่ ก็ต้องเขียนส่วนเชื่อมต่อใหม่ทั้งหมด
ปัญหานี้คล้ายกับยุคก่อนที่ USB จะเกิดขึ้น ทุกอุปกรณ์มีพอร์ตเป็นของตัวเอง ต้องมีสายเฉพาะทางสารพัดแบบ แต่เมื่อ USB กลายเป็นมาตรฐานเดียวกัน ทุกอย่างก็ง่ายขึ้นฉันใด MCP Protocol ก็กำลังทำแบบเดียวกันกับโลกของ AI ฉันนั้นครับ
MCP (Model Context Protocol) คือมาตรฐานเปิดที่ถูกพัฒนาขึ้นเพื่อทำให้ AI Agents สามารถเชื่อมต่อกับเครื่องมือ แหล่งข้อมูล และระบบต่างๆ ได้ในรูปแบบเดียวกัน โดยไม่ต้องเขียนส่วนเชื่อมต่อใหม่ทุกครั้งที่เปลี่ยนเครื่องมือหรือโมเดล
- MCP Protocol Logo -
  • ★
    ​MCP Protocol คืออะไร?
MCP Protocol หรือ Model Context Protocol คือมาตรฐานเปิด (Open Standard) สำหรับการเชื่อมต่อระหว่าง AI Agent (หรือ LLM) กับเครื่องมือภายนอก (Tools) และแหล่งข้อมูล (Data Sources)
ถ้าจะให้อธิบายง่ายที่สุด มันคือ ภาษากลาง ที่ทำให้ AI พูดคุยกับทุกเครื่องมือได้โดยไม่ต้องเรียนรู้ภาษาใหม่ของแต่ละเครื่องมือ เหมือนกับที่ USB-C ทำให้เราชาร์จโทรศัพท์ได้ทุกยี่ห้อด้วยสายเดียว
ก่อนมี MCP การเชื่อมต่อ AI กับเครื่องมือต้องเขียนโค้ดเฉพาะสำหรับแต่ละคู่ (เช่น ChatGPT + GitHub, ChatGPT + Slack, Claude + Database) แต่เมื่อใช้ MCP เราสามารถสร้าง MCP Server ครั้งเดียว แล้ว AI ตัวไหนก็ตามที่รองรับ MCP ก็สามารถใช้งานได้ทันที
สรุปสั้นๆ: MCP Protocol คือมาตรฐานเปิดสำหรับเชื่อมต่อ AI กับเครื่องมือและข้อมูลภายนอก ช่วยให้สามารถสร้าง Integration ครั้งเดียวแล้วใช้ได้กับ AI ทุกตัวที่รองรับ ลดความซับซ้อนและเวลาพัฒนาลงอย่างมหาศาล
  • ★
    ​MCP Protocol ทำงานอย่างไร?
หัวใจของ MCP คือสถาปัตยกรรมแบบ Client-Server ที่แยกส่วนการทำงานออกจากกันอย่างชัดเจนดังนี้ครับ
⭐ สถาปัตยกรรม Client-Server MCP ประกอบด้วย 3 ส่วนหลัก
1) MCP Host: แอปพลิเคชันที่ AI ทำงานอยู่ เช่น Claude Desktop, IDE หรือ AI Agent ที่เราสร้างขึ้น
2) MCP Client: ตัวกลางที่อยู่ใน Host ทำหน้าที่เชื่อมต่อกับ MCP Server
3) MCP Server: โปรแกรมที่ให้บริการเครื่องมือหรือข้อมูล เช่น Server สำหรับ GitHub, Slack หรือฐานข้อมูล
⭐ การสื่อสารแบบ JSON-RPC: MCP ใช้ JSON-RPC 2.0 เป็นโปรโตคอลในการสื่อสารระหว่าง Client และ Server ทำให้เข้าใจง่ายและรองรับได้หลายภาษา
⚪ Transport Layer ที่ยืดหยุ่น: MCP รองรับการสื่อสารหลายรูปแบบ
⚪ stdio: สำหรับ Server ที่รันบนเครื่องเดียวกัน
⚪ HTTP + SSE: สำหรับ Server ที่อยู่บนเครือข่าย
⚪ Streamable HTTP: สำหรับการเชื่อมต่อแบบ Modern Protocol ในปัจจุบัน
⭐ 3 ฟีเจอร์หลักของ MCP Server
1) Tools: ฟังก์ชันที่ AI สามารถเรียกใช้ได้ เช่น การส่งอีเมล หรือการ Query ฐานข้อมูล
2) Resources: ข้อมูลที่ AI สามารถอ่านได้ เช่น ไฟล์ หรือเอกสารต่างๆ
3) Prompts: เทมเพลตคำสั่งสำเร็จรูปที่ Server เตรียมไว้ให้
  • ★
    ​ประเภทของ MCP Protocol
MCP สามารถแบ่งประเภทได้ตามมุมมองและการใช้งานดังนี้ครับ
🗣️ จำแนกตาม Transport (การสื่อสาร):
⚪ Local MCP Server (stdio): รันบนเครื่องเดียวกับ Host เหมาะสำหรับเครื่องมือที่ต้องการเข้าถึงไฟล์ในเครื่อง
⚪ Remote MCP Server (HTTP/SSE): รันบนเซิร์ฟเวอร์ระยะไกล เหมาะสำหรับ SaaS หรือเครื่องมือที่ใช้ร่วมกัน
⚪ Streamable HTTP: Transport รุ่นใหม่ที่รองรับทั้ง Request-Response และ Streaming ในตัวเดียว
☁️ จำแนกตามขอบเขตการให้บริการ:
⚪ Official MCP Servers: พัฒนาโดยเจ้าของเครื่องมือนั้นๆ เช่น GitHub, Slack หรือ Notion
⚪ Community MCP Servers: พัฒนาและแบ่งปันโดยชุมชน Open Source
⚪ Custom MCP Servers: สร้างขึ้นเองเพื่อตอบโจทย์ความต้องการเฉพาะภายในองค์กร
  • ★
    ​ประโยชน์ของ MCP Protocol
✅ ลดความซับซ้อน: สร้าง MCP Server ครั้งเดียว ใช้ได้กับ AI ทุกตัวที่รองรับ ลดการเขียนโค้ดซ้ำซ้อน
✅ เป็นมาตรฐานเปิด: ไม่ผูกขาดกับบริษัทใดบริษัทหนึ่ง ทำให้เกิด Ecosystem ที่กว้างขวาง
✅ แยกส่วนการทำงานชัดเจน: Host, Client และ Server แยกกัน ทำให้พัฒนาและบำรุงรักษาง่าย
✅ ยืดหยุ่นสูง: รองรับทั้ง Local และ Remote พร้อมครอบคลุมทั้ง Tools, Resources และ Prompts
✅ Community แข็งแกร่ง: มี MCP Server ให้เลือกใช้มากมาย ทั้งจากตัวแทน Official และการพัฒนาจากกลุ่ม Community
  • ★
    ​ควรมีความรู้พื้นฐานอะไรบ้าง?
ก่อนเริ่มต้นใช้งาน MCP Protocol ควรมีความรู้พื้นฐานเหล่านี้ครับ
⚪ พื้นฐาน API และ JSON-RPC: เข้าใจการทำงานของ API และรูปแบบการส่งข้อมูลแบบ JSON-RPC
⚪ พื้นฐาน AI Agents: เข้าใจแนวคิดว่า AI Agent คืออะไร และมีกระบวนการทำงานอย่างไร
⚪ พื้นฐาน Python หรือ TypeScript: สำหรับเขียน MCP Server และ Client
⚪ พื้นฐาน Command Line: สำหรับการรันและจัดการ MCP Server แบบ stdio
⚪ พื้นฐาน Networking: เข้าใจหลักการของ HTTP, SSE และ การเชื่อมต่อเครือข่าย
  • ★
    ​MCP Protocol vs API ต่างกันอย่างไร?
แม้ว่าทั้งคู่จะใช้ในการเชื่อมต่อระบบเหมือนกัน แต่ MCP และ API ทั่วไปมีความแตกต่างกันอย่างชัดเจนดังนี้ครับ
🔑 จุดประสงค์การใช้งาน: MCP ถูกออกแบบมาเพื่อเชื่อมต่อ AI กับเครื่องมือโดยเฉพาะ ส่วน API ทั่วไปใช้สำหรับเชื่อมต่อระบบกับระบบ
🧑‍🦱 ผู้เรียกใช้งานหลัก: MCP มี AI Agent เป็นผู้เรียกใช้หลัก ส่วน API ทั่วไปมีแอปพลิเคชันหรือโปรแกรมเมอร์เป็นผู้เรียกใช้
🔗 รูปแบบโปรโตคอล: MCP ใช้มาตรฐานเดียวคือ JSON-RPC ส่วน API ทั่วไปมีความหลากหลาย เช่น REST, GraphQL หรือ gRPC
🕵️ การค้นหาเครื่องมือ (Discovery): MCP ให้ AI ค้นพบ Tools และ Resources ได้เองโดยอัตโนมัติ ส่วน API ทั่วไปต้องอาศัยการอ่าน Documentation
📦 การขยายระบบ: MCP ช่วยให้เพิ่ม Tool ใหม่ได้โดยไม่ต้องแก้ไขฝั่ง Client ส่วน API ทั่วไปต้องแก้ไขโค้ดเมื่อโครงสร้าง API เปลี่ยนแปลง
🧑‍💻 การจัดการ Context: MCP มีระบบ Built-in Context Management ในตัว ส่วน API ทั่วไปต้องเขียนโค้ดจัดการ Context เองทั้งหมด
🛡️ ระบบความปลอดภัย: MCP มาพร้อม Permission Model ในตัว ส่วน API ทั่วไปผู้พัฒนาต้องออกแบบระบบความปลอดภัยเอง
  • ★
    ​ตัวอย่างการใช้งาน MCP Protocol
⚪ AI Assistant ที่เข้าถึงข้อมูลบริษัท: สร้าง MCP Server สำหรับฐานข้อมูลภายใน เพื่อให้ AI ค้นหาและตอบคำถามจากข้อมูลจริง
⚪ GitHub MCP Server: ให้ AI จัดการ Issues, Pull Requests และตรวจสอบโค้ดผ่าน GitHub ได้โดยตรง
⚪ IDE ที่มี AI ช่วยเขียนโค้ด: ให้ AI เข้าถึงไฟล์โปรเจกต์, Terminal และ Git ผ่าน MCP
⚪ ระบบ Automation: ให้ AI เรียกใช้เครื่องมือต่างๆ เช่น Slack, Notion หรือ Google Calendar ผ่าน MCP Server เดียวกัน
  • ★
    ​ตัวอย่างการเริ่มต้นใช้งาน MCP Protocol ง่ายๆ
1) ติดตั้ง MCP SDK:
Bash
npm install @modelcontextprotocol/sdk
2) สร้าง MCP Server อย่างง่าย:
JavaScript
import { Server } from "@modelcontextprotocol/sdk/server/index.js";
import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
const server = new Server(
{ name: "my-server", version: "1.0.0" },
{ capabilities: { tools: {} } }
);
// กำหนด Tool
server.setRequestHandler("tools/list", async () => ({
tools: [{
name: "greet",
description: "ทักทายผู้ใช้",
inputSchema: {
type: "object",
properties: { name: { type: "string" } }
}
}]
}));
server.setRequestHandler("tools/call", async (request) => {
if (request.params.name === "greet") {
return { content: [{ type: "text", text: `สวัสดี ${request.params.arguments.name}!` }] };
}
});
// เริ่ม Server
const transport = new StdioServerTransport();
await server.connect(transport);
3) ทดสอบด้วย MCP Inspector:
Bash
npx @modelcontextprotocol/inspector node server.js
✏️ Shoper Gamer
  • ✓
    ​[Shoper Gamer] Protocol คืออะไร 👇
  • ✓
    ​[Shoper Gamer] API คืออะไร 👇
  • ✓
    ​[Shoper Gamer] Agentic Ai คืออะไร 👇
Credit :
👇
  • ●
    ​https://cloud.google.com/discover/what-is-model-context-protocol
  • ●
    ​https://www.anthropic.com/news/model-context-protocol
  • ●
    ​https://www.truefoundry.com/blog/mcp-vs-api
  • ●
    ​https://mcpmanager.ai/blog/mcp-vs-api/

ดูเพิ่มเติมในซีรีส์

โฆษณา