คู่มืออ้างอิงการตั้งค่าไคลเอนต์ MCP
ไคลเอนต์ MCP แต่ละตัวอ่านรายการเซิร์ฟเวอร์จากตำแหน่งของตัวเอง โดยใช้คีย์ของตัวเอง และบางครั้งก็ใช้รูปแบบเฉพาะของตัวเอง ตารางนี้แสดงตำแหน่งที่ไคลเอนต์แต่ละตัวค้นหา รูปแบบข้อมูลที่ต้องการ และรองรับ OAuth สำหรับเซิร์ฟเวอร์ระยะไกลหรือไม่
| ไคลเอนต์ | ไฟล์การตั้งค่า | คีย์ระดับบนสุด | รูปแบบ | OAuth ระยะไกล | เพิ่มผ่าน CLI |
|---|---|---|---|---|---|
| Claude Desktop | ~/Library/Application Support/Claude/claude_desktop_config.json | mcpServers | json | ใช่ | ไม่ |
| Claude Code | .mcp.json | mcpServers | json | ใช่ | ใช่ |
| Cursor | .cursor/mcp.json | mcpServers | json | ใช่ | ไม่ |
| VS Code (GitHub Copilot) | .vscode/mcp.json (key 'servers') or portable .mcp.json (key 'mcpServers') | servers | json | ใช่ | ใช่ |
| Windsurf / Devin Desktop | .devin/mcp_config.json (Devin CLI / Devin Local project scope) | mcpServers | json | ใช่ | ใช่ |
| Zed | ~/.config/zed/settings.json | context_servers | json | ใช่ | ไม่ |
| OpenAI Codex CLI | .codex/config.toml (trusted projects only) | mcp_servers | toml | ใช่ | ใช่ |
| Gemini CLI | .gemini/settings.json | mcpServers | json | ใช่ | ใช่ |
| ChatGPT | ตั้งค่าได้จากหน้าจอ Settings เท่านั้น | — | — | ใช่ | ไม่ |
| OpenClaw | ~/.openclaw/openclaw.json | mcp.servers | json5 | ใช่ | ใช่ |
| Cline | ~/Library/Application Support/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json | mcpServers | json | ไม่มีเอกสารระบุ | ใช่ |
| Continue | .continue/mcpServers/<name>.yaml (or drop a Claude/Cursor/Cline-style mcp.json into .continue/mcpServers/) | mcpServers | yaml | ไม่มีเอกสารระบุ | ไม่ |
| JetBrains AI Assistant | ตั้งค่าได้จากหน้าจอ Settings เท่านั้น | mcpServers | json (pasted in UI) | ไม่มีเอกสารระบุ | ไม่ |
ข้อแตกต่างที่ทำให้การตั้งค่าใช้ไม่ได้
VS Code ใช้ servers
.vscode/mcp.json ระบุรายการไว้ใต้ servers ไม่ใช่ mcpServers ดังนั้นการวางการตั้งค่าของ Cursor หรือ Claude โดยไม่แก้ไขจะทำให้โหลดไม่ได้ ส่วน .mcp.json รูปแบบพกพารุ่นใหม่และ ~/.copilot/mcp-config.json ใช้ mcpServers
Gemini CLI ใช้ httpUrl ไม่ใช่ url
Gemini CLI เลือก transport จากชื่อฟิลด์ httpUrl หมายถึง Streamable HTTP, url หมายถึง transport แบบ SSE รุ่นเก่า และ command หมายถึง stdio เซิร์ฟเวอร์ระยะไกลรุ่นใหม่ต้องใช้ httpUrl
OpenClaw และ Cline ใช้ SSE เป็นค่าเริ่มต้น
หากไม่ระบุ transport ในรายการเซิร์ฟเวอร์ระยะไกล ทั้งสองตัวจะย้อนกลับไปใช้ SSE รุ่นเก่า ให้ตั้ง transport เป็น streamable-http ใน OpenClaw และ type เป็น streamableHttp ใน Cline
Claude Code ต้องระบุ type
ใน .mcp.json รายการ remote ที่มี url แต่ไม่มี type ถือเป็นข้อผิดพลาด ให้เพิ่ม type http ไว้ข้าง url; รายการ stdio ใช้ type stdio
Codex ใช้ TOML โดยมีหนึ่ง table ต่อเซิร์ฟเวอร์
Codex ไม่มีไฟล์ JSON เซิร์ฟเวอร์แต่ละตัวจะใช้ table [mcp_servers.<name>] ของตัวเองใน config.toml โดย args เป็นอาร์เรย์ TOML และ env_vars จะส่งต่อ secret จาก shell โดยอ้างอิงตามชื่อ
Continue ต้องใช้รายการ YAML
ใน Continue, mcpServers เป็นรายการของ entry ซึ่งแต่ละรายการมี name ไม่ใช่ map ที่ใช้ name เป็น key นอกจากนี้ ไฟล์ block ทุกไฟล์ต้องมี name, version และ schema: v1 อยู่ด้านบนสุด