zcash-now
Provides AI coding agents with current Zcash information and testnet/mainnet tooling: dated facts on upgrades, pools, addresses, endpoints, faucets, explorers, SDK support, fees and payments; verified recipes; lint checks for stale Zcash patterns and privacy leaks; and live transaction status via lightwalletd.
This server does not currently have a deployable release on Glama. Follow the repository's setup instructions to install and configure it for your MCP client, including any required credentials and local dependencies.
zcash-now
A keyless MCP server and llms.txt that keep AI coding agents current on Zcash, so a developer new to Zcash gets code that works on today's NU7 testnet the first time.
AI coding agents trained before mid-2026 write code for a Zcash that no longer exists:
They reach for the Orchard pool. Orchard has accepted withdrawals only since NU6.3 (Ironwood) on 28 Jul 2026.
They assume 75-second blocks. NU7 has been live on testnet since height 4,465,026, with 25-second blocks and v4 transactions invalid.
They connect to
lightwalletd.testnet.electriccoin.co(dead), install WebZjs (not on npm, no Ironwood) orzeclifrom crates.io (its addresses can't receive funds).
zcash-now gives the agent dated, sourced facts, recipes proven on testnet, a lint for stale patterns and privacy leaks, and a live transaction check. It never touches keys or funds.
Install
Claude Code:
claude mcp add zcash-now -- npx -y zcash-now-mcpCursor, Claude Desktop and other MCP clients:
{ "mcpServers": { "zcash-now": { "command": "npx", "args": ["-y", "zcash-now-mcp"] } } }From a clone, before the npm package is published:
npm install && npm run build
claude mcp add zcash-now -- node "$PWD/dist/src/cli.js"Agents without MCP can read docs/llms.txt, served by GitHub Pages at https://<user>.github.io/zcash-now/llms.txt.
Related MCP server: ForkMind
What the agent gets
Tool | What it does | Network use |
| Facts on upgrades, pools, addresses, endpoints, faucets, explorers, SDK support, fees and payments. Each has a source and a check date. Adds a live probe: height and consensus branch, mapped to the upgrade. |
|
| Step-by-step recipes with commands, expected output, gotchas, a privacy section and an honest verification status. | none |
| Twelve lint rules for stale Zcash patterns and privacy leaks, each finding linked to its fact. | none |
| Mempool, mined with confirmations, fork or not found, plus transaction version and upgrade. |
|
Also exposed: resources zcash://llms.txt, zcash://facts and zcash://recipes/{id}, and a prompt, zcash-builder, that tells the agent to call zcash_now first, follow a recipe and lint what it writes.
Every tool runs behind a secret guard. It refuses seed phrases (12 or more consecutive BIP-39 words) and Zcash or age key encodings, so a pasted key never reaches a handler or a reply.
Example
Write a script that sends 0.01 TAZ shielded to utest1… with the memo "order 7f3a" on testnet.
The agent calls
zcash_nowand learns that testnet is on NU7, the server istestnet.zec.rocks:443, and new funds go to Ironwood.It calls
zcash_recipewithsend-shieldedand writes the zcash-devtool commands from it.It runs
zcash_checkon its script. A fixed fee or a transparent funding source would be flagged.The script sends; the agent calls
zcash_tx_statusuntil the payment is mined, then confirmed.
Verified so far (4 Nov 2026)
npm test: 32 unit tests for the guard, the lint rules, ZIP 321 links, txid handling and the data files.npm run smoke: a real MCP client starts the server over stdio and calls every tool, resource and prompt against live testnet.Live probes:
testnet.zec.rocks:443on consensus branch77190ad9(NU7),zec.rocks:443on mainnet, and both old testnet servers dead.zcash_tx_statusfound a known testnet payout using the internal byte order: version 6, NU7, mined.zcash-devtool built from source, made a testnet wallet, synced NU7 testnet and reported Ironwood balances. A view-only wallet made with
init-fvksynced and listed transactions as CSV.
Recipe | Status | What is still missing |
send-shielded (cli) | verified | Nothing: 0.1 TAZ sent to Noir Wallet in |
watch-payments (cli) | partial | A payment to detect |
get-test-coins (cli) | verified | Nothing: Fauzec sent 1 TAZ into Ironwood in |
payment-link (node) | partial | A wallet paying a generated link |
noir-connect-send (react) | unverified | Blocked: Noir's testnet build fails to send on NU7 ("incorrect consensus branch id"); receiving works |
Privacy and trust note
What stays private? zcash-now never asks for, stores or sends keys, seed phrases or balances; the secret guard refuses them. Its recipes keep amounts, senders and receivers shielded on-chain, fund from shielded balances and give servers viewing keys only.
What does it reveal, and to whom? The light-wallet server operator (zec.rocks by default) sees your IP address, when each lookup happens and any transaction ID you check. GitHub sees who fetches llms.txt. The AI model provider sees your prompts, code and transaction IDs, as with any agent work.
What must users trust? The maintainers to keep facts accurate (each links its source and check date), zec.rocks to answer honestly (an explorer can cross-check it), npm and GitHub to serve the package unmodified, and the AI provider with whatever enters the chat.
What would we fix next? Route lookups over Nym so the server can't see the developer's IP. Sign
facts.jsonreleases. Re-run every recipe on testnet on a schedule. Extend the guard to transparent private keys. The guard can't undo a key already pasted into a chat; it only stops zcash-now processing or echoing it.
Technologies
TypeScript 7 on Node.js 24, ES modules
MCP TypeScript SDK v2 (
@modelcontextprotocol/server,@modelcontextprotocol/clientfor the smoke test), stdio transportzod 4 for tool schemas
@grpc/grpc-jsand@grpc/proto-loaderwith lightwalletd'sservice.protoandcompact_formats.protofrom librustzcash@scure/bip39English wordlist for seed-phrase detectionzcash-devtool (Rust, librustzcash) to prove the CLI recipes; Noir Wallet SDK for the web recipe
Node's built-in test runner
GitHub Actions (CI and a daily freshness job) and GitHub Pages (llms.txt)
The llms.txt format from llmstxt.org, ZIP 317 fees and ZIP 321 payment links
Design decisions
Keyless. Payments go through zcash-devtool or Noir Wallet, which hold the keys. zcash-now can't lose funds or leak a key it never had.
Curated facts, checked on a schedule.
data/facts.jsonis reviewed in pull requests, and every claim carriessource,verifiedAtandverifiedBy(read, probe or run). Fetching docs at query time would be slower, unverified and open to prompt injection.Honest recipe status. A recipe says whether it is verified, partial or unverified, and what evidence backs it.
lightwalletd over an explorer API. It's the same source wallets use and adds no third party. The txid is sent in internal byte order, with the displayed order as a fallback.
Local stdio, not a hosted server. No server sees developers' questions. Set
ZCASH_NOW_OFFLINE=1to turn off all network calls.Regex lint rules. They work on any language and are quick to extend. They can misfire, so each finding links its fact.
One source, two outputs.
npm run build:llmswritesdocs/from the same files the MCP server reads, and CI fails ifdocs/is stale.
Development
npm install
npm test # build and run the unit tests
npm run smoke # MCP client over stdio, live testnet
npm run freshness # live probes; updates verifiedAt in data/facts.json
npm run build:llms # regenerate docs/ (set LLMS_BASE_URL for absolute links)Environment variables: ZCASH_NOW_OFFLINE=1 turns off network calls. ZCASH_NOW_LIGHTWALLETD_TEST and ZCASH_NOW_LIGHTWALLETD_MAIN override the servers (host:port).
The project .npmrc points npm at the public registry, so installs work even where a company registry is configured.
To publish: npm publish for the package; GitHub Pages from main and /docs for llms.txt. For the freshness job to open pull requests, turn on "Allow GitHub Actions to create and approve pull requests" under Settings, Actions, General.
Adding a fact or recipe
A fact needs
id,topic,networks,claim,source(https) andverifiedAt, plusverifiedBy,statusandreplaceswhere they apply.npm testchecks the shape.A recipe is a markdown file in
recipes/with front matter (id,title,task,stack,tools,status,checkedAt,evidence) and a## Privacysection. A new task appears inzcash_recipe's schema automatically.
License
MIT. proto/ is copied from librustzcash (MIT OR Apache-2.0).
This server cannot be deployed
Maintenance
Related MCP Connectors
AI Agent Utility Layer for agent safety, web monitoring, crypto research and tool discovery.
Tested, version-pinned code recipes for AI coding agents, each with its last-passed receipt.
Pay-per-call LLM chat plus data tools: DNS, crypto, Base gas, Wikipedia. x402 USDC or Lightning.
Trust signals for AI agents: an open agent-readiness standard and developer tool guide. Read-only.
Related MCP Servers
- AlicenseNot gradedqualityAmaintenanceA local-private context-handoff tool for AI agents, preserving decisions, evidence, and verbatim code in a SQLite ledger and providing zone indicators to prevent context rot across sessions.27 npm1MIT
- AlicenseNot gradedqualityBmaintenanceLocal-first MCP server that lets AI agents query their own LLM call history as a branchable DAG and offload conversation context into immutable, AES-256-GCM-encrypted capsules — restorable in full or per segment, crypto-shreddable, with RAID-style replication. 12 tools, no API keys, no cloud.104 npm3MIT
- AlicenseBqualityBmaintenanceEnables AI agents to securely read, search, and write to a local Markdown knowledge base with hybrid RAG retrieval, privacy zones, hash-locked writes, audit logging, and rollback-safe archiving.13MIT
- AlicenseNot gradedqualityBmaintenanceGives AI coding agents on-demand retrieval of workspace context, documentation, lessons, decisions and handoffs from a five-level (GLOBAL → WORKSPACE → PROJECT → FEATURE → SESSION) store, so they start with a small rule set instead of re-reading bloated docs. Exposes tools for dependency routing, knowledge search, doc reading and health checks backed by a zero-dependency SQLite + FTS5 memory with cross-project sharing of global-scoped knowledge.MIT