CCXT
Official CCXT MCP server - Market data and trading across 100+ exchanges and prediction markets
ยังไม่มีคำอธิบายภาษาไทย ดูข้อเท็จจริงด้านล่าง หรือเปิดคำอธิบายต้นฉบับจากผู้ทำ
Record AI decisions to a tamper-evident audit ledger from any MCP-compatible agent.เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
ผลตรวจผ่าน 3/3 · ทำงานบนเครื่องคุณ
ขั้นแรก: คุณใช้ AI ตัวไหน
เลือกแอปที่คุณใช้ ขั้นตอนจะขึ้นด้านล่าง
เปิดเว็บของผู้ทำ สมัครบัญชีแล้วสร้างคีย์ (API key) เก็บไว้ ใช้ในขั้นถัดไป ราคาและแผนฟรีดูที่เว็บของผู้ทำ
วิธีขอคีย์อยู่ใน README ของผู้ทำด้านล่าง
SettingsDeveloperEdit Config
กำลังตรวจคำสั่ง · ปุ่มคัดลอกจะขึ้นเมื่อตรวจผ่าน
วางคีย์ในช่องของแอปเท่านั้น อย่าวางในแชตหรือส่งให้ใคร
ใช้ Audit Ledger MCP บอกหน่อยว่าทำอะไรให้ฉันได้บ้าง แล้วลองทำให้ดูหนึ่งอย่าง✓ ถ้า Claude บอกว่ากำลังใช้ Audit Ledger MCP หรือมีชื่อเครื่องมือของ Audit Ledger MCP ขึ้นในคำตอบ แปลว่าต่อสำเร็จ
ชื่อเมนูตรวจกับหน้าช่วยเหลือของ Anthropic เมื่อ 11 พ.ย. 2569 · หน้าจอของคุณอาจต่างเล็กน้อยตามรุ่นของแอป
ChatGPT ยังต่อ Audit Ledger MCP ไม่ได้
Audit Ledger MCP ต้องติดตั้งในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะตัวที่ทำงานบนเว็บ
ก · ใช้แอปที่ต่อ Audit Ledger MCP ได้
ข · ตัวอื่นในหมวด บัญชี การเงิน และภาษี ที่ต่อกับ ChatGPT ได้
เลือกจากตัวที่ใช้มากในหมวดเดียวกัน เฉพาะตัวที่ต่อด้วยที่อยู่ได้โดยไม่ต้องใส่คีย์
ต่อกับ Claude Code ได้ แต่ต้องเตรียมก่อน
ต้องมีคีย์ของ Audit Ledger MCP (สร้างที่เว็บของผู้ทำ) · ต้องลง Node.js ในเครื่องก่อน (ทำครั้งเดียว)
เปิดเว็บของผู้ทำ สมัครบัญชีแล้วสร้างคีย์ (API key) เก็บไว้ ใช้ในขั้นถัดไป ราคาและแผนฟรีดูที่เว็บของผู้ทำ
วิธีขอคีย์อยู่ใน README ของผู้ทำด้านล่าง
Mac: กด Command+Space พิมพ์ Terminal · Windows: เปิด PowerShell
กำลังตรวจคำสั่ง · ปุ่มคัดลอกจะขึ้นเมื่อตรวจผ่าน
แก้ “ใส่ค่าของคุณ” เป็นคีย์ของคุณก่อนกด Enter
วางคีย์ในช่องของแอปเท่านั้น อย่าวางในแชตหรือส่งให้ใคร
ต้องเห็น Audit Ledger MCP ในรายการและขึ้นว่าเชื่อมต่อแล้ว
ใช้ Audit Ledger MCP บอกหน่อยว่าทำอะไรให้ฉันได้บ้าง แล้วลองทำให้ดูหนึ่งอย่าง✓ ถ้า Claude Code บอกว่ากำลังใช้ Audit Ledger MCP หรือมีชื่อเครื่องมือของ Audit Ledger MCP ขึ้นในคำตอบ แปลว่าต่อสำเร็จ
ชื่อเมนูตรวจกับหน้าช่วยเหลือของ Anthropic เมื่อ 11 พ.ย. 2569 · หน้าจอของคุณอาจต่างเล็กน้อยตามรุ่นของแอป
ต่อกับ Cursor ได้ แต่ต้องเตรียมก่อน
ต้องมีคีย์ของ Audit Ledger MCP (สร้างที่เว็บของผู้ทำ) · ต้องลง Node.js ในเครื่องก่อน (ทำครั้งเดียว)
เปิดเว็บของผู้ทำ สมัครบัญชีแล้วสร้างคีย์ (API key) เก็บไว้ ใช้ในขั้นถัดไป ราคาและแผนฟรีดูที่เว็บของผู้ทำ
วิธีขอคีย์อยู่ใน README ของผู้ทำด้านล่าง
กำลังตรวจคำสั่ง · ปุ่มคัดลอกจะขึ้นเมื่อตรวจผ่าน
ในค่าตั้งของ Audit Ledger MCP ช่อง AUDIT_API_URL, AUDIT_WRITE_KEY, AUDIT_READ_KEY, AUDIT_TIMEOUT_MS, AUDIT_RETRY_ATTEMPTS, AUDIT_HMAC_KEY ยังว่าง ใส่คีย์ของคุณแล้วบันทึก
วางคีย์ในช่องของแอปเท่านั้น อย่าวางในแชตหรือส่งให้ใคร
ใช้ Audit Ledger MCP บอกหน่อยว่าทำอะไรให้ฉันได้บ้าง แล้วลองทำให้ดูหนึ่งอย่าง✓ ถ้า Cursor บอกว่ากำลังใช้ Audit Ledger MCP หรือมีชื่อเครื่องมือของ Audit Ledger MCP ขึ้นในคำตอบ แปลว่าต่อสำเร็จ
ชื่อเมนูตรวจกับหน้าช่วยเหลือของ Cursor เมื่อ 11 พ.ย. 2569 · หน้าจอของคุณอาจต่างเล็กน้อยตามรุ่นของแอป
ต่อกับ VS Code ได้ แต่ต้องเตรียมก่อน
ต้องมีคีย์ของ Audit Ledger MCP (สร้างที่เว็บของผู้ทำ) · ต้องลง Node.js ในเครื่องก่อน (ทำครั้งเดียว)
เปิดเว็บของผู้ทำ สมัครบัญชีแล้วสร้างคีย์ (API key) เก็บไว้ ใช้ในขั้นถัดไป ราคาและแผนฟรีดูที่เว็บของผู้ทำ
วิธีขอคีย์อยู่ใน README ของผู้ทำด้านล่าง
กำลังตรวจคำสั่ง · ปุ่มคัดลอกจะขึ้นเมื่อตรวจผ่าน
ในค่าตั้งของ Audit Ledger MCP ช่อง AUDIT_API_URL, AUDIT_WRITE_KEY, AUDIT_READ_KEY, AUDIT_TIMEOUT_MS, AUDIT_RETRY_ATTEMPTS, AUDIT_HMAC_KEY ยังว่าง ใส่คีย์ของคุณแล้วบันทึก
วางคีย์ในช่องของแอปเท่านั้น อย่าวางในแชตหรือส่งให้ใคร
ใช้ Audit Ledger MCP บอกหน่อยว่าทำอะไรให้ฉันได้บ้าง แล้วลองทำให้ดูหนึ่งอย่าง✓ ถ้า VS Code บอกว่ากำลังใช้ Audit Ledger MCP หรือมีชื่อเครื่องมือของ Audit Ledger MCP ขึ้นในคำตอบ แปลว่าต่อสำเร็จ
ชื่อเมนูตรวจกับหน้าช่วยเหลือของ VS Code เมื่อ 11 พ.ย. 2569 · หน้าจอของคุณอาจต่างเล็กน้อยตามรุ่นของแอป
โปรแกรมอื่นที่ใช้ MCP ได้ เช่น Windsurf, Zed หรือ Gemini CLI มีวิธีเพิ่มต่างกัน ดูวิธีของแต่ละตัวในหน้ารวมโปรแกรม
ค่าตั้งแบบไฟล์ JSON อยู่ในหัวข้อ “สำหรับคนเขียนโค้ด” ด้านล่าง
Claude Code
กำลังตรวจคำสั่ง · ปุ่มคัดลอกจะขึ้นเมื่อตรวจผ่าน
Claude Desktop (claude_desktop_config.json)
กำลังตรวจคำสั่ง · ปุ่มคัดลอกจะขึ้นเมื่อตรวจผ่าน
Cursor (~/.cursor/mcp.json)
กำลังตรวจคำสั่ง · ปุ่มคัดลอกจะขึ้นเมื่อตรวจผ่าน
VS Code (mcp.json)
กำลังตรวจคำสั่ง · ปุ่มคัดลอกจะขึ้นเมื่อตรวจผ่าน
AUDIT_API_URL envAUDIT_WRITE_KEY ความลับ envAUDIT_READ_KEY ความลับ envAUDIT_TIMEOUT_MS envAUDIT_RETRY_ATTEMPTS envAUDIT_HMAC_KEY ความลับ envค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
ดูจากแบบการต่อของ server ตัวนี้ และเอกสารของผู้ทำโปรแกรมแต่ละตัว ตรวจเมื่อ 10 พ.ย. 2569
ติดตั้งบนเครื่องได้ใน
ClaudeGooseLM StudioMsty StudioCherry StudioCursorVS Code + GitHub CopilotVisual StudioWindsurf (Devin Desktop)ZedKiroClineContinueJetBrains AI AssistantClaude CodeCodex CLIGemini CLIOpenCodenodecodeWarpLibreChatRaycast
รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 13 พ.ย. 2569
ชื่อใน registry ยืนยันด้วยบัญชี GitHub shahidh68 ซึ่งเป็นเจ้าของ repo
มีการแก้โค้ดล่าสุด 4 เดือนที่ผ่านมา
ใช้ Apache-2.0
ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต
ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน
รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต
ถาม แชร์เคล็ดลับ หรือแจ้งว่าใช้ไม่ได้ เรียงตามที่คนกดว่ามีประโยชน์
ยังไม่มีใครโพสต์ ถามหรือแชร์เป็นคนแรกได้เลย
ข้อความในส่วนนี้เขียนโดยผู้ใช้ ไม่ใช่ทีม PopNx
ยังไม่มีรีวิว
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
จากการตรวจเบื้องต้นของเรา ผ่าน 3 จาก 3 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
ต้องใส่ค่าเหล่านี้: AUDIT_WRITE_KEY, AUDIT_READ_KEY, AUDIT_HMAC_KEY
รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)
repo บน GitHub มีการแก้โค้ดล่าสุด 4 เดือนที่ผ่านมา และส่งรุ่นล่าสุด (0.3.1) เข้า registry 5 เดือนที่ผ่านมา
โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต้องมี Node.js ในเครื่องด้วย
ในหมวดเดียวกันมี CCXT, Finance Toolkit, AKQuant
server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว
อ่านการ์ด:↓ ดาวน์โหลดต่อสัปดาห์i★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi
ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
Connect Claude, Cursor, LangGraph, or your own agent to the [AI Audit Ledger](https://github.com/shahidh68/audit-ledger). This MCP server gives an agent the tools to record, check, and list decisions in a tamper-evident log with one line of config.
It is built for teams that need a clear record of AI decisions: EU AI Act Article 12 logging, FCA SS1/23 model risk evidence, and GDPR data minimisation. Raw personal data is hashed locally before anything is sent, so the ledger only sees fingerprints.
The AI Audit Ledger family. This MCP server writes decisions to the
ledger, which proves what happened
and whether the record was changed. The
above the ledger, read-only. It turns each lightweight decision record into an
audit case file by showing what evidence is present, what is still missing, who
owns each gap, and the current readiness score. Family:
audit-ledger · audit-ledger-mcp ·
[Try the live dashboard →](https://d2pfirb2397ixy.cloudfront.net/?demo=1) · 30 synthetic decisions written via this MCP server, queryable and verifiable.
A LangGraph workflow calls
record_decisionafter each agent step. Three audit events written to the live ledger; every one independently verifiable.
Exposes four tools to any MCP-compatible agent:
| Tool | What it does |
|---|---|
record_decision | Log an AI decision. Hashes inputs locally, then writes through to the ledger. Returns an event ID. |
verify_decision | Cross-check a stored record against the immutable S3 Object Lock copy. Returns integrity_verified: true/false. |
verify_completeness | Detect deleted or missing records. Compares the ledger's per-tenant counter against the rows actually present and returns any sequence numbers that are gone. The answer to "can you prove the log is complete?" |
list_decisions | Query recent decisions, optionally filtered by time window. Tenant-scoped by API key. |
Each call ends up as a regulator-grade audit record in your deployed ledger — DynamoDB for query, S3 Object Lock COMPLIANCE mode for the immutable copy, 7-year retention by default.
npx -y audit-ledger-mcp
That's it. With no environment variables, the server boots into sandbox mode and writes records to a shared public tenant on a hosted ledger. You can try every tool — record_decision, verify_decision, verify_completeness, list_decisions — without provisioning anything.
When sandbox mode is active, you'll see a banner on stderr:
[audit-ledger-mcp] ─────────────── SANDBOX MODE ───────────────
[audit-ledger-mcp] No AUDIT_API_URL configured. [audit-ledger-mcp] Using the public sandbox at sandbox-public. [audit-ledger-mcp] View: https://d2pfirb2397ixy.cloudfront.net [audit-ledger-mcp] Do NOT write real personal data...
| Hosted by | github.com/shahidh68/audit-ledger (same AWS deployment) |
| Tenant | sandbox-public (shared, public) |
| Rate limit | 100 requests/minute per IP |
| Retention | 7 years (records cannot be deleted) |
| Audience | Tyre-kickers, integration tests, framework demos |
| NOT for | Production data, customer PII, real compliance records |
{
"mcpServers": { "audit-ledger-sandbox": { "command": "npx", "args": ["-y", "audit-ledger-mcp"] } } }
Restart Claude Desktop. The four tools appear in the MCP menu immediately. Try asking Claude to "record this decision: should X be approved?" and watch a record land in the sandbox dashboard.
For real workloads, deploy your own audit ledger and point the MCP server at it:
npm install -g audit-ledger-mcp
Configure with the API URL plus your tenant keys (any of them being set switches off sandbox mode). AUDIT_HMAC_KEY is technically optional for backwards compatibility but strongly recommended — see the note above the value below:
export AUDIT_API_URL="https://<api-id>.execute-api.<region>.amazonaws.com/prod"
export AUDIT_WRITE_KEY=" " export AUDIT_READ_KEY=" "
export AUDIT_HMAC_KEY=" "
export AUDIT_TIMEOUT_MS=5000 # default 5000 export AUDIT_RETRY_ATTEMPTS=3 # default 3
The full template lives in .env.example.
Edit your claude_desktop_config.json (macOS: ~/Library/Application Support/Claude/claude_desktop_config.json, Windows: %APPDATA%\Claude\claude_desktop_config.json):
{
"mcpServers": { "audit-ledger": { "command": "npx", "args": ["-y", "audit-ledger-mcp"], "env": { "AUDIT_API_URL": "https:// .execute-api. .amazonaws.com/prod", "AUDIT_WRITE_KEY": " ", "AUDIT_READ_KEY": " ", "AUDIT_HMAC_KEY": " " } } } }
AUDIT_HMAC_KEY is the tenant secret used to keyed-hash PII locally before any payload leaves the MCP server process. Generate it once with node -e "console.log(require('crypto').randomBytes(32).toString('hex'))" and store the result in the env block above. The MCP never transmits this value, only reads it.
Restart Claude Desktop. You'll see "audit-ledger" in the MCP tools menu. Ask Claude something like *"Record this decision: I declined the application because…"* and watch it call record_decision automatically.
In Cursor settings → MCP → add server:
{
"mcpServers": { "audit-ledger": { "command": "npx", "args": ["-y", "audit-ledger-mcp"], "env": { "AUDIT_API_URL": "https:// .execute-api. .amazonaws.com/prod", "AUDIT_WRITE_KEY": " ", "AUDIT_READ_KEY": " ", "AUDIT_HMAC_KEY": " " } } } }
Using langchain-mcp-adapters:
from langchain_mcp_adapters.client import MultiServerMCPClient
from langgraph.prebuilt import create_react_agent from langchain_anthropic import ChatAnthropic import os
client = MultiServerMCPClient({ "audit-ledger": { "command": "npx", "args": ["-y", "audit-ledger-mcp"], "transport": "stdio", "env": { "AUDIT_API_URL": os.environ["AUDIT_API_URL"], "AUDIT_WRITE_KEY": os.environ["AUDIT_WRITE_KEY"], "AUDIT_READ_KEY": os.environ["AUDIT_READ_KEY"], "AUDIT_HMAC_KEY": os.environ["AUDIT_HMAC_KEY"], }, } })
tools = await client.get_tools() agent = create_react_agent( ChatAnthropic(model="claude-sonnet-4-7-20251022"), tools, )
result = await agent.ainvoke({ "messages": [{"role": "user", "content": "Triage this loan application…"}] })
AUDIT_API_URL=... AUDIT_WRITE_KEY=... AUDIT_READ_KEY=... AUDIT_HMAC_KEY=... npx -y audit-ledger-mcp
The server speaks MCP over stdio. Send initialize, tools/list, and tools/call requests per the MCP specification.
record_decision call flowsAgent audit-ledger-mcp AWS (your ledger)
| raw_user_input | (hash locally — no PII over |
| raw_system_prompt | the wire from this point) |
| decision_output | |
| human_in_loop | |
| --- HTTPS POST /audit/events ---> | |
| {hashes + decision + | |
| x-api-key} | |
| <--- 202 Accepted --------------- | |
| { event_id, ... } | |
| <--- event_id ------------ | |
| recorded_at | |
| note |
Storage on the AWS side happens asynchronously through SQS → Processor Lambda → DynamoDB + S3 Object Lock. See the main repo's ARCHITECTURE.md for the full path.
record_decisionRecord an AI decision to the ledger.
| Parameter | Type | Required | Notes |
|---|---|---|---|
model_version | string | Yes | e.g. "claude-sonnet-4-7-20251022" |
raw_system_prompt | string | Yes | Hashed locally |
raw_user_input | string | Yes | Hashed locally |
ai_decision_output | object | Yes | Stored verbatim — must not contain raw PII |
human_in_loop | boolean | Yes | Critical for EU AI Act Article 14 |
event_id | uuid v4 | No | Auto-generated if omitted |
timestamp | ISO 8601 | No | Defaults to now |
verify_decisionTamper-check a stored record.
| Parameter | Type | Required | Notes |
|---|---|---|---|
event_id | uuid v4 | Yes | The ID of the record to verify |
Returns the DynamoDB record, the S3 record, and integrity_verified: true/false.
verify_completenessDetect missing records. Sister tool to verify_decision: that one proves a record that exists has not been altered; this one proves no records have been deleted.
| Parameter | Type | Required | Notes |
|---|---|---|---|
from | integer | No | Inclusive lower bound on sequence_no. Defaults to 1. |
to | integer | No | Inclusive upper bound on sequence_no. Defaults to the tenant's current counter. |
tenant_id | string | No | Required only with the admin read key; ignored otherwise. |
Returns the requested range, the expected vs found count, the list of missing sequence numbers, and a human-readable note.
{
"tenant_id": "acme-prod", "range": { "from": 1, "to": 142 }, "expected_count": 142, "found_count": 140, "missing": [47, 91], "note": "Found 2 missing sequence number(s) in range. Each gap represents a deleted, lost, or never-written record. Cross-check against burned_sequence log entries before treating as a deletion." }
list_decisionsList recent decisions for the calling tenant.
| Parameter | Type | Required | Notes |
|---|---|---|---|
from | ISO 8601 | No | Defaults to 7 days ago |
to | ISO 8601 | No | Defaults to now |
limit | integer 1–500 | No | Defaults to 100 |