Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Description from the maker (original English)
Private escrow for AI agent work on Beam: verifiable delivery, worker collateral, M of N disputes.
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.
IDIOS_WALLET_PASSValues 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 …”.
Open Claude Desktop → Settings → Developer → Edit Config, and paste this into claude_desktop_config.json
{
"mcpServers": {
"idios": {
"command": "uvx",
"args": [
"idios-mcp-server"
],
"env": {
"IDIOS_WALLET_PASS": "your-value"
}
}
}
}Run this in your terminal
claude mcp add idios --env IDIOS_WALLET_PASS=your-value -- uvx idios-mcp-serverFill in the empty values before running it.
Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"idios": {
"command": "uvx",
"args": [
"idios-mcp-server"
],
"env": {
"IDIOS_WALLET_PASS": "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": {
"idios": {
"type": "stdio",
"command": "uvx",
"args": [
"idios-mcp-server"
],
"env": {
"IDIOS_WALLET_PASS": "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 one runs on your computer, and ChatGPT can only connect to servers on the internet. Pick another app.
Your choice stays on this device in a cookie; no account needed.
These settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
Runs on your computer; the tool list appears in your AI app after you install it.
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 8, 2026
The registry name was verified with the GitHub account honeytones, which owns the repo
We have not read this repo from GitHub yet
We have not read this repo from GitHub yet
This one runs on your computer; there is no internet endpoint
Runs on your computer and uses local settings instead
Runs on your computer; we can only read tool lists from internet endpoints
Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.
It passed 1 of 1 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: IDIOS_WALLET_PASS
It runs on your computer. Your AI app starts it when needed, and data does not pass through the maker’s servers (unless it calls an online service itself).
The GitHub repo last changed –, and the latest version (2.3.3) reached the registry 3 months ago.
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. You also need Python (uv) on your computer.
In the same category: Spec Driven Development, Remote Desktop Commander, A1RO — Irish employment tools
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.
Irish temp worker cost, public holiday pay and holidays, and SafeHandle certificate checks.
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.
Private escrow and settlement for AI and other compute on Beam.
Pay for AI and compute work privately. Verifiable delivery, escrowed payment, on chain dispute resolution. Amounts and parties hidden at the base layer.
[Website](https://honeytones.github.io/idios-site/) · [AI and compute use cases](https://honeytones.github.io/idios-site/private-ai-escrow.html) · [Latest Release](https://github.com/honeytones/idios/releases/latest) · [Live Explorer](https://explorer.0xmx.net/?network=mainnet&type=contract&id=41ef8be50f0d727a919b5f5e64f7e66d5ec04442bb4f536f664e38b765e4921f)
"Pay privately. Verify on chain. Dispute when needed."
An AI agent takes a job, privately subcontracts two parts to other agents, reviews and pays each, then settles with the client, all on Beam mainnet with amounts and parties hidden at the base layer the whole way.
Public payment rails leak. Every contract, every payment, every counterparty becomes part of a permanent searchable record. For AI inference, model training, scientific compute, work that involves proprietary inputs, private data, or competitive operations, that visibility is a dealbreaker.
Idios solves the payment and settlement privacy problem. Payment is locked in private escrow on Beam. The worker locks collateral. Settlement happens on chain with amounts and parties hidden. Beam's MimbleWimble protocol hides amounts and identities at the base layer. Idios is what you get when you build escrow on that foundation.
ERC-8183 standardises the same starting primitive on Ethereum, a Job with escrowed payment for AI agent work. Idios is a separate and more complete protocol on Beam, not a port of it. It adds worker collateral and working dispute resolution, neither of which ERC-8183 has today, and it settles privately with amounts and parties hidden. Idios uses its own roles: Requester, Worker, and Arbitrator.
Two settlement modes, picked per contract at creation time.
For deterministic work where the correct output is a specific hash known in advance.
No arbitrator involvement. Settlement is mechanical once hashes match.
For non deterministic or open ended work where the requester needs to review the output.
Funds always flow to the right party. Arbitrators decide who wins a dispute and earn the dispute fee for the work of judging it, but never touch the payment or collateral.
Idios uses a two phase claim pattern. Authorisation steps (approve, claim_after_timeout, and dispute resolution by M of N voting) set the contract status but never move funds. The beneficiary then calls claim to actually receive the payout, signed by their own key. This works around a Beam BVM constraint where a single kernel cannot cleanly sign for one party while routing funds to another.
Live on Beam mainnet ✅
Verified resolution paths (real funds on mainnet during development; the job IDs below are from the v5 and v6 deployments that preceded the in place M of N upgrade):
| Path | Status flow | Job |
|---|---|---|
| Mode A hash match | Open → Active → Closed (single tx) | 22224 |
| Mode B approve | Open → Active → AwaitingApproval → Settled → Closed | 11112, 33335 |
| Mode B dispute, resolved to worker | Open → Active → AwaitingApproval → Disputed → ResolvedToBob | 11113 |
| Mode B dispute, resolved to requester | Open → Active → AwaitingApproval → Disputed → ResolvedToAlice | 11114 |
| Mode B timeout | Open → Active → AwaitingApproval → Settled → Closed | 11115 |
| Mode B arbitrator timeout void | Open → Active → AwaitingApproval → Disputed → Voided | 20002 |
CID: 41ef8be50f0d727a919b5f5e64f7e66d5ec04442bb4f536f664e38b765e4921f
Current version: v2 (SID a61f3a93), upgraded in place from M of N v1 on 8 July 2026 at block 3938963 Version history: v6 (deploy) -> M of N v1 (21 June 2026, block 3914637) -> v2 (8 July 2026, block 3938963); cid unchanged throughout Deployed at block: 3905992 (original v6 deploy; cid unchanged across all Upgradable3 upgrades) Constructor params: default_review_window=10080, arbitrator_timeout_blocks=20160, upgrade_delay=1440, min_approvers=1 Explorer: https://explorer.0xmx.net/?network=mainnet&type=contract&id=41ef8be50f0d727a919b5f5e64f7e66d5ec04442bb4f536f664e38b765e4921f
| Role | Description |
|---|---|
user | Requester (Alice) or worker (Bob) interacting with the contract lifecycle. Workers can also hold a reputation bond (v2). |
arbitrator | Member of the M of N arbitrator registry. Registers with a stake (BEAM only, 10 BEAM minimum, admin co signed in v2), votes on disputed contracts, and claims a reward share |
manager | Deploy and view contract params (one shot, used during contract setup) |
treasury | Protocol treasury, set at deploy from the deploying wallet. Collects forfeited worker collateral from Active refunds, dispute fees from voided disputes, and slashed worker bonds (v2) via sweep and slash_sweep. |
user actions
| Action | Description |
|---|---|
create_a | Create a Mode A contract (Hash verified Settlement). Locks payment. |
create_b | Create a Mode B contract (Reviewed Settlement). Locks payment, sets review window and dispute fee. |
commit | Worker locks collateral, status moves to Active. |
submit_delivery | Worker submits result hash. In Mode A, pays out atomically if the hash matches and the contract moves straight to Closed. In Mode B, sets AwaitingApproval. |
approve | Requester approves Mode B delivery, status moves to Settled (no funds yet). |
dispute | Requester disputes Mode B delivery, locks dispute fee, status moves to Disputed. |
claim_after_timeout | Worker claims after review window expires (Mode B), status moves to Settled. |
claim | Beneficiary collects funds (payment + collateral) from a Settled, ResolvedToBob, or ResolvedToAlice contract. A Settled claim moves the status to Closed. A Resolved contract keeps its 6/7 status forever; the winner_paid flag in view_dispute records the payout. Mode A contracts pay out automatically and cannot be claimed. |
refund | Requester reclaims their payment from an expired contract (Open or Active). On the Active path the worker's collateral is forfeited to the treasury. Status moves to Refunded. |
void_dispute | Permissionless. Anyone can void a dispute the arbitrator never resolved, once arbitrator_timeout_blocks have passed since it was filed. Status moves to Voided. |
void_claim_requester | Requester reclaims their payment from a Voided contract. |
void_claim_node | Worker reclaims their collateral from a Voided contract. |
view_job | Read current job state. |
view_dispute | Read the M of N dispute record for a job: frozen N and threshold, tallies, resolution, and whether the worker's bond is encumbered by it (v2). |
worker_register | Lock a standing reputation bond (v2). BEAM only, any amount, keyed to the worker's contract pubkey. Slashable: losing an arbitrated dispute forfeits the whole bond to the treasury. |
worker_deregister | Begin withdrawing the reputation bond. Starts the reclaim cooldown. |
worker_reclaim | Recover the bond in full after the cooldown (= arbitrator_timeout_blocks). Halts while any open dispute encumbers the bond, and forever if the bond was slashed. |
view_worker_bond | Read a worker bond: stake, state, encumbrance count. Defaults to your own key; pass worker_pk to inspect another worker's bond. |
get_key | Returns the user's pubkey for this contract. (Worker shares this with requester before create.) |
arbitrator actions (M of N, v2 hardened registry)
| Action | Description |
|---|---|
register | Join the global arbitrator registry, posting a stake. v2 gates: BEAM only, 10 BEAM minimum, and the kernel carries the protocol admin's co signature (registration is curated until arbitrator slashing ships). A fully exited identity may register again. Optional arb_index (default 0) derives a distinct key per slot. |
vote | Vote on a Disputed contract. side 0 awards the requester (Alice), 1 awards the worker (Bob). Resolves when M matching votes land. |
claim_reward | After a dispute resolves, a consensus voter claims their share of the dispute fee (dispute_fee / M, remainder swept to treasury). |
deregister | Leave the registry. Starts the stake reclaim cooldown. |
reclaim | Recover the stake after the cooldown (equal to arbitrator_timeout_blocks). |
view_arb | Read the registry: current arbitrator count and your assigned index. |
get_mofn_key | Returns the arbitrator pubkey for a given arb_index. |
get_key | Returns the arbitrator's base pubkey for this contract. |
treasury actions
| Action | Description |
|---|---|
sweep | Collects forfeited funds: worker collateral from a Refunded contract that went through the Active path, or the dispute fee from a Voided contract. |
slash_sweep | Collects a slashed worker reputation bond (v2). Waits until every open dispute that encumbered the bond has terminated. |
get_key | Returns the treasury's pubkey for this contract. |
0 = Open (just created, awaiting worker commit)
1 = Active (worker has committed collateral) 2 = AwaitingApproval (Mode B, worker has delivered, in review window) 3 = Disputed (Mode B, requester has disputed, awaiting arbitrator) 4 = Settled (beneficiary can claim, payment + collateral) 5 = Refunded (terminal, requester reclaimed funds after expiry) 6 = ResolvedToAlice (arbitrators sided with requester, requester can claim; stays 6 after the claim, winner_paid in view_dispute records
Only the beginning is shown; read the rest in the repo