ต้นแบบ · รุ่นทดลอง: มีทุก server ในทะเบียนทางการ อัปเดตทุก 30 นาที เข้าสู่ระบบด้วย Google เพื่อเขียนรีวิวได้แล้วต้นแบบ · อัปเดตทุก 30 นาที
PopNx MCPที่รวม MCP สำหรับคนใช้ AI · วิธีติดตั้งภาษาไทยทุกตัว

IdentArk Gateway

โดย identArkรุ่น 0.1.0i★ 16iรันบนคลาวด์
ชื่อใน registryio.identark/gateway

วิธีติดตั้ง

ใช้ทำอะไรได้

ยังไม่มีคำอธิบายภาษาไทย ดูข้อเท็จจริงด้านล่าง หรือเปิดคำอธิบายต้นฉบับจากผู้ทำ

  • ต่อแบบ คลาวด์ (ต่อผ่านอินเทอร์เน็ต)
  • บัญชีหรือคีย์ ต้องมี Authorization
  • หมวด อื่น ๆ
คำอธิบายต้นฉบับจากผู้ทำ (อังกฤษ)
Zero-secret MCP gateway for AI agents: risk-scored, audited calls with human-in-the-loop approval.

ติดตั้ง

เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง

ผลตรวจผ่าน 2/4 · สิ่งที่คุณถามผ่านเซิร์ฟเวอร์ของผู้ทำ (api.identark.io) · ✓ ตรวจคำสั่งแล้ว 14 พ.ย. 2569

ขั้นแรก: คุณใช้ AI ตัวไหน

เลือกแอปที่คุณใช้ ขั้นตอนจะขึ้นด้านล่าง

ต่อกับ Claude ได้ · ประมาณ 5 นาที

ต้องมีคีย์ของ IdentArk Gateway (สร้างที่เว็บของผู้ทำ) · ตั้งครั้งเดียวที่ claude.ai หรือแอปบนคอม แล้วใช้ในแชตได้ · บัญชีฟรีเพิ่มได้ 1 ตัว · แผน Team/Enterprise ให้เจ้าของ (Owner) เป็นคนเพิ่ม

  1. สมัครและสร้างคีย์ของ IdentArk Gateway

    เปิดเว็บของผู้ทำ สมัครบัญชีแล้วสร้างคีย์ (API key) เก็บไว้ ใช้ในขั้นถัดไป ราคาและแผนฟรีดูที่เว็บของผู้ทำ

    เปิดเว็บของ IdentArk Gateway ↗

  2. เปิดหน้า Connectors ของ Claude

    CustomizeConnectors

    CustomizeConnectors1Add2https://…3Add4
  3. กด “Add” → “Custom” → “Web” แล้วกรอก 2 ช่องนี้

    คัดลอกจากที่นี่ไปวางในช่องชื่อเดียวกันบนหน้าจอของ Claude แล้วกด Continue

    Name · ชื่อIdentArk Gateway
    Remote MCP server URL · ที่อยู่https://api.identark.io/v1/mcp/rpc

    ที่หัวข้อ Request headers เพิ่มชื่อและค่านี้

    ชื่อ headerAuthorization
    ค่าBearer <วางคีย์ของคุณตรงนี้>

    วางคีย์ในช่องของแอปเท่านั้น อย่าวางในแชตหรือส่งให้ใคร

    กด Continue ผ่านหน้าตรวจการล็อกอินที่ Claude ตรวจเจอ · หัวข้อ Authentication เลือกตามที่ผู้ทำบอก (Sign in now, Sign in when needed หรือ No sign in) แล้วกด Add

  4. เปิดใช้ในแชต

    +ConnectorsIdentArk Gateway

  5. ลองเลย

    ใช้ IdentArk Gateway บอกหน่อยว่าทำอะไรให้ฉันได้บ้าง แล้วลองทำให้ดูหนึ่งอย่าง

    ✓ ถ้า Claude บอกว่ากำลังใช้ IdentArk Gateway หรือมีชื่อเครื่องมือของ IdentArk Gateway ขึ้นในคำตอบ แปลว่าต่อสำเร็จ

ชื่อเมนูตรวจกับหน้าช่วยเหลือของ Anthropic เมื่อ 11 พ.ย. 2569 · หน้าจอของคุณอาจต่างเล็กน้อยตามรุ่นของแอป

