TL;DR (สรุปสั้นๆ)
Model Context Protocol (MCP) เป็นมาตรฐานสำหรับการเชื่อมต่อผู้ช่วย AI เข้ากับแหล่งข้อมูลภายนอกและ API ต่างๆ ช่วยให้ Claude Desktop, Cursor และเครื่องมือ AI อื่นๆ เข้าถึง API ของคุณได้อย่างปลอดภัย Modern PetstoreAPI ใช้ MCP เพื่อให้ผู้ช่วย AI สามารถค้นหาสัตว์เลี้ยง สั่งซื้อ และจัดการสินค้าคงคลังผ่านภาษามนุษย์ปกติได้
บทนำ
คุณถาม Claude Desktop ว่า: “แสดงแมวที่พร้อมขายราคาต่ำกว่า $300” Claude ตอบว่า: “ฉันไม่สามารถเข้าถึงข้อมูลร้านขายสัตว์เลี้ยงได้” คุณจำเป็นต้องคัดลอก/วางจาก API ของคุณ ทำให้ขั้นตอนการทำงานติดขัด
ด้วย MCP (Model Context Protocol) Claude สามารถเข้าถึง API ของคุณได้โดยตรง คุณถามคำถามเดิม และ Claude จะสอบถาม PetstoreAPI, กรองผลลัพธ์ และแสดงแมวที่พร้อมขายราคาต่ำกว่า $300 ให้คุณเห็น
Modern PetstoreAPI ใช้ MCP ทำให้ผู้ช่วย AI สามารถโต้ตอบกับร้านขายสัตว์เลี้ยงผ่านภาษามนุษย์ปกติได้
หากคุณกำลังสร้าง API สำหรับการผสานรวม AI, Apidog ช่วยคุณทดสอบการใช้งาน MCP และตรวจสอบการโต้ตอบของผู้ช่วย AI
MCP คืออะไร?
MCP เป็นโปรโตคอลที่ Anthropic สร้างขึ้นเพื่อเชื่อมต่อผู้ช่วย AI กับแหล่งข้อมูลภายนอก
ปัญหาที่ MCP แก้ไข
ผู้ช่วย AI นั้นทรงพลัง แต่ถูกแยกออกจากกัน พวกเขาไม่สามารถ:
- เข้าถึง API ภายในของบริษัทคุณ
- สอบถามฐานข้อมูลของคุณ
- อ่านไฟล์จากระบบไฟล์ของคุณ
- โต้ตอบกับบริการภายนอก
MCP นำเสนอวิธีมาตรฐานสำหรับผู้ช่วย AI ในการเชื่อมต่อกับทรัพยากรเหล่านี้ได้อย่างปลอดภัย
ส่วนประกอบของ MCP
1. MCP Server - เปิดเผยทรัพยากรและเครื่องมือให้กับผู้ช่วย AI
2. MCP Client - ผู้ช่วย AI (Claude Desktop, Cursor, เป็นต้น)
3. Resources - ข้อมูลที่ AI สามารถอ่านได้ (ไฟล์, บันทึกฐานข้อมูล, การตอบสนองของ API)
4. Tools - การกระทำที่ AI สามารถทำได้ (สร้างคำสั่งซื้อ, อัปเดตสัตว์เลี้ยง, ค้นหาสินค้าคงคลัง)
สถาปัตยกรรม MCP
ผู้ช่วย AI (Claude Desktop)
↓ โปรโตคอล MCP
MCP Server (เซิร์ฟเวอร์ MCP ของ PetstoreAPI)
↓ API ภายใน
PetstoreAPI Backend
↓
ฐานข้อมูล
MCP ทำงานอย่างไร
1. การลงทะเบียนเซิร์ฟเวอร์
กำหนดค่า Claude Desktop เพื่อเชื่อมต่อกับเซิร์ฟเวอร์ MCP:
{
"mcpServers": {
"petstore": {
"command": "node",
"args": ["/path/to/petstore-mcp-server.js"],
"env": {
"PETSTORE_API_KEY": "your-api-key"
}
}
}
}
2. การค้นหาเครื่องมือ
ผู้ช่วย AI ถามว่า: “มีเครื่องมืออะไรบ้าง?”
เซิร์ฟเวอร์ MCP ตอบกลับ:
{
"tools": [
{
"name": "search_pets",
"description": "ค้นหาสัตว์เลี้ยงตามสายพันธุ์ สถานะ และราคา",
"inputSchema": {
"type": "object",
"properties": {
"species": {"type": "string", "enum": ["CAT", "DOG"]},
"maxPrice": {"type": "number"},
"status": {"type": "string", "enum": ["AVAILABLE", "ADOPTED"]}
}
}
},
{
"name": "create_order",
"description": "สั่งซื้อสัตว์เลี้ยง",
"inputSchema": {
"type": "object",
"properties": {
"petId": {"type": "string"},
"userId": {"type": "string"}
},
"required": ["petId", "userId"]
}
}
]
}
3. การดำเนินการเครื่องมือ
ผู้ใช้ถามว่า: “แสดงแมวที่พร้อมขายราคาต่ำกว่า $300”
ผู้ช่วย AI เรียกใช้:
{
"tool": "search_pets",
"arguments": {
"species": "CAT",
"status": "AVAILABLE",
"maxPrice": 300
}
}
เซิร์ฟเวอร์ MCP ดำเนินการ:
async function search_pets({ species, status, maxPrice }) {
const response = await fetch(
`https://petstoreapi.com/v1/pets?species=${species}&status=${status}&maxPrice=${maxPrice}`
);
return await response.json();
}
คืนค่าผลลัพธ์ให้กับ AI ซึ่งจะจัดรูปแบบให้ผู้ใช้
MCP เทียบกับ API แบบดั้งเดิม
| คุณสมบัติ | API แบบดั้งเดิม | MCP |
|---|---|---|
| การเข้าถึง | HTTP โดยตรง | ผ่านผู้ช่วย AI |
| อินเทอร์เฟซ | REST/GraphQL | ภาษามนุษย์ปกติ |
| การยืนยันตัวตน | คีย์ API, OAuth | เซิร์ฟเวอร์ MCP จัดการการยืนยันตัวตน |
| การค้นหา | เอกสาร OpenAPI | สคีมาเครื่องมือ |
| การใช้งาน | โค้ด/curl | การสนทนา |
| การจัดการข้อผิดพลาด | รหัสสถานะ HTTP | AI ตีความข้อผิดพลาด |
ตัวอย่างเปรียบเทียบ
API แบบดั้งเดิม:
curl -H "Authorization: Bearer token" \
"https://petstoreapi.com/v1/pets?species=CAT&maxPrice=300"
MCP:
ผู้ใช้: "แสดงแมวที่พร้อมขายราคาต่ำกว่า $300"
AI: [เรียกใช้เครื่องมือ search_pets, จัดรูปแบบผลลัพธ์]
"นี่คือแมวพร้อมขาย 5 ตัว ราคาต่ำกว่า $300:
1. Fluffy - $250
2. Whiskers - $280
..."
Modern PetstoreAPI ใช้ MCP อย่างไร
Modern PetstoreAPI มีเซิร์ฟเวอร์ MCP
เครื่องมือที่ใช้ได้
1. search_pets - ค้นหาสัตว์เลี้ยงตามเกณฑ์ 2. get_pet - ดูรายละเอียดสัตว์เลี้ยง 3. create_order - ทำการสั่งซื้อ 4. get_inventory - ตรวจสอบสินค้าคงคลัง 5. update_pet_status - อัปเดตสถานะของสัตว์เลี้ยง
ตัวอย่าง: ค้นหาและสั่งซื้อ
ผู้ใช้: “หาหมาให้ฉันตัวหนึ่งราคาต่ำกว่า $500 และสั่งซื้อให้หน่อย”
ขั้นตอนการทำงานของ AI:
1. เรียกใช้ search_pets({species: "DOG", maxPrice: 500})
2. แสดงผลลัพธ์ให้ผู้ใช้
3. ผู้ใช้ยืนยัน: "สั่งซื้อ Labrador"
4. เรียกใช้ create_order({petId: "019b4132", userId: "user-456"})
5. ยืนยันคำสั่งซื้อ
โค้ดเซิร์ฟเวอร์ MCP
import { Server } from '@modelcontextprotocol/sdk/server/index.js';
import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
const server = new Server({
name: 'petstore-mcp',
version: '1.0.0'
}, {
capabilities: {
tools: {}
}
});
server.setRequestHandler('tools/list', async () => ({
tools: [
{
name: 'search_pets',
description: 'Search for pets',
inputSchema: {
type: 'object',
properties: {
species: { type: 'string' },
maxPrice: { type: 'number' }
}
}
}
]
}));
server.setRequestHandler('tools/call', async (request) => {
const { name, arguments: args } = request.params;
if (name === 'search_pets') {
const response = await fetch(
`https://petstoreapi.com/v1/pets?${new URLSearchParams(args)}`
);
return { content: [{ type: 'text', text: JSON.stringify(await response.json()) }] };
}
});
const transport = new StdioServerTransport();
await server.connect(transport);
การทดสอบ MCP ด้วย Apidog
Apidog ช่วยทดสอบการใช้งาน MCP ได้ดังนี้:
- ทดสอบว่า API พื้นฐานทำงานถูกต้อง
- ตรวจสอบสคีมาเครื่องมือว่าตรงกับสัญญา API
- ทดสอบการจัดการข้อผิดพลาด
- ยืนยันการไหลของการยืนยันตัวตน
ทำไม MCP จึงสำคัญ
1. API ที่เป็นมิตรกับ AI
API สามารถเข้าถึงได้ผ่านภาษามนุษย์ปกติ ผู้ใช้ที่ไม่ใช่สายเทคนิคสามารถโต้ตอบกับ API ของคุณผ่านผู้ช่วย AI ได้
2. การสร้างมาตรฐาน
MCP กำลังกลายเป็นมาตรฐานสำหรับการผสานรวม AI-API รองรับครั้งเดียว ใช้งานได้กับไคลเอ็นต์ MCP ทั้งหมด
3. ความปลอดภัย
เซิร์ฟเวอร์ MCP จัดการการยืนยันตัวตน ผู้ช่วย AI ไม่จำเป็นต้องเข้าถึงคีย์ API โดยตรง
4. ความสามารถในการประกอบ
ผู้ช่วย AI สามารถรวมเซิร์ฟเวอร์ MCP หลายตัวเข้าด้วยกัน สร้างเวิร์กโฟลว์ข้ามบริการได้
สรุป
MCP เป็นสะพานเชื่อมระหว่างผู้ช่วย AI และ API ต่างๆ Modern PetstoreAPI ใช้ MCP ทำให้ Claude Desktop และเครื่องมือ AI อื่นๆ สามารถโต้ตอบกับร้านขายสัตว์เลี้ยงผ่านภาษามนุษย์ปกติได้
ประเด็นสำคัญ:
- MCP เชื่อมต่อผู้ช่วย AI กับ API
- เครื่องมือกำหนดสิ่งที่ AI สามารถทำได้
- ภาษามนุษย์ปกติเข้ามาแทนที่การเรียกใช้ API
- Modern PetstoreAPI แสดงการใช้งาน MCP
คำถามที่พบบ่อย
ผู้ช่วย AI ใดบ้างที่รองรับ MCP?
Claude Desktop, Cursor และเครื่องมืออื่นๆ ที่ขับเคลื่อนโดย Anthropic การรองรับกำลังเพิ่มขึ้น
MCP ปลอดภัยหรือไม่?
ใช่ เซิร์ฟเวอร์ MCP จัดการการยืนยันตัวตน ผู้ช่วย AI ไม่เห็นคีย์ API
ฉันสามารถใช้ MCP กับ API ที่มีอยู่แล้วได้หรือไม่?
ได้ คุณสามารถสร้างเซิร์ฟเวอร์ MCP ที่ครอบ API ที่มีอยู่ของคุณได้
MCP จะเข้ามาแทนที่ REST API หรือไม่?
ไม่ MCP มีไว้สำหรับการเข้าถึงของผู้ช่วย AI ส่วน REST API ยังคงมีไว้สำหรับการเข้าถึงโดยการเขียนโปรแกรมโดยตรง
ฉันจะทดสอบเครื่องมือ MCP ได้อย่างไร?
ใช้ Apidog เพื่อทดสอบ API พื้นฐาน จากนั้นทดสอบเครื่องมือ MCP ด้วย Claude Desktop
