Dureach เปิดเซิร์ฟเวอร์ MCP แบบอ่านและดำเนินการที่ https://app.dureach.com/mcp สำหรับไคลเอนต์ MCP ภายนอก ไคลเอนต์ต้องทำความยินยอม OAuth ให้ครบถ้วน เรียก tools/list เพื่อค้นหาเครื่องมือที่ได้รับสิทธิ์ แล้วเรียก tools/call ด้วยชื่อเครื่องมือ dureach.* และอาร์กิวเมนต์ที่มีชนิดข้อมูลชัดเจน
ผลลัพธ์ของเครื่องมือถูกส่งไปยังไคลเอนต์ภายนอก และผู้ให้บริการอาจประมวลผลหรือเก็บข้อมูลไว้ ตรวจสอบข้อกำหนดการจัดการ การเก็บรักษา และการเข้าถึงข้อมูลก่อนเชื่อมต่อ ขอเฉพาะฟิลด์ที่จำเป็น และอย่าใส่ข้อมูลติดต่อหรือระเบียนลูกค้าในบทสนทนาที่แชร์ ภาพหน้าจอ หรือบันทึก
ต้องเตรียมอะไรก่อนเชื่อมต่อ
- เวิร์กสเปซ Dureach ที่เปิดความสามารถแพลตฟอร์มเอเจนต์แล้ว หากไม่มีความสามารถดังกล่าว การรับเข้าจะส่งคืน
plan_capability_required - ไคลเอนต์ OAuth ที่สามารถทำความยินยอมผ่านเบราว์เซอร์ได้ MCP รับเฉพาะโทเค็น OAuth bearer เท่านั้น คีย์ REST API จะถูกปฏิเสธบน
/mcp - ให้ความยินยอมในเบราว์เซอร์ในฐานะสมาชิกของพื้นที่ทำงาน เก็บข้อมูลรับรองในที่เก็บที่ป้องกันของไคลเอนต์หรือระบบจัดการข้อมูลลับฝั่งเซิร์ฟเวอร์ ห้ามวางโทเคนในบทสนทนา เอกสารที่แชร์ ภาพหน้าจอ หรือคำร้องสนับสนุน
- ไคลเอนต์ MCP ที่รองรับ streamable HTTP พร้อมการตอบสนอง JSON (เช่น Claude Desktop ที่มีตัวเชื่อมต่อ MCP, Cursor หรือไคลเอนต์ Python แบบกำหนดเองที่สร้างบน SDK
mcp)
ความยินยอม OAuth สำหรับ MCP ทำงานอย่างไร
- ลงทะเบียนหรือเปิดไคลเอนต์ OAuth แล้วเริ่มการให้สิทธิ์สำหรับเวิร์กสเปซ
- เลือกเฉพาะขอบเขตที่ไคลเอนต์ต้องใช้ (ดู การอนุมัติ นโยบาย และโควตา MCP) ไคลเอนต์รายงานอาจต้องการเพียง
companies:readและtrade:readส่วนไคลเอนต์งานติดต่อต้องมีสิทธิ์เพิ่ม เช่นleads:createหรือemails:send - ให้ความยินยอมในเบราว์เซอร์ในฐานะสมาชิกของพื้นที่ทำงาน เก็บข้อมูลรับรองในที่เก็บที่ป้องกันของไคลเอนต์หรือระบบจัดการข้อมูลลับฝั่งเซิร์ฟเวอร์ ห้ามวางโทเคนในบทสนทนา เอกสารที่แชร์ ภาพหน้าจอ หรือคำร้องสนับสนุน
- ส่งโทเค็นเป็น
Authorization: Bearer YOUR_OAUTH_ACCESS_TOKENในทุกคำขอ MCP HTTP เก็บโทเค็นให้พ้นจาก URL ภาพหน้าจอ บันทึก และตั๋วสนับสนุน - หากไคลเอนต์ต้องดำเนินการในนามเวิร์กสเปซเฉพาะ ให้ส่ง
X-Workspace-IDพร้อมรหัสเวิร์กสเปซของโทเค็น ค่าที่ไม่ตรงกันจะส่งคืนworkspace_context_required
ตรวจสอบเอกสารเมทาดาตาที่ /.well-known/oauth-protected-resource/mcp เมื่อไลบรารีไคลเอนต์ต้องการค่าที่ใช้ค้นหาบริการ
ไคลเอนต์ใช้เอนด์พอยต์และโปรโตคอลใด
- ใช้
https://app.dureach.com/mcpให้ตรงทุกตัวกับไคลเอนต์ MCP ที่รองรับ streamable HTTP - ให้ความยินยอม OAuth สำหรับพื้นที่ทำงานที่ต้องการ และเก็บข้อมูลรับรองในที่เก็บที่ป้องกันของไคลเอนต์หรือระบบจัดการข้อมูลลับฝั่งเซิร์ฟเวอร์
- หากโฮสต์หรือต้นทางถูกปฏิเสธ ให้ตรวจสอบ URL ที่ตั้งค่าและติดต่อฝ่ายสนับสนุน ห้ามลบหรือปลอมส่วนหัวความปลอดภัยเพื่อข้ามการปฏิเสธ
- เก็บ
request_idจากผลตอบกลับเพื่อแก้ปัญหา และห้ามใส่โทเคนหรือแถวข้อมูลในบันทึกที่แชร์
วิธีแสดงรายการเครื่องมือที่ใช้ได้
หลังให้ความยินยอม OAuth ให้เรียก tools/list เครื่องมือที่ใช้ได้แต่ละรายการมีชื่อและสคีมาอาร์กิวเมนต์ ใช้สคีมาที่ได้รับเพื่อตรวจสอบคำขอก่อนเรียกเครื่องมือ
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/list",
"params": {}
}ใช้ tools/list เพื่อดูเครื่องมือที่ใช้ได้กับการเชื่อมต่อนี้ ความพร้อมใช้งานขึ้นอยู่กับสิทธิ์ที่ได้รับและสิทธิ์การเข้าถึงของพื้นที่ทำงาน เริ่มด้วยสิทธิ์อ่าน และให้ผู้ดูแลตรวจสอบสิทธิ์ที่ขาดแทนการขอสิทธิ์กว้างเกินความจำเป็น
วิธีเรียกใช้เครื่องมือ
ส่งคำขอ tools/call พร้อมชื่อเต็ม dureach. และออบเจ็กต์อาร์กิวเมนต์ ชื่อที่ไม่รู้จักหรือชื่อที่ไม่มีคำนำหน้าจะส่งคืน Unknown tool (INVALID_PARAMS):
{
"jsonrpc": "2.0",
"id": 2,
"method": "tools/call",
"params": {
"name": "dureach.companies.search",
"arguments": {"query": "industrial valves", "page": 1, "limit": 10}
}
}ผลสำเร็จจะส่งคืนหนึ่งรายการข้อความที่มี JSON พร้อมสำเนา structuredContent ที่แยกวิเคราะห์แล้ว ความล้มเหลวของแอปพลิเคชันจะส่งคืน isError: true พร้อม {"error": {"code": "...", "details": {...}}, "request_id": "..."} เก็บ request_id ไว้สำหรับการสนับสนุนและการจัดการลองใหม่ ขอบเขตค่าอาร์กิวเมนต์ทั้งหมดระบุอยู่ใน ข้อมูลอ้างอิงเครื่องมือ MCP
วิธีกำหนดค่าไคลเอนต์ทั่วไป
Claude Desktop หรือไคลเอนต์แบบใช้ตัวเชื่อมต่ออื่น
- เพิ่มเซิร์ฟเวอร์ streamable-HTTP ด้วย URL
https://app.dureach.com/mcp - กำหนดค่าการยืนยันตัวตน OAuth ด้วยรหัสไคลเอนต์จากการลงทะเบียน OAuth ของ Dureach และ URL เมทาดาตาทรัพยากร MCP
- ทำความยินยอมให้ครบถ้วน แล้วตรวจสอบว่าตัวเชื่อมต่อแสดงรายการเครื่องมือที่ขึ้นต้นด้วย
dureach. - เริ่มด้วย
dureach.workspace.contextและdureach.workspace.capabilitiesก่อนค้นหาข้อมูล
ไคลเอนต์ Python แบบกำหนดเอง (SDK mcp อย่างเป็นทางการ)
import os
from mcp import ClientSession
from mcp.client.streamable_http import streamable_http_client
MCP_URL = "https://app.dureach.com/mcp"
TOKEN = os.environ["DUREACH_OAUTH_ACCESS_TOKEN"]
async def main():
async with streamable_http_client(
MCP_URL, headers={"Authorization": f"Bearer {TOKEN}"}
) as (read, write, _):
async with ClientSession(read, write) as session:
await session.initialize()
tools = await session.list_tools()
print([t.name for t in tools.tools])
result = await session.call_tool(
"dureach.companies.search",
{"query": "industrial valves", "page": 1, "limit": 10},
)
print("Search completed")แทนที่โทเค็นและคำค้นด้วยค่าของคุณ ห้ามบันทึกโทเค็นลงในระบบควบคุมซอร์สโค้ด
ควรตรวจสอบอะไรก่อนแชร์สิทธิ์การเข้าถึง
- เรียก
dureach.workspace.contextและยืนยันว่ารหัสเวิร์กสเปซและขอบเขตที่ส่งคืนตรงกับเวิร์กสเปซที่ตั้งใจ - เรียก
dureach.workspace.capabilitiesและยืนยันว่าแสดงเฉพาะการดำเนินการที่คาดไว้ - เรียกอ่านแบบมีขอบเขตหนึ่งครั้ง (เช่น
companies.searchด้วยlimit: 5) และยืนยันฟิลด์การแบ่งหน้า - สำหรับเส้นทางการเขียน ให้เรียกด้วย
dry_run: trueก่อน ดู การอนุมัติ นโยบาย และโควตา MCP - เพิกถอนโทเค็นที่
/oauth/revokeหรือใน Settings → Integrations เมื่อไม่ต้องการสิทธิ์อีกต่อไป