ChatGPT ยังต่อ IdentArk Gateway ไม่ได้

IdentArk Gateway ต้องใส่คีย์ส่วนตัวตอนต่อ แต่หน้าช่วยเหลือของ OpenAI พูดถึงแค่การเข้าสู่ระบบแบบ OAuth ยังไม่มีวิธีใส่คีย์ที่เราตรวจได้

คุณทำแบบนี้แทนได้

ก · ใช้แอปที่ต่อ IdentArk Gateway ได้

  • ต้องมีคีย์ของ IdentArk Gateway (สร้างที่เว็บของผู้ทำ) · ตั้งครั้งเดียวที่ claude.ai หรือแอปบนคอม แล้วใช้ในแชตได้ · บัญชีฟรีเพิ่มได้ 1 ตัว · แผน Team/Enterprise ให้เจ้าของ (Owner) เป็นคนเพิ่ม
  • ต้องมีคีย์ของ IdentArk Gateway (สร้างที่เว็บของผู้ทำ)
  • ต้องมีคีย์ของ IdentArk Gateway (สร้างที่เว็บของผู้ทำ)
  • ต้องมีคีย์ของ IdentArk Gateway (สร้างที่เว็บของผู้ทำ)

ข · ตัวอื่นในหมวด อื่น ๆ ที่ต่อกับ ChatGPT ได้

เลือกจากตัวที่ใช้มากในหมวดเดียวกัน เฉพาะตัวที่ต่อด้วยที่อยู่ได้โดยไม่ต้องใส่คีย์

ต่อกับ Claude Code ได้ · ประมาณ 5 นาที

ต้องมีคีย์ของ IdentArk Gateway (สร้างที่เว็บของผู้ทำ)

  1. สมัครและสร้างคีย์ของ IdentArk Gateway

    เปิดเว็บของผู้ทำ สมัครบัญชีแล้วสร้างคีย์ (API key) เก็บไว้ ใช้ในขั้นถัดไป ราคาและแผนฟรีดูที่เว็บของผู้ทำ

    เปิดเว็บของ IdentArk Gateway ↗

  2. เปิด Terminal

    Mac: กด Command+Space พิมพ์ Terminal · Windows: เปิด PowerShell

  3. วางคำสั่งนี้แล้วกด Enter

    claude mcp add --transport http --scope user gateway https://api.identark.io/v1/mcp/rpc --header 'Authorization: Bearer ใส่ค่าของคุณ'

    แก้ “ใส่ค่าของคุณ” เป็นคีย์ของคุณก่อนกด Enter

    วางคีย์ในช่องของแอปเท่านั้น อย่าวางในแชตหรือส่งให้ใคร

  4. พิมพ์ /mcp ใน Claude Code

    ต้องเห็น IdentArk Gateway ในรายการและขึ้นว่าเชื่อมต่อแล้ว

  5. ลองเลย

    ใช้ IdentArk Gateway บอกหน่อยว่าทำอะไรให้ฉันได้บ้าง แล้วลองทำให้ดูหนึ่งอย่าง

    ✓ ถ้า Claude Code บอกว่ากำลังใช้ IdentArk Gateway หรือมีชื่อเครื่องมือของ IdentArk Gateway ขึ้นในคำตอบ แปลว่าต่อสำเร็จ

ชื่อเมนูตรวจกับหน้าช่วยเหลือของ Anthropic เมื่อ 11 พ.ย. 2569 · หน้าจอของคุณอาจต่างเล็กน้อยตามรุ่นของแอป

ต่อกับ Cursor ได้ · ประมาณ 5 นาที

