Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Descripción del creador (original en inglés)
Escrow + AI arbitration for A2A payments. Lock funds, confirm delivery, dispute if needed.
Estos tres nunca se combinan en una sola puntuación: las opiniones, las mediciones y la popularidad son cosas distintas.
Todavía no escribimos un resumen sencillo para este. Abajo están los datos que leímos del registro.
Elige la app de IA que usas y copia la configuración.
ARBITOVA_API_KEY, ARBITOVA_BASE_URLLos valores marcados como secretos son llaves de tu cuenta. Nunca los compartas ni los pegues en un chat.
Necesitas
¿Qué app usas?
Elige tu app arriba. La recordamos, así que la próxima vez el botón dirá “Instalar en …”.
Abre Claude Desktop → Settings → Developer → Edit Config y pega esto en claude_desktop_config.json
{
"mcpServers": {
"arbitova": {
"command": "npx",
"args": [
"-y",
"@arbitova/mcp-server"
],
"env": {
"ARBITOVA_API_KEY": "your-value",
"ARBITOVA_BASE_URL": "your-value"
}
}
}
}Ejecuta esto en tu terminal
claude mcp add arbitova --env ARBITOVA_API_KEY=your-value --env ARBITOVA_BASE_URL=your-value -- npx -y @arbitova/mcp-serverCompleta los valores vacíos antes de ejecutarlo.
Pégalo en .cursor/mcp.json de tu proyecto, o en ~/.cursor/mcp.json
{
"mcpServers": {
"arbitova": {
"command": "npx",
"args": [
"-y",
"@arbitova/mcp-server"
],
"env": {
"ARBITOVA_API_KEY": "your-value",
"ARBITOVA_BASE_URL": "your-value"
}
}
}
}Tu navegador te pide permiso para abrir la app; luego la app muestra la configuración y te pide confirmar. Los valores de las claves quedan vacíos para que los completes tú.
Pégalo en .vscode/mcp.json de tu proyecto
{
"servers": {
"arbitova": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@arbitova/mcp-server"
],
"env": {
"ARBITOVA_API_KEY": "your-value",
"ARBITOVA_BASE_URL": "your-value"
}
}
}
}Tu navegador te pide permiso para abrir la app; luego la app muestra la configuración y te pide confirmar. Los valores de las claves quedan vacíos para que los completes tú.
Este se ejecuta en tu computadora, y ChatGPT solo puede conectarse a servidores en internet. Elige otra app.
Tu elección se guarda en una cookie en este dispositivo; no necesitas cuenta.
ARBITOVA_BASE_URL envEsta configuración se genera a partir de la ficha del creador en el registro. Si el README dice otra cosa, sigue el README.
Se ejecuta en tu computadora; la lista de herramientas aparece en tu app de IA después de instalarlo.
Revisamos información que cualquiera puede ver; no hemos leído el código. Las revisiones que no aplican no se cuentan. · Revisado el 9 nov 2026
El nombre en el registro se verificó con la cuenta de GitHub jiayuanliang0716-max, dueña del repo
Todavía no hemos leído este repo en GitHub
Todavía no hemos leído este repo en GitHub
Este se ejecuta en tu computadora; no hay endpoint en internet
Se ejecuta en tu computadora y usa ajustes locales en su lugar
Se ejecuta en tu computadora; solo podemos leer listas de herramientas de endpoints en internet
Comparado con todos los servidores activos de esta categoría en el registro. Las estrellas solo cuentan cuando quien lo publica es dueño del repo.
Superó 1 de 1 revisiones básicas aplicables. No hemos leído el código. Antes de agregar una clave o un token, revisa qué acceso pide el servidor y usa una clave que tenga solo los permisos que necesitas.
Debes completar: ARBITOVA_API_KEY
Se ejecuta en tu computadora. Tu app de IA lo inicia cuando hace falta, y los datos no pasan por los servidores del creador (a menos que el propio servidor llame a un servicio en línea).
El repo de GitHub cambió por última vez –, y la última versión (3.4.0) llegó al registro hace 7 meses.
Las apps compatibles con MCP, como Claude Desktop, Claude Code, Cursor y VS Code. También necesitas Node.js en tu computadora.
En la misma categoría: Spec Driven Development, Remote Desktop Commander, Mcphost
Servidores de la misma categoría hechos por otros creadores, ordenados por estrellas.
Cómo leer una tarjeta:↓ Descargas por semanai★ Estrellas de GitHubiTres pilares: reseñas · revisiones · usoiActualizado = fecha en que se publicó la última versión en el registroi
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.
Hosted MCP runtime where your agent publishes its own tools by tool call and keeps working.
Copiado tal cual del repo del creador. PopNx MCP no lo ha revisado ni lo respalda. Se quitaron HTML, imágenes y scripts. Los enlaces llevan fuera de este sitio.
Non-custodial USDC escrow + AI arbitration for agent-to-agent payments on Base.
Two agents lock USDC into a contract, one delivers, the other confirms or disputes, and a neutral AI arbiter resolves. Arbitova never holds the money — the contract does.
No API keys. No registration. No custody. Your Ethereum address is your identity.
EscrowV1 at 0xA8a031bcaD2f840b451c19db8e43CEAF86a088fC on Base Sepolia — verified on Basescan, mainnet launching after auditA2A-ESCROW-RFC-v0.1/.well-known/arbitova.jsondocs/tutorials/15-min-paid-agent.mdEvery A2A / agent-commerce spec in the wild — MCP, Google's A2A, ERC-7683, Coinbase's Agent Commerce — defines *how agents talk*. None of them define *how money moves when the agents don't trust each other*.
Arbitova is the missing settlement primitive:
createEscrow → markDelivered → {confirmDelivery | dispute → resolve | cancel}. No hidden branches, no admin override.DISPUTED, not into seller payout. Silence is safer than a wrong confirmation.keccak256 is stored on-chain. The full verdict history is queryable at /verdicts — no aggregation, no delay.This is not a marketplace. There is no Arbitova account, no listing fee, no Pro tier. The protocol is the whole product.
npm install @arbitova/sdk ethers
import { Arbitova } from '@arbitova/sdk';
const buyer = await Arbitova.fromPrivateKey({ privateKey: process.env.BUYER_PK });
const { escrowId, txHash } = await buyer.createEscrow({ seller: process.env.SELLER_ADDRESS, amount: '5.00', deliveryHours: 24, reviewHours: 24, verificationURI: 'https://example.com/spec.json', });
console.log(Escrow #${escrowId} locked — ${buyer.explorerTx(txHash)});
Seller-side, arbiter-side, browser wallet integration: see packages/sdk-js/README.md.
pip install "arbitova[path_b]"
from arbitova import path_b
result = path_b.arbitova_create_escrow( seller="0x...", amount=5.00, verification_uri="https://example.com/spec.json", ) print(result)
{
"mcpServers": { "arbitova": { "command": "npx", "args": ["-y", "@arbitova/mcp-server"], "env": { "ARBITOVA_RPC_URL": "https://sepolia.base.org", "ARBITOVA_ESCROW_ADDRESS": "0xA8a031bcaD2f840b451c19db8e43CEAF86a088fC", "ARBITOVA_USDC_ADDRESS": "0x036CbD53842c5426634e7929541eC2318f3dCF7e", "ARBITOVA_AGENT_PRIVATE_KEY": "0x..." } } } }
Six tools: arbitova_create_escrow, arbitova_mark_delivered, arbitova_confirm_delivery, arbitova_dispute, arbitova_cancel_if_not_delivered, arbitova_get_escrow. All sign locally via ethers v6. Your private key never leaves the process.
Omit ARBITOVA_AGENT_PRIVATE_KEY for read-only introspection mode (useful for observability).
┌──────────────────┐
│ CREATED │ buyer locked USDC └────────┬─────────┘ │ ▼ seller.markDelivered() ┌──────────────────┐ │ DELIVERED │ deliveryHash on-chain └────────┬─────────┘ │ buyer.confirmDelivery()│ │ buyer.dispute() │ │ or seller.dispute() ▼ ▼ ┌─────────────┐ ┌──────────┐ │ RELEASED │ │ DISPUTED │ waiting for arbiter └─────────────┘ └────┬─────┘ │ arbiter.resolve(bps split + verdictHash) ▼ ┌──────────┐ │ RESOLVED │ └──────────┘
Two terminal states not drawn: CANCELLED (buyer calls cancelIfNotDelivered after delivery window) and auto-escalation into DISPUTED if the review window expires without confirmation.
Three end-to-end A2A demos on Base Sepolia with a live AI arbiter:
Each demo runs the full CREATED → DELIVERED → CONFIRMED (or DISPUTED → RESOLVED) flow with real on-chain transactions.
| Package | Purpose |
|---|---|
@arbitova/sdk | Node.js / browser SDK (ethers v6) |
arbitova | Python SDK, install with [path_b] extra for on-chain support |
@arbitova/mcp-server | MCP server (6 on-chain tools) for Claude Desktop, Claude Code, any MCP client |
Each ships the same six-entrypoint surface so an agent using the Python SDK can settle with an agent using the MCP server — they're hitting the same contract.
| When | Fee | Paid by |
|---|---|---|
confirmDelivery / review-window expiry auto-settle | 0.5% | deducted from seller payout |
| Arbiter resolves a dispute | 2% | split per arbiter verdict |
Fees accrue in the contract. The protocol runs on them; there is no subscription.
| Network | Status | Contract |
|---|---|---|
| Base Sepolia | live, real Circle USDC | 0xA8a031bcaD2f840b451c19db8e43CEAF86a088fC |
| Base mainnet | pending audit + multisig arbiter | TBA |
Watch the Dev Log for mainnet launch.
v2.x of the SDKs and v3.4.0 of the MCP server were a custodial HTTP client against api.arbitova.com. That architecture had four structural problems (DB-vs-onchain drift, custody wallet gas, single ADMIN_KEY, single WALLET_ENCRYPTION_KEY point of failure) and was deprecated in favor of Path B — the non-custodial on-chain design described above.
sdk/MIGRATION_PATH_A_TO_B.mdmcp-server/MIGRATION.mdOld packages remain on npm/PyPI but are deprecated.
MIT