Zcash Mcp

io.github.Zk-nd3r由 GitHub 帳號 Zk-nd3r 發布v0.2.2更新於 Oct 24, 2026

Zcash shielded operations for AI agents. Memo decoding, attestation, proof verification.

概覽

AI 產生的概覽

讓助理為 Zcash 工作流程建立、錨定並驗證 ZAP1 存證收據,同時可解碼備註並查詢鏈上資料。

可以做什麼
向代理開放 ZAP1 存證層:建立具型別的存證葉片(attest_event)、查詢錨定狀態與歷史、取得 Merkle 證明包並驗證證明,包含 receipt-v2 證明包與 EVM 鏈上驗證。另提供代理動作、付款、營運生命週期事件與政策聲明的收據範本,以及錢包動作收據請求、收據比對與稽核工具、代理身分註冊與信譽查詢。唯讀鏈上工具涵蓋區塊高度、交易查詢與 Zcash 備註解碼。
適用情境
當代理需要為某項 Zcash 相關動作產生可驗證收據、供他方日後在不信任原代理的情況下核驗時適用,例如付款證明包、錢包動作收據、跨代理交接、合規與補助稽核包。它不是錢包:不保管金鑰、不掃描餘額、不簽署 PCZT,也不廣播屏蔽交易。
執行需求
透過 npx @frontiercompute/zcash-mcp 以 stdio 在本機執行(需要 Node.js)。鏈上查詢需要執行中的 Zebra 節點(ZEBRA_RPC_URL,預設 ZAP1 API(ZAP1_API_URL)。寫入操作需要 ZAP1_API_KEY,唯讀工具不需要。備註解碼在本機完成。
安裝前請注意
寫入操作需要密鑰 ZAP1_API_KEY,該密鑰會傳送給 ZAP1 API。存證、錨定與收據發票工具會向該第三方服務寫入資料,收據發票監看會輪詢直到付款或逾時。此伺服器明確不涉及保管、種子處理、餘額掃描、PCZT 簽署與屏蔽花費建構,也不稽核或保證收據所引用的任何外部錢包、付款、跨鏈橋或結算系統。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Zcash Mcp,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

zcash-mcp

[npm] [MCP Registry] [downloads] [license]

ZAP1 receipts for Zcash agents: verify workflows without trusting the server.

ZAP1 is an attestation and proof rail for Zcash workflows. Frontier Compute maintains the reference ZAP1 implementation.

A wrapper makes you trust the server. ZAP1 makes the server unnecessary to trust.

Core rule: observe state, bound the claim, hash evidence, issue a receipt, verify later.

MCP is the standard way for AI agents to call external tools. zcash-mcp exposes the ZAP1 attestation layer for agents that need verifiable receipts around Zcash workflows: create ZAP1 attestation leaves, query anchor state, and verify proof receipts.

This is not a full wallet MCP. Balance scanning, private key custody, seed handling, PCZT signing, shielded spend construction, and lightwalletd or Zaino wallet synchronization are complementary wallet-layer work, not this server's scope.

Why ZAP1

Wallet MCPs can move value. ZAP1 proves the workflow around the value, and the counterparty can verify the proof without trusting Frontier.

Tool servers expose what a backend says right now. ZAP1 produces a receipt that another party can verify later from the schema, proof material, and Zcash anchor.

ZAP1 is the proof rail for Zcash agent workflows:

  1. attest: create a typed event leaf.
  2. anchor: commit leaves into a Merkle root anchored to Zcash.
  3. prove: return a receipt packet for a leaf.
  4. verify: let another party check the receipt without trusting the original agent.

Agent systems need more than a payment or a transaction lookup. They need a receipt that another agent, user, auditor, or service can verify later:

  • what event was asserted
  • which agent or workflow asserted it
  • which ZAP1 leaf records it
  • which Merkle root includes it
  • which Zcash transaction anchored that root
  • how to verify the proof without trusting the original agent

That is the lane for this server. It gives Zcash agents a receipt layer that can sit beside any wallet, signer, custody system, lightwalletd stack, Zaino stack, or application-specific payment flow.

See ZAP1 Proof Rail for the category boundary, receipt model, integration pattern, and red-team rejects. See ZAP1 Conformance for the receipt contract agents and integrations should satisfy. See Wallet Receipt Integration for the wallet-action handoff pattern. See External Rail Receipts for generic external-action receipt requests, and Receipt Disclosure Profiles for public, counterparty, auditor, grant, compliance, and internal packet shapes.

Capability Boundary

The zcash_capability_manifest tool gives agents a machine-readable scope map:

  • covered here: ZAP1 receipts, lifecycle attestations, proof verification, anchor state, memo decoding, and public chain context
  • excluded here: custody, seed handling, balance scanning, PCZT signing, shielded spend construction, and wallet-server synchronization
  • composition rule: use this server before or after wallet-layer actions to create, query, and verify receipts

Good fits:

  • agent action receipts
  • payment and invoice proof packets
  • wallet action receipts
  • external action receipts
  • operator lifecycle events
  • grant proof packets
  • compliance audit packets
  • policy and reputation attestations
  • public anchor verification for private workflows
  • cross-agent handoffs where the receiver needs proof, not custody

Poor fits:

  • holding keys
  • scanning wallet balances
  • signing PCZTs
  • broadcasting shielded spends
  • replacing a wallet SDK

Customer Flow

Use zcash_receipt_template first when you are wiring ZAP1 into a product. It returns a customer-ready workflow for the receipt type you want:

  • agent_action: prove an agent performed a named action with specific input and output hashes
  • payment_receipt: bind invoice or payment metadata to a ZAP1 leaf and later prove inclusion under an anchored root
  • operator_lifecycle: record deployment, upgrade, incident, recovery, or policy state as a verifiable lifecycle event
  • policy_attestation: record an agent, service, or workflow policy decision as a verifiable event

Expected flow:

  1. Call zcash_capability_manifest to confirm the attestation boundary.
  2. Call zcash_receipt_template for the use case.
  3. For wallet actions, call zap1_wallet_receipt_request to convert the wallet result into hash-only attest_event arguments.
  4. Call attest_event to create the typed ZAP1 leaf.
  5. Call get_anchor_status to check whether the leaf is anchored or waiting.
  6. Call verify_proof to verify tree inclusion.
  7. Call zap1_prove_receipt to fetch a handoff proof bundle.

Acceptance checks:

  • the receipt has a leaf hash
  • the leaf verifies under a returned Merkle root
  • v2 receipts retain every sibling position and the committed leaf_count
  • anchor finality comes from a separately verified root-opening artifact, not txid, height, or status metadata alone
  • another verifier can repeat verification without trusting the original agent
  • no private keys, seeds, PCZTs, or wallet scan state were sent to this server

Red-team rejects:

  • treating a payment URI as proof of payment
  • treating an unanchored leaf as final settlement evidence
  • treating a quote, route, or intent hash as settlement evidence by itself
  • asking this server to sign, scan balances, recover seeds, or hold keys
  • mixing custody claims into ZAP1 receipt claims
  • hiding the distinction between wallet action and receipt verification

ZAP1 verifies ZAP1 receipts. It does not audit or guarantee any external wallet, route, payment, bridge, exchange, or settlement system referenced by a receipt.

Tools

ToolWhat it does
zcash_capability_manifestMachine-readable scope map for agent use: covered surfaces, excluded wallet functions, and composition rules
zcash_conformance_checkValidate only the shape of a frozen v1 receipt packet; v1 cannot prove inclusion or anchor confirmation
zcash_receipt_templateCustomer-ready receipt workflow for agent actions, payment receipts, operator lifecycle events, and policy attestations
zap1_wallet_receipt_requestConvert a wallet-layer action result into hash-only ZAP1 receipt request fields
zap1_attest_external_actionMap bounded external verification evidence into the supported ZAP1 AGENT_ACTION write contract and precompute the expected typed leaf
zap1_verify_external_receiptValidate legacy v1 external-receipt shape without claiming cryptographic inclusion or anchor confirmation
zap1_verify_receipt_v2Verify the official proof-bundle-v2 plus retained AGENT_ACTION witness, or an integration receipt-v2; anchor confirmation remains separate
zap1_extract_proof_artifactExtract the portable proof artifact from a ZAP1 receipt
zap1_check_anchor_freshness_at_heightCompute depth arithmetic from supplied heights without claiming chain confirmation
zap1_verify_receipt_chainValidate legacy v1 receipt-sequence shape without claiming proof or anchor validity
zap1_compare_receipt_claimsCompare two ZAP1 receipts for claim, evidence, event, and anchor divergence
zap1_audit_event_logReplay a receipt sequence against a caller-supplied event-type policy
attest_eventCreate a typed ZAP1 attestation leaf for later anchoring
verify_proofVerify a ZAP1 Merkle proof
zap1_prove_receiptFetch the full Merkle proof bundle for a leaf hash
get_anchor_historyAll ZAP1 Merkle root anchors with txids and block heights
get_anchor_statusCurrent Merkle tree state: root, unanchored leaves, recommendation
get_statsZAP1 protocol stats: leaves, anchors, types
get_eventsRecent ZAP1 attestation events with type, wallet hash, leaf hash
get_agent_statusAttestation summary for a ZAP1 agent ID
zcash_identity_registerRegister an agent identity via AGENT_REGISTER attestation
zcash_reputation_scoreFetch agent bond data and policy compliance as a reputation object
decode_memoDecode Zcash memo payloads: ZAP1 typed, ZIP 302, text, binary
zap1_create_receipt_invoiceCreate ZAP1 receipt metadata for an external payment workflow
zap1_watch_receipt_invoicePoll receipt-invoice status until paid or timeout
get_block_heightCurrent chain height from Zebra
lookup_transactionRaw transaction data by txid
zap1_verify_evmVerify a ZAP1 Merkle proof on-chain via EVM contract

Install

bash
npx @frontiercompute/zcash-mcp

Or install globally:

bash
npm install -g @frontiercompute/zcash-mcp

Quickstart

Add this to your MCP config:

json
{  "mcpServers": {    "zcash": {      "command": "npx",      "args": ["@frontiercompute/zcash-mcp"]    }  }}

Restart your client and ask for the current Zcash block height. Read-only tools do not need an API key.

Get a trial key for write operations:

bash
curl -s -X POST https://api.frontiercompute.cash/trial-key

Configuration

Environment variables:

VariableDefaultDescription
ZEBRA_RPC_URLhttp://127.0.0.1:8232Zebra node JSON-RPC endpoint
ZAP1_API_URLhttps://api.frontiercompute.cashZAP1 attestation API
ZAP1_API_KEYnoneAPI key for write operations

Claude Desktop

Add to ~/Library/Application Support/Claude/claude_desktop_config.json:

json
{  "mcpServers": {    "zcash": {      "command": "npx",      "args": ["@frontiercompute/zcash-mcp"],      "env": {        "ZEBRA_RPC_URL": "http://127.0.0.1:8232",        "ZAP1_API_KEY": "your-key-here"      }    }  }}

Any MCP Client

The server communicates over stdio using JSON-RPC. Point your MCP client at the zcash-mcp binary.

Build From Source

bash
git clone https://github.com/Frontier-Compute/zcash-mcp.gitcd zcash-mcpnpm cinpm run buildnode dist/index.js

Testing

Offline verification covers the built stdio server and a clean-room install from the packed npm tarball:

bash
npm run test:offline

Live verification hits a real Zebra RPC and ZAP1 API:

bash
ZEBRA_RPC_URL=http://127.0.0.1:8232 \ZAP1_API_URL=http://127.0.0.1:3080 \ZAP1_API_KEY=your-key-here \npm run test:live

test:live drives the MCP server over stdio and exercises the live tool surface, not just the underlying HTTP endpoints. Set ZAP1_AGENT_ID if you want the get_agent_status check to target a specific deployed agent.

GitHub Actions mirrors that split:

  • .github/workflows/offline-ci.yml runs deterministic packaging and MCP handshake checks on every push and pull request.
  • .github/workflows/live-e2e.yml runs secret-backed live checks on main, on a schedule, and by manual dispatch.

Dependencies

  • A running Zebra node for chain queries
  • The ZAP1 API for attestation, proof, anchor, event, and receipt tools
  • Memo decoding works locally with no external dependencies

Related Packages

PackageWhat it does
@frontiercompute/zcash-ikaZcash and Bitcoin signing via Ika 2PC-MPC
@frontiercompute/openclaw-zap1OpenClaw skill for ZAP1 attestation
@frontiercompute/zap1ZAP1 attestation client
@frontiercompute/silo-zap1Silo agent attestation via ZAP1

Links

License

MIT

來源:README.md,提交 5e49844

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

1
  1. v0.2.2最新Sep 16, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分