ต้องมีคีย์ของ IdentArk Gateway (สร้างที่เว็บของผู้ทำ)

  1. สมัครและสร้างคีย์ของ IdentArk Gateway

    เปิดเว็บของผู้ทำ สมัครบัญชีแล้วสร้างคีย์ (API key) เก็บไว้ ใช้ในขั้นถัดไป ราคาและแผนฟรีดูที่เว็บของผู้ทำ

    เปิดเว็บของ IdentArk Gateway ↗

  2. กดปุ่มนี้เพื่อเปิด Cursor

    เปิดใน Cursor

    Cursor จะถามยืนยันการติดตั้ง ให้กด Install

  3. ใส่คีย์ในช่องที่ว่างไว้

    ในค่าตั้งของ IdentArk Gateway ช่อง Authorization ยังว่าง ใส่คีย์ของคุณแล้วบันทึก

    วางคีย์ในช่องของแอปเท่านั้น อย่าวางในแชตหรือส่งให้ใคร

  4. เปิดแชตของ AI ใน Cursor โหมด Agent

  5. ลองเลย

    ใช้ IdentArk Gateway บอกหน่อยว่าทำอะไรให้ฉันได้บ้าง แล้วลองทำให้ดูหนึ่งอย่าง

    ✓ ถ้า Cursor บอกว่ากำลังใช้ IdentArk Gateway หรือมีชื่อเครื่องมือของ IdentArk Gateway ขึ้นในคำตอบ แปลว่าต่อสำเร็จ

ชื่อเมนูตรวจกับหน้าช่วยเหลือของ Cursor เมื่อ 11 พ.ย. 2569 · หน้าจอของคุณอาจต่างเล็กน้อยตามรุ่นของแอป

ต่อกับ VS Code ได้ · ประมาณ 5 นาที

ต้องมีคีย์ของ IdentArk Gateway (สร้างที่เว็บของผู้ทำ)

  1. สมัครและสร้างคีย์ของ IdentArk Gateway

    เปิดเว็บของผู้ทำ สมัครบัญชีแล้วสร้างคีย์ (API key) เก็บไว้ ใช้ในขั้นถัดไป ราคาและแผนฟรีดูที่เว็บของผู้ทำ

    เปิดเว็บของ IdentArk Gateway ↗

  2. กดปุ่มนี้เพื่อเปิด VS Code

    เปิดใน VS Code

    VS Code จะถามยืนยันการติดตั้ง ให้กด Install

  3. ใส่คีย์ในช่องที่ว่างไว้

    ในค่าตั้งของ IdentArk Gateway ช่อง Authorization ยังว่าง ใส่คีย์ของคุณแล้วบันทึก

    วางคีย์ในช่องของแอปเท่านั้น อย่าวางในแชตหรือส่งให้ใคร

  4. เปิดแชตของ AI ใน VS Code โหมด Agent

  5. ลองเลย

    ใช้ IdentArk Gateway บอกหน่อยว่าทำอะไรให้ฉันได้บ้าง แล้วลองทำให้ดูหนึ่งอย่าง

    ✓ ถ้า VS Code บอกว่ากำลังใช้ IdentArk Gateway หรือมีชื่อเครื่องมือของ IdentArk Gateway ขึ้นในคำตอบ แปลว่าต่อสำเร็จ

ชื่อเมนูตรวจกับหน้าช่วยเหลือของ VS Code เมื่อ 11 พ.ย. 2569 · หน้าจอของคุณอาจต่างเล็กน้อยตามรุ่นของแอป

โปรแกรมอื่นที่ใช้ MCP ได้ เช่น Windsurf, Zed หรือ Gemini CLI มีวิธีเพิ่มต่างกัน ดูวิธีของแต่ละตัวในหน้ารวมโปรแกรม

ดูโปรแกรมที่ใช้ MCP ทั้งหมด →

ที่อยู่สำหรับโปรแกรมที่ต่อผ่านเว็บ

ที่อยู่https://api.identark.io/v1/mcp/rpc

ค่าตั้งแบบไฟล์ JSON อยู่ในหัวข้อ “สำหรับคนเขียนโค้ด” ด้านล่าง

ติดตรงไหน? ถามคนที่ใช้ IdentArk Gateway อยู่💬 พูดคุย →
สำหรับคนเขียนโค้ด: คำสั่ง Terminal และค่าตั้ง JSON

ต่อผ่านเว็บ

Claude Code

claude mcp add --transport http --scope user gateway https://api.identark.io/v1/mcp/rpc --header 'Authorization: Bearer ใส่ค่าของคุณ'

Cursor (~/.cursor/mcp.json)

{
  "mcpServers": {
    "gateway": {
      "url": "https://api.identark.io/v1/mcp/rpc",
      "headers": {
        "Authorization": "Bearer ใส่ค่าของคุณ"
      }
    }
  }
}

VS Code (mcp.json)

