DataGrout
ทางการDataGrout - ชั้นการค้นพบ การกำกับดูแล และการจัดระเบียบสำหรับเอเจนต์ AI ที่ทำงานข้ามเซิร์ฟเวอร์ MCP และการผสานรวมหลายระบบ
คุณทำอะไรได้บ้างด้วย DataGrout MCP?
- จัดเตรียมเซิร์ฟเวอร์ DataGrout และข้อมูลประจำตัว mTLS โดยอัตโนมัติ — เรียก
bootstrap_onrampเพื่อลงทะเบียนเอเจนต์ รับข้อมูลรับรอง OAuth และสร้างใบรับรองที่ลงนามแล้วในขั้นตอนเดียว - ตรวจสอบสิทธิ์ด้วย mTLS, OAuth 2.1 หรือ bearer tokens — กำหนดค่าคล้ายต์ด้วยข้อมูลประจำตัวตามใบรับรอง, JWT ที่รีเฟรชอัตโนมัติ หรือโทเค็นง่ายๆ สำหรับการทดสอบ
- ค้นหาและเรียกใช้เครื่องมือด้วยภาษาธรรมชาติ — ใช้ Intelligent Interface (
discover/perform) เพื่อให้เอเจนต์ค้นหาและเรียกใช้เครื่องมือโดยอธิบายเป้าหมายแทนการระบุชื่อเครื่องมือที่แน่นอน - ติดตามการใช้เครดิตในทุกการเรียก — ตรวจสอบใบเสร็จค่าใช้จ่ายที่ส่งกลับมากับแต่ละการตอบสนองเพื่อติดตามการใช้จ่ายตามนโยบายหรือขีดจำกัดงบประมาณ
- ดำเนินการตามเป้าหมายหลายขั้นตอนแบบโต้ตอบ — เรียก
client.guide(goal=...)เพื่อดำเนินการตามขั้นตอนการทำงานที่แนะนำกับเซิร์ฟเวอร์ - สลับระหว่าง Streamable HTTP, JSON-RPC หรือ WebSocket transports — เลือก transport แบบ
mcp,jsonrpcหรือwebsocketโดยไม่ต้องเปลี่ยนการตั้งค่าการตรวจสอบสิทธิ์
เอกสาร
ไคลเอนต์ MCP ส่วนใหญ่จัดการงานเดียว: ส่งคำขอ รับคำตอบ Conduit ถูกสร้างขึ้นสำหรับปัญหาที่แตกต่างออกไปเล็กน้อย — เอเจนต์ที่ต้องพิสูจน์ตัวตน ทำงานต่อเนื่องในเซสชันยาวโดยไม่ต้องยืนยันตัวตนด้วยตนเอง และอยู่ในงบประมาณค่าใช้จ่ายหรือนโยบายในขณะที่ทำงาน นั่นคือช่องว่างที่ SDK นี้เติมเต็ม
ไลบรารีไคลเอนต์ MCP พร้อม mTLS, OAuth 2.1 และการค้นหาเครื่องมือเชิงความหมายในตัว รองรับ Python, TypeScript, Rust, Elixir และ Ruby
เปลี่ยน import เพียงครั้งเดียว เอเจนต์ที่มีอยู่จะได้รับข้อมูลประจำตัวแบบใบรับรอง การมองเห็นค่าใช้จ่าย และการค้นหาเครื่องมือด้วยภาษาธรรมชาติ — ไม่ต้องแก้ไขโค้ดอื่นใด
คุณต้องการ SDK หรือแค่ endpoint ดิบ?
เซิร์ฟเวอร์ DataGrout ทุกตัวเปิดเผย endpoint MCP มาตรฐาน — ไคลเอนต์ที่เข้ากันได้กับ MCP ใด ๆ สามารถเชื่อมต่อได้โดยตรงด้วย URL และ bearer token เท่านั้น ไม่จำเป็นต้องใช้ SDK Conduit มีไว้สำหรับกรณีที่คุณต้องการมากกว่าขั้นต่ำเปล่า:
-
คุณต้องการข้อมูลประจำตัวแบบใบรับรอง (mTLS) แทนการจัดการ token ด้วยตัวเอง
-
คุณต้องการติดตามค่าใช้จ่ายในทุกการเรียกโดยไม่ต้องสร้างแยกต่างหาก
-
คุณต้องการการค้นหาเชิงความหมายเพื่อให้เอเจนต์สามารถหาเครื่องมือที่ถูกต้องโดยการอธิบายเป้าหมาย แทนที่จะต้องรู้ชื่อเครื่องมือที่แน่นอน
-
คุณกำลังผสานรวมใน Rust, Elixir หรือ Ruby ซึ่งการเขียนตรรกะการขนส่ง MCP ด้วยตัวเองนั้นทำงานมากกว่าใน Python/TypeScript
หากไม่มีข้อใดข้างต้นเกี่ยวข้อง — เช่น คุณเพียงแค่เชื่อมต่อ Claude Desktop กับเซิร์ฟเวอร์ DataGrout — การกำหนดค่า mcpServers JSON แบบธรรมดาก็ง่ายและเพียงพอ Conduit มีไว้สำหรับสร้างเอเจนต์หรือแอปพลิเคชันของคุณเองบน DataGrout ไม่ใช่สำหรับการกำหนดค่าไคลเอนต์พื้นฐาน
การรองรับภาษา
| ภาษา | แพ็กเกจ | การติดตั้ง |
|---|---|---|
| Python | datagrout-conduit | pip install datagrout-conduit==0.7.0 |
| TypeScript | @datagrout/conduit | npm install @datagrout/conduit@0.7.0 |
| Rust | datagrout-conduit | cargo add datagrout-conduit@0.7.0 |
| Elixir | datagrout_conduit | {:datagrout_conduit, "~> 0.7.0"} |
| Ruby | datagrout-conduit | gem install datagrout-conduit -v 0.7.0 |
รับเซิร์ฟเวอร์โดยไม่ต้องสมัครก่อน
ยังไม่มีบัญชี DataGrout หรือ endpoint ใช่ไหม? SDK สามารถจัดเตรียมทั้งสองอย่างให้คุณได้โดยตรง (แสดงด้วย Python; การเรียกเดียวกันนี้มีอยู่ใน SDK ของแต่ละภาษา — ดูเอกสารเฉพาะภาษาที่ลิงก์ด้านล่างสำหรับไวยากรณ์ที่แน่นอน):
from datagrout.conduit import ClientBuilder
from datagrout.conduit.onramp import OnrampOptions
client = await ClientBuilder().bootstrap_onramp(OnrampOptions(
gateway="https://app.datagrout.ai",
agent_name="my-agent",
agent_type="claude-sonnet-4-6",
intended_use="Summarise documents and extract entities.",
))
await client.connect()
เบื้องหลังการเรียกครั้งเดียว: SDK ลงทะเบียนเอเจนต์ของคุณ แลกเปลี่ยน token อายุสั้นเป็นข้อมูลประจำตัว OAuth และ URL เซิร์ฟเวอร์ สร้างคู่คีย์ในเครื่อง และให้ CA ของ DataGrout ลงนาม คีย์ส่วนตัวยังคงอยู่บนเครื่องของคุณ ทุกการรันหลังจากครั้งแรกจะใช้ข้อมูลประจำตัวที่บันทึกไว้โดยอัตโนมัติ
ชอบเทอร์มินัลมากกว่าการเขียนโค้ด: invariant onboard
การยืนยันตัวตน
สามวิธี เหมือนกันในทั้งห้า SDK:
-
Bearer token — ตัวเลือกที่ง่ายที่สุด เหมาะสำหรับการทดสอบอย่างรวดเร็ว
-
OAuth 2.1 (client credentials) — SDK ดึงข้อมูล แคช และรีเฟรช JWT โดยอัตโนมัติ
-
mTLS — หลังจากการบูตสแตรปครั้งเดียว ใบรับรองจะยืนยันตัวตนทุกคำขอ; ไม่ต้องจัดการ token หลังจากนั้น
สำหรับ mTLS ข้อมูลประจำตัวจะถูกค้นพบโดยอัตโนมัติตามลำดับการค้นหาที่กำหนด: ไดเรกทอรีที่ระบุอย่างชัดเจน, ตัวแปรสภาพแวดล้อม CONDUIT_MTLS_CERT/CONDUIT_MTLS_KEY, CONDUIT_IDENTITY_DIR, ค่าเริ่มต้น ~/.conduit/ จากนั้น .conduit/ ในเครื่องที่สัมพันธ์กับไดเรกทอรีทำงาน การรันเอเจนต์หลายตัวบนเครื่องเดียวหมายถึงการให้ไดเรกทอรีข้อมูลประจำตัวแยกกันสำหรับแต่ละตัว
ทำไมต้องมี CA เฉพาะ: ข้อมูลประจำตัวของเครื่องมีความต้องการที่แตกต่างจากข้อมูลประจำตัวของเบราว์เซอร์ — เอเจนต์ต้องการใบรับรองที่ออกและหมุนเวียนโดยโปรแกรม โดยไม่ต้องมีมนุษย์ในวงจรทุกครั้ง คีย์การลงนามอยู่ในคีย์ AWS KMS ที่รองรับ HSM (FIPS 140-2 Level 2) และไม่เคยออกจากที่นั่น ใบรับรอง CA เป็นสาธารณะที่ ca.datagrout.ai/ca.pem สำหรับการตรวจสอบสายโซ่โดยอิสระ
ตัวเลือกการขนส่ง
| การขนส่ง | โปรโตคอล | ใช้เมื่อ |
|---|---|---|
| mcp (ค่าเริ่มต้น) | MCP over Streamable HTTP/SSE | คุณต้องการการสนับสนุนโปรโตคอลเต็มรูปแบบ การสตรีม การแจ้งเตือน |
| jsonrpc | JSON-RPC 2.0 over HTTP POST | คุณต้องการสิ่งที่ง่ายกว่าและไม่มีสถานะ |
| websocket | JSON-RPC 2.0 over WebSocket | คุณต้องการให้เซิร์ฟเวอร์ส่งเหตุการณ์ ไม่ใช่แค่ตอบกลับ |
การยืนยันตัวตนทำงานเหมือนกันในทั้งสาม — การเปลี่ยนการขนส่งไม่ได้หมายถึงการเปลี่ยนวิธีที่คุณยืนยันตัวตน
คุณสมบัติหลัก
-
Intelligent Interface (เปิดโดยค่าเริ่มต้น) — ย่อพื้นผิวเครื่องมือทั้งหมดให้เหลือสองการเรียก: discover และ perform เอเจนต์อธิบายเป้าหมายด้วยภาษาธรรมดาแทนการให้เหตุผลเหนือสคีมาเครื่องมือหลายร้อยรายการ ปิดใช้งานด้วย use_intelligent_interface=False เพื่อดูเครื่องมือดิบ
-
การค้นหาเชิงความหมาย — มีให้ใช้แบบเดี่ยวด้วย สำหรับค้นหาเครื่องมือตามความหมายแทนชื่อที่แน่นอน
-
การมองเห็นค่าใช้จ่าย — ทุกการเรียกส่งคืนใบเสร็จพร้อมการใช้เครดิต
-
เวิร์กโฟลว์แบบแนะนำ — client.guide(goal=...) นำทางผ่านเป้าหมายหลายขั้นตอนแบบโต้ตอบ
-
ใบรับรองความไว้วางใจเชิงความรู้ — หลักฐานการเข้ารหัสว่าเวิร์กโฟลว์ไม่มีวงจร ปลอดภัยต่อชนิด ปฏิบัติตามนโยบาย และอยู่ในงบประมาณ ลงนามโดย CA เดียวกับข้อมูลประจำตัวของเอเจนต์
เนมสเปซของฝ่ายแรก
| เนมสเปซ | ใช้สำหรับอะไร |
|---|---|
| prism | การแปลงข้อมูล การสร้างแผนภูมิ การเรนเดอร์ การส่งออก |
| logic | หน่วยความจำเอเจนต์แบบถาวรผ่านเลเยอร์ตรรกะ Prolog |
| warden | การตรวจสอบความปลอดภัย การยืนยันเจตนา ฉันทามติหลายโมเดล |
| deliverables | การลงทะเบียนและดึงผลงานที่เสร็จสมบูรณ์ |
| ephemerals | การตรวจสอบและจัดการผลลัพธ์ที่แคช |
| flow | การจัดระเบียบเวิร์กโฟลว์ — การกำหนดเส้นทาง การอนุมัติจากมนุษย์ ประวัติการดำเนินการ |
โฟลว์สามารถบันทึกเป็นสกิลที่มีชื่อและใช้ซ้ำได้ (save_as_skill=True) หรือฝังแบบอินไลน์เป็นขั้นตอนครั้งเดียวผ่าน $compute flow.route จัดการการแตกกิ่งตามเงื่อนไข; flow.request_approval/flow.request_feedback แทรกจุดตรวจสอบจากมนุษย์ สิ่งใดที่ไม่ครอบคลุมโดยเนมสเปซสามารถเข้าถึงได้ผ่านการเรียก dg() ทั่วไป
จุดเชื่อมต่อกับอินทิเกรชันของ DataGrout
Conduit เป็นเลเยอร์ระหว่างเอเจนต์ของคุณและเซิร์ฟเวอร์ DataGrout ใด ๆ — รวมถึงอินทิเกรชัน Salesforce, QuickBooks และ Oracle Fusion Cloud การเรียก call_tool("salesforce@1/get_lead@1", ...) ทำงานเหมือนกันไม่ว่าเซิร์ฟเวอร์นั้นจะกำหนดค่าอินทิเกรชันใดไว้; SDK ไม่จำเป็นต้องรู้เกี่ยวกับอินทิเกรชันเฉพาะล่วงหน้า
จะไปต่อที่ไหน
-
เอกสารเฉพาะภาษา: Python, TypeScript, Rust, Elixir, Ruby READMEs (GitHub)
-
รายละเอียดความปลอดภัย: app.datagrout.ai/security
-
เครื่องมือฟรี ไม่ต้องใช้บัญชี: MCP Inspector และ JSON-RPC Inspector แบบเบราว์เซอร์
-
Labs: บทความวิจัยเกี่ยวกับใบรับรองความไว้วางใจ การวิเคราะห์โค้ดเชิงความหมาย การบังคับใช้นโยบาย โมเดลเครดิต และอื่น ๆ
ใบอนุญาต
MIT