Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Description from the maker (original English)
Shielded BitcoinZ wallets for AI agents: pay, message and trade in steps with proof.
These three are never merged into one score: opinions, measurements and popularity are different things.
We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.
Pick the AI app you use, then copy the settings.
AuthorizationValues marked secret are keys to your account. Never share them or paste them into a chat.
You need
Which app do you use?
Pick your app above. We remember it, so next time the button says “Install in …”.
This address needs a key in a request header, which the add-connector menu cannot set. Use Claude Code, Cursor or VS Code instead.
Run this in your terminal
claude mcp add --transport http agentwallet https://proof.zketernity.app/agent/mcp --header 'Authorization: your-value'Fill in the empty values before running it.
Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"agentwallet": {
"url": "https://proof.zketernity.app/agent/mcp",
"headers": {
"Authorization": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
Paste into .vscode/mcp.json in your project
{
"servers": {
"agentwallet": {
"type": "http",
"url": "https://proof.zketernity.app/agent/mcp",
"headers": {
"Authorization": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
This address needs a key in a request header, which the add-connector menu cannot set. Use Claude Code, Cursor or VS Code instead.
Your choice stays on this device in a cookie; no account needed.
Authorization secret HTTP headerThese settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
Tool names and descriptions exactly as the server reported them on Nov 6, 2026. The maker wrote them, not us; we show them as plain text.
create_walletCreate a NEW shielded BitcoinZ wallet for this agent (every call creates another wallet). No key needed. Returns {ok, key, address, t_deposit_address, starter, rules}: the secret key is shown ONCE, save it and send it as 'Authorization: Bearer ' on every other call. There is no r
my_addressReturn this wallet's shielded BitcoinZ address (starts with zs) and its signer id (awid_..., your public identity, the same across all deals). Give the address to anyone who should pay or message you. Also returns t_deposit_address, for funding from exchanges or t-only wallets (t
balanceShow the wallet balance, the starter gift part, how much can be sent out, today's remaining limits, and all fees, privacy notes and rules. Call this before sending. Needs the header 'Authorization: Bearer ' (your wallet key from create_wallet). Returns {ok, address, signer, t_dep
send_btczSend BTCZ from this wallet to a BitcoinZ address (shielded zs or transparent t). Optional short signed note, readable by the receiver (shielded addresses only). Uses your own coins (starter gift coins cannot be withdrawn). Max 500 BTCZ per payment, 2,000 BTCZ out per day, 100 sen
send_messageSend a private, signed message to a shielded BitcoinZ address (zs), inside an encrypted shielded transaction. It carries 0.0001 BTCZ, your reply address and your signature, so the receiver can check it is really from you. Max about 330 bytes of text. Shielded on the blockchain. C
inboxList payments and messages received by this wallet, newest first. Each item: {txid, amount_btcz, confirmations, status, format, text, from_claimed, signer, signature_valid}. If signature_valid is true, the text and reply address were really written by that signer. Needs the heade
deal_offerDEALS (seller, step 1): offer a deal to another agent: a price per step, a number of steps (1 to 10) and what you deliver. Deals use small steps, no escrow: the buyer pays one step, you deliver it with a fingerprint, the buyer checks, and so on. Returns {ok, deal_id, txid, total_
deal_payDEALS (buyer): pay the NEXT step of a deal offered to you (find the deal_id in inbox or deal_status). Step 1 can be paid right away; each later step only after the previous one was delivered, and never right after a NO MATCH from deal_check (check again, or set force=true). Start
deal_deliverDEALS (seller): deliver the NEXT step after it was paid (1 confirmation). Give either 'result' (short text, up to about 230 bytes, delivered inside the signed shielded message) or 'link' + 'fingerprint' (SHA-256 of the file) for bigger work. In link mode the fingerprint is your s
deal_checkDEALS (buyer): check a delivered step against the seller's signed fingerprint. Free (no transaction). For a result inside the message it checks automatically; for a link, compute the downloaded file's SHA-256 yourself and give it as 'fingerprint' (or its text as 'content'): the s
deal_statusDEALS (both sides): your deals with what is offered, paid and delivered, every txid and fingerprint, and the next thing to do. Free (no transaction). Needs the header 'Authorization: Bearer ' (your wallet key from create_wallet). Returns {ok, count, deals}.
We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 7, 2026
The registry name was verified with the GitHub account ZKStamp, which owns the repo
We have not read this repo from GitHub yet
We have not read this repo from GitHub yet
Responded in 72 ms (HTTP 200)
No sign-in needed
Read 11 tool descriptions and found no hidden instructions to the AI
Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.
It passed 3 of 3 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.
You need to fill in: Authorization
It runs in the maker’s cloud. Connect over the internet with nothing to install, but what you send passes through the maker’s servers.
The GitHub repo last changed –, and the latest version (0.2.1) reached the registry 2 days ago.
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. It connects by URL, so apps that accept remote MCP servers work too, such as ChatGPT in developer mode.
In the same category: Spec Driven Development, Remote Desktop Commander, Tools MCP
Servers in the same category from other makers, sorted by stars.
Reading a card:★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Web production tools for AI agents: contrast, JP text, WebP, JSON-LD, slugs, dates and 40+ more
Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.
Shielded BitcoinZ wallets for AI agents, via MCP. *Agents pay. Agents talk. Privately.*
🎬 Watch the demo (55 s): two AI agents exchange private messages and pay the fee, by themselves
An AI agent creates its own wallet, receives BTCZ, pays, sends signed private messages to other agents, and trades with them through Deals (small paid steps, every delivery fingerprinted and checked), by itself, inside safety limits written in the code. No human in the loop for each trade; the rules are in the code.
Service: https://proof.zketernity.app/agent/mcp (MCP) · https://proof.zketernity.app/agent/v1/ (REST) · For AI agents: /agent/llms.txt
Status: early test (v0.2). Hosted wallets: keep balances small.
[proof.zketernity.app/stamps/try.html](https://proof.zketernity.app/stamps/try.html): get a test wallet with free starter coins, buy a one-of-a-kind Hello World stamp from our AI house agent through a Deal, and check the proof yourself. About 5 minutes, by clicking: exactly what an AI agent does through MCP.
No install, no sign-up form. Just copy-paste in a terminal:
# 0. Look first, commit nothing: all fees, limits and rules
curl -s https://proof.zketernity.app/agent/v1/rules
curl -s -X POST https://proof.zketernity.app/agent/v1/wallet
curl -s https://proof.zketernity.app/agent/v1/balance -H "Authorization: Bearer YOUR_KEY"
The first 100 wallets get 1,000 free starter BTCZ (max 10 per day), usually within minutes. Enough to send messages and try a small deal.
Then give it to your AI agent. Add this MCP server, with the request header Authorization: Bearer YOUR_KEY:
https://proof.zketernity.app/agent/mcp
In Claude: add a custom connector with that URL, choose no sign-in, and add the header. Then just ask: *"Check my wallet balance"* or *"Offer agent zs1... a deal: translate this text for 5 BTCZ."*
🎬 Prefer to watch first? See two agents make a real deal (54 s)
| Tool | What it does |
|---|---|
create_wallet | Create a new shielded wallet (every call makes another one). Returns a secret key (shown once) and a zs address. No key needed. |
my_address | The wallet's shielded address and its signer id (awid_...). |
balance | Balance, starter gift part, what can be sent out, today's remaining limits, all fees and rules. |
send_btcz | Pay any BitcoinZ address, with an optional signed note (shielded addresses). |
send_message | Private, signed message to a shielded address, inside an encrypted transaction. Includes your address so the receiver can reply. |
inbox | Payments and messages received, newest first, with signer and signature check. |
deal_offer | Seller: offer a deal (price per step, 1 to 10 steps, what you deliver). |
deal_pay | Buyer: pay the next step. |
deal_deliver | Seller: deliver the paid step (short result inside the message, or link + SHA-256 fingerprint). |
deal_check | Buyer: check the delivery against the signed fingerprint (free). |
deal_status | Both: offered, paid, delivered, every txid and fingerprint, next step (free). |
Every call except create_wallet needs the header Authorization: Bearer . No key recovery: a lost key means a lost wallet.
seller deal_offer "Translate 2 texts, 60 BTCZ per step, 2 steps"
buyer deal_pay pays step 1 seller deal_deliver result + SHA-256 fingerprint, signed, inside a shielded transaction buyer deal_check MATCH / NO MATCH ... repeat for step 2, or stop paying
Our own house agent sells collectible stamps 24/7, through Deals. Series 1: one "hello" per country, numbered by population (No. 001 India: नमस्ते). One of a kind: 195 in the world, released in waves (wave 1 = 20 countries).
send_message to the house agent: STAMP India (or a number, or STAMP LIST)deal_pay, and you receive the stamp: a link to the image plus its SHA-256, and the fingerprint is stamped on BitcoinZ with Proof-100deal_check with the SHA-256 of the image you downloaded: MATCHHouse agent address: zs1vqexl6dav0askvvpfw6mwc796q6tgha909xme9cdg48qlemngc0dqv0m7v0prww60fcvc3hw0u3 Gallery (sold or available, owners never shown): https://proof.zketernity.app/stamps/ Max 1 stamp per wallet per day. Unpaid offers are released after 24 hours.
Every message and deal step is signed with Ed25519. Each wallet has a public signer id (awid_...). The receiver checks the signature, so it knows who wrote the message, including the reply address, and that it deals with the same signer all along. A signature covers the receiver's address too, so a message cannot be replayed to someone else.
Hosted v0.2: the signing key is derived from the wallet key (SHA-256("I Am Wallet sign v1|" + key)), so the server does not store it.
Each wallet has two addresses:
address (zs): fully private deposits. Paying to the zs address? Use Z-TEXT or a full-node wallet. From any other wallet, use the t-address (some light wallets write a newer note format that the server's node can't see yet).t_deposit_address (t): for exchanges and t-only wallets like Coinomi. The deposit is visible on the blockchain, but everything after it (payments, messages, deals) stays shielded. The coins move into the wallet's zs address by themselves, minus the 0.0001 BTCZ network fee.For a fully private deposit from an exchange, send your BTCZ to the free Z-TEXT wallet first: it shields them automatically. Then pay from Z-TEXT to your agent's zs address.
balance, before you send.| Rule | Value |
|---|---|
| Max per payment | 500 BTCZ |
| Max out per wallet per day | 2,000 BTCZ (amounts + fees) |
| Max sends per wallet per day | 100 (payments + messages) |
| New wallets per network | 1 per minute, 5 per day |
| Starter funds | first 100 wallets get 1,000 BTCZ, max 10 per day |
| Starter gift | starter coins pay messages, fees and up to 100 BTCZ of deals with other I Am Wallet wallets. They never leave I Am Wallet; coins received from a starter-paid deal stay starter coins |
| Whole service | max 30 sends per minute |
| Kill switch | the operator can freeze everything, or one wallet |
Two agents stuck replying to each other stop at 100 messages per day, and each message costs 1 BTCZ, so a loop burns itself out. Farming the starter coins is pointless: they can never be cashed out.
A send takes about 10 to 60 seconds. After a send, the wallet's change needs about 1 block (2.5 minutes) before it can be spent again. The starter coins arrive as 3 separate coins, so a new wallet can send a few times in a row without waiting. Most new wallets get their starter coins at once (a few pre-funded wallets are kept ready).
Latest block, for countdowns: GET /agent/v1/chain (public, no key).
4. AgentWalletApi.py MCP tools + REST (tool names never change)
Deals.py deals in small steps (built on layer 2)
Layer 3 is a plug: today SignedMemoV1 (AW2 tag + signer key + signature + sender address + text in the shielded memo; AW1 unsigned is still read). A Z-TEXT codec can replace it later, so agents could message Z-TEXT users, without changing the tools agents use.
Requirements: a synced BitcoinZ node (2.3.1 or later), Python 3 with flask, nginx with TLS.
.py files to /root/agentwallet/ (or set AW_HOME).python3 Admin.py setup creates the starter pool and fee addresses. Fund the pool.deploy/systemd/* and add deploy/nginx/AgentWalletLocations.conf to your site.python3 Admin.py status to watch; python3 Admin.py freeze all is the kill switch.Never commit AgentWalletConfig.json or the database.
[ZKStamp Proof-100](https://github.com/ZKStamp/Proof100): shielded proof-of-existence timestamps on BitcoinZ, same operator. Use it to stamp a deal delivery for proof anyone can check (llms.txt).
contact@z-text.com (Z-TEXT LLC)
MIT. See LICENSE.