{
  "servers": {
    "gateway": {
      "type": "http",
      "url": "https://api.identark.io/v1/mcp/rpc",
      "headers": {
        "Authorization": "Bearer ใส่ค่าของคุณ"
      }
    }
  }
}

ค่าที่ต้องใส่เอง

  • Authorization ความลับ จำเป็น HTTP header
    Bearer

คำอธิบายยังเป็นภาษาอังกฤษตามต้นฉบับ

ค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README

สรุป

ดาวน์โหลดต่อสัปดาห์i
ไม่มียอดใน npm/PyPI
โดเมนที่ยืนยัน
✓ identark.io
การเชื่อมต่อ
รันบนคลาวด์
รุ่นล่าสุดi
0.1.0
หมวดi
อื่น ๆ
ส่งเข้า registryi
17 ก.ค. 2569
แก้โค้ดล่าสุดi
28 ต.ค. 2569
ผู้ทำ
identArk
เว็บผู้ทำ
identark.io
สถานะใน registry
ใช้งานอยู่

ใช้กับโปรแกรมไหนได้

ดูจากแบบการต่อของ server ตัวนี้ และเอกสารของผู้ทำโปรแกรมแต่ละตัว ตรวจเมื่อ 10 พ.ย. 2569

ต่อผ่านคลาวด์ได้ใน

ClaudeGooseLM StudioMsty StudioCherry StudioCursorVS Code + GitHub CopilotVisual StudioWindsurf (Devin Desktop)ZedKiroClineContinueJetBrains AI AssistantClaude CodeCodex CLIGemini CLIOpenCodenodecodeWarpLibreChatOpen WebUIRaycast

ดูโปรแกรมทั้งหมดพร้อมข้อดีข้อเสีย →

คู่มือที่เกี่ยวข้อง

ทำอะไรได้บ้าง

server ให้ล็อกอินก่อนจึงจะแสดงรายการเครื่องมือ

ผลตรวจเบื้องต้นi

เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 15 พ.ย. 2569

  • ✓ ผ่าน

    ตัวตนผู้ทำตรงกับ repo

    ชื่อใน registry ยืนยันโดเมน identark.io แล้ว (registry ตรวจความเป็นเจ้าของโดเมน)

  • ✓ ผ่าน

    ยังมีคนดูแล

    มีการแก้โค้ดล่าสุด 18 วันที่ผ่านมา

  • – ไม่เกี่ยว

    มีสัญญาอนุญาต (license)

    ไม่เกี่ยว: server บนคลาวด์ของเจ้าของ identark.io เอง คุณไม่ได้รันโค้ดจากรีโป

  • ! ควรระวัง

    endpoint ตอบ

    ตอบว่าไม่ให้เข้า (HTTP 401) และไม่มีวิธีล็อกอินแบบ OAuth อาจต้องใช้คีย์ หรือเป็นด่านกันบอท ยังยืนยันไม่ได้

  • ! ควรระวัง

    ล็อกอินแบบ OAuth

    ต้องใช้กุญแจหรือ token ที่คัดลอกมาวางเอง

  • … ยังไม่ตรวจ

    คำอธิบายเครื่องมือไม่มีคำสั่งแอบแฝง

    ยังไม่ได้ตรวจ เราอ่านรายการเครื่องมือตอนตรวจ endpoint

เราตรวจอะไรบ้าง → · JSON

ผู้ทำ: ขอให้ตรวจใหม่ หรือแจ้งข้อมูลผิด

พูดคุย

ถาม แชร์เคล็ดลับ หรือแจ้งว่าใช้ไม่ได้ เรียงตามที่คนกดว่ามีประโยชน์

ยังไม่มีใครโพสต์ ถามหรือแชร์เป็นคนแรกได้เลย

ข้อความในส่วนนี้เขียนโดยผู้ใช้ ไม่ใช่ทีม PopNx

เข้าสู่ระบบเพื่อโพสต์

รีวิวจากผู้ใช้

ยังไม่มีรีวิว

เข้าสู่ระบบเพื่อเขียนรีวิว

เทียบกับตัวอื่นในหมวด อื่น ๆi

  • ดาวมากกว่า 97% ของอีก 19900 ตัวในหมวดนี้
  • ส่งรุ่นใหม่เข้า registry ล่าสุดกว่า 14% ของอีก 19900 ตัวในหมวดนี้
  • ผลตรวจเบื้องต้นดีกว่าหรือเท่ากับ 10% ของอีก 19900 ตัวในหมวดนี้

เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo

คำถามที่พบบ่อย

IdentArk Gateway ปลอดภัยไหม?

จากการตรวจเบื้องต้นของเรา ผ่าน 2 จาก 4 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น

ต้องใช้กุญแจหรือรหัสอะไรบ้าง?

ต้องใส่ค่าเหล่านี้: Authorization

ตัวนี้รันบนเครื่องหรือบนคลาวด์?

รันบนคลาวด์ของผู้ทำ ต่อผ่านอินเทอร์เน็ตได้เลย ไม่ต้องลงโปรแกรม แต่ข้อมูลที่ส่งให้จะผ่านเซิร์ฟเวอร์ของผู้ทำ

ยังมีคนดูแลอยู่ไหม?

repo บน GitHub มีการแก้โค้ดล่าสุด 18 วันที่ผ่านมา และส่งรุ่นล่าสุด (0.1.0) เข้า registry 4 เดือนที่ผ่านมา

ใช้กับโปรแกรมไหนได้บ้าง?

โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต่อผ่าน URL จึงใช้กับโปรแกรมที่รับ remote MCP ได้ เช่น ChatGPT บนเว็บ (แบบเต็มในแผน Business ขึ้นไป · Pro แบบอ่านอย่างเดียว)

มีตัวไหนใช้แทนได้บ้าง?

ในหมวดเดียวกันมี World Monitor, openstatus, Oh My Posh Validator, Strata, Jitsu

ตัวอื่นที่ทำงานคล้ายกัน

หมวดเดียวกันจากผู้ทำคนอื่น ผ่านตัวตรวจคำสั่งแล้ว ตัวทางการขึ้นก่อน แล้วเรียงตามดาว

อ่านการ์ด:↓ ดาวน์โหลดต่อสัปดาห์i★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi

World Monitor

ข่าวกรองโลกแบบเรียลไทม์: ความขัดแย้ง ตลาด พลังงาน การค้า การขนส่ง และไซเบอร์

โดย koala73ใช้กันมาก★ 90.7Kอัปเดต เมื่อวาน

รันบนคลาวด์✓ เจ้าของบริการ · worldmonitor.app

openstatus

Manage monitors, status pages, incidents and maintenances in your openstatus workspace.

โดย openstatusHQใช้กันมาก★ 9.3Kอัปเดต 2 เดือนที่ผ่านมา

รันบนคลาวด์✓ เจ้าของบริการ · openstatus.dev

Oh My Posh Validator

Validate oh-my-posh configurations and segment snippets against the official schema.

โดย JanDeDobbeleerใช้กันมาก★ 23.8K ดาวรวมทั้งรีโปอัปเดต 26 วันที่ผ่านมา

รันบนคลาวด์✓ เจ้าของบริการ · ohmyposh.dev

Strata

MCP server for progressive tool usage at any scale (see https://klavis.ai)

โดย Klavis-AIกำลังโต★ 5.8Kอัปเดต 14 เดือนที่ผ่านมา

รันบนคลาวด์repo ถูกเก็บถาวร✓ klavis.ai

Jitsu

Manage Jitsu data pipelines: destinations, streams, connections, functions, live events.

โดย jitsucomใช้กันมาก★ 5.1Kอัปเดต 4 เดือนที่ผ่านมา

รันบนคลาวด์✓ เจ้าของบริการ · jitsu.com
  • World Monitor — ใช้บนคลาวด์ ไม่ต้องลงเครื่อง · ไม่ต้องใช้คีย์
  • openstatus — ใช้บนคลาวด์ ไม่ต้องลงเครื่อง · ไม่ต้องใช้คีย์
  • Oh My Posh Validator — ใช้บนคลาวด์ ไม่ต้องลงเครื่อง · ไม่ต้องใช้คีย์
  • Strata — ใช้บนคลาวด์ ไม่ต้องลงเครื่อง · ไม่ต้องใช้คีย์
  • Jitsu — ใช้บนคลาวด์ ไม่ต้องลงเครื่อง · ไม่ต้องใช้คีย์

README จากผู้ทำ

เปิดอ่าน README

ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ

identark

The AgentGateway Protocol — secure, scalable AI agent execution infrastructure.


The problem

When an AI agent can execute code, call APIs, or access files, it runs in a process. That process has an environment. That environment typically contains everything that can cause serious damage: LLM API keys, database credentials, AWS tokens.

The naive solution — run your agent on the same backend as your REST API — creates two problems at once:

  1. Security: The agent can access every secret on the machine.
  2. Reliability: A memory-hungry agent degrades your API. Redeploying your API kills all running agents.

identark solves both.


How it works

The SDK implements the AgentGateway Protocol — a clean interface between your agent logic and the outside world. Two implementations ship out of the box:

GatewayWhen to useCredentialsHistory
DirectGatewayLocal development, CI evalsYour API keyIn-memory
ControlPlaneGatewayProduction on IdentArkZero — none in the agentControl plane DB

Your agent code is identical in both environments. The switch is two lines.


Quick start

pip install identark[openai]
import asyncio

from openai import AsyncOpenAI from identark import DirectGateway, Message, Role

async def main(): gateway = DirectGateway( llm_client=AsyncOpenAI(), # Your API key — not in the agent loop model="gpt-4o", )

response = await gateway.invoke_llm( new_messages=[Message(role=Role.USER, content="Hello, IdentArk!")] )

print(response.message.content) print(f"Cost: ${response.cost_usd:.6f}")

asyncio.run(main())

Moving to production

Change two lines. Your agent logic is untouched.

# Before (local)

from identark import DirectGateway gateway = DirectGateway(llm_client=AsyncOpenAI(), model="gpt-4o")

After (production — agent holds zero secrets)

from identark import ControlPlaneGateway gateway = ControlPlaneGateway() # auto-detects env vars inside a IdentArk sandbox

Governed actions (payments, payment links, refunds)

The agent asks the control plane to act; the provider key (Stripe, Paystack, GitHub or AWS) stays in IdentArk. Grants, budgets and human approval apply before anything executes, and a reused idempotency key never acts twice.

request = await gateway.request_capability(

"payments.payment_link.create", "paystack", {"amount_minor": 1_500_000, "currency": "NGN", "customer_email": "buyer@example.com", "reference": "order-1001"}, idempotency_key="order-1001-link", )

"succeeded" returns the checkout link; "pending_approval" waits for a person.

execution = await gateway.get_capability_execution(request["request_id"])


Installation

# Core SDK only

pip install identark

With OpenAI support

pip install identark[openai]

With Anthropic support

pip install identark[anthropic]

With Google Gemini support

pip install identark[gemini]

With Mistral AI support (EU provider)

pip install identark[mistral]

All cloud providers

pip install identark[all]

Requirements: Python 3.10+

Using TypeScript? The parity SDK ships as the zero-runtime-dependency identark npm package, with the same AgentGateway contract and structured credential sessions.


Data Sovereignty

IdentArk is designed from the ground up to work with any LLM provider, including those that keep your data inside the UK or EU. The AgentGateway Protocol decouples your agent logic from the inference provider — switching providers requires changing one line.

Run fully local with Ollama (zero data egress)
from openai import AsyncOpenAI

from identark import DirectGateway

gateway = DirectGateway( llm_client=AsyncOpenAI( base_url="http://localhost:11434/v1", api_key="ollama", ), model="llama3.2", provider="local", # forces $0 cost tracking; inference stays on your machine )

Install Ollama: brew install ollama && ollama pull llama3.2 && ollama serve

Use Mistral AI (EU data residency)
from openai import AsyncOpenAI

from identark import DirectGateway

gateway = DirectGateway( llm_client=AsyncOpenAI( base_url="https://api.mistral.ai/v1", api_key="your-mistral-api-key", ), model="mistral-small-latest", # auto-detected as "mistral" provider )

Mistral AI is a French company. All inference runs in EU data centres, subject to EU data protection law (GDPR). Use this when UK/EU data governance requirements prohibit sending inference traffic to US-based cloud providers.

See examples/ for complete runnable scripts.


The AgentGateway Protocol

Any class implementing these four async methods is a valid gateway:

class AgentGateway(Protocol):

async def invoke_llm(self, new_messages, tools=None, tool_choice="auto") -> LLMResponse: ... async def persist_messages(self, messages) -> None: ... async def request_file_url(self, file_path, method="PUT") -> PresignedURL: ... async def get_session_cost(self) -> float: ...

Write your agent against the protocol. The implementation — local or production — is a runtime detail.


Features

  • Zero-secret agents — ControlPlaneGateway holds no API keys, database credentials, or cloud tokens
  • Stateless by design — conversation history owned by the gateway, not the agent; kill and restart without data loss
  • Framework-agnostic — works with LangChain, LlamaIndex, raw API calls, or any custom agent framework
  • Built-in cost tracking — every invoke_llm call returns cost_usd; get_session_cost() returns the running total
  • OpenAI + Anthropic — both providers supported in DirectGateway out of the box
  • MockGateway for testing — no LLM calls in your test suite; full call recording for assertions
  • Full type annotations — py.typed marker; works with mypy strict mode

Testing your agents

from identark.testing import MockGateway

from identark.models import LLMResponse, Message, Role

async def test_my_agent(): mock = MockGateway() mock.queue_response(LLMResponse( message=Message(role=Role.ASSISTANT, content="The answer is 42."), cost_usd=0.001, model="mock", finish_reason="stop", ))

result = await my_agent(gateway=mock)

assert mock.invoke_llm_call_count == 1 assert mock.total_messages_sent == 1


Supported providers

ProviderData residencyDirectGatewayGeminiGatewayControlPlaneGateway
OpenAI (gpt-4o, gpt-4o-mini, …)US✓—✓
Anthropic (Claude models)US✓—✓
Google GeminiVaries✓*✓Roadmap
Mistral AIVaries✓—✓
Kimi / MoonshotVaries✓*—✓
Azure OpenAIConfigured Azure region✓*—✓
AWS BedrockConfigured AWS region——✓
OpenRouterProvider-dependent✓*—✓
OllamaLocal 🏠✓—Not a hosted route
Any OpenAI-compatible endpointVaries✓—✓ (custom endpoint)

*Via an OpenAI-compatible client/base URL. Use GeminiGateway for native Gemini SDK features.


Error handling

from identark.exceptions import CostCapExceededError, RateLimitError, IdentArkError

try: response = await gateway.invoke_llm(new_messages=[...]) except CostCapExceededError as e: print(f"Cost cap of ${e.cap_usd} reached. Spent: ${e.consumed_usd}") except RateLimitError as e: await asyncio.sleep(e.retry_after_seconds) except IdentArkError as e:

Catch-all for any SDK error

raise

Full exception hierarchy: IdentArkError > GatewayError > ControlPlaneError > AuthenticationError | CostCapExceededError | SessionNotFoundError


Architecture

┌─────────────────────────────────────┐

│ Your Agent Code │ │ (depends only on AgentGateway) │ └──────────────┬──────────────────────┘ │ ┌──────────▼──────────┐ │ AgentGateway │ ← Protocol (interface) │ Protocol │ └──────┬────────┬──────┘ │ │ ┌────────▼─┐ ┌───▼──────────────┐ │ Direct │ │ ControlPlane │ │ Gateway │ │ Gateway │ │ │ │ │ │ Local / │ │ Production │ │ Evals │ │ (zero secrets) │ └──────────┘ └────────┬─────────┘ │ HTTP ┌────────▼─────────┐ │ IdentArk │ │ Control Plane │ │ (holds creds) │ └──────────────────┘


Community


Contributing

Contributions are welcome. Please open an issue before submitting significant changes.

git clone https://github.com/identark/identark.git

cd identark pip install -e ".[dev]" pre-commit install pytest tests/unit/

See CONTRIBUTING.md for full guidelines.


Roadmap

  • LangChain adapter (IdentArkChatModel)
  • LlamaIndex adapter (IdentArkLLM)
  • Streaming support (invoke_llm_stream)
  • CrewAI integration
  • LangGraph integration (IdentArkNode, IdentArkStreamNode)
  • Pluggable inference backends (distributed compute)
  • identark-cli for one-command control plane deployment

License

The IdentArk SDK is licensed under the MIT License — free for any use, including commercial and closed-source projects. See LICENSE.

The IdentArk control plane (hosted service) is proprietary. The SDK works with any AgentGateway backend, including fully self-hosted ones.


*Built on the control plane pattern described in How We Built Secure, Scalable Agent Sandbox Infrastructure.*