Kura
Kura (蔵 — el cofre que guarda tesoros)
Billetera EVM local para agentes de IA. Una billetera en la que una persona aprueba con contraseña cuando una IA como Claude realiza pagos por internet (x402) en Mac.
No es una billetera para personas (como MetaMask), sino para agentes de IA
No es un SaaS en la nube — solo funciona localmente. Las claves nunca salen de este ordenador.
La IA solicita el pago → la persona aprueba con contraseña → se ejecuta
La cadena es Base (L2 de Ethereum, comisiones casi nulas). Por defecto, testnet (Base Sepolia)
De un vistazo
[ AI 앱 (Claude Code / 데스크톱) ]
│ MCP로 "결제해줘" 요청
▼
[ Kura 데스크톱 앱 ] ← 승인 팝업 → 사람이 비밀번호 입력
│ 서명 (키는 이 앱 안에서만)
▼
[ Base 체인 / x402 페이실리테이터 ] ← 실제 결제La contraseña solo se introduce en el campo de la app de Kura. Nunca aparece en el chat, en MCP ni en archivos de configuración.
Related MCP server: cardzero-mcp
Instalación
Mac con Apple Silicon (macOS 11 o superior)
(A) Homebrew
brew install --cask dinggi5/tap/kura(B) Descarga directa del DMG
Descarga Kura_<versión>_aarch64.dmg desde Releases, ábrelo y arrastra Kura a la carpeta Applications.
Como es una app a la que confías tus llaves, en SECURITY.md he dejado incluso los comandos para verificar que la app descargada es realmente la que yo he creado.
(C) Compilar desde el código fuente
Requisitos previos: Rust, Node.js (20.19+ o 22.12+ — requiere Vite 7), macOS.
git clone https://github.com/dinggi5/kura.git
cd kura
git checkout v0.1.1 # 배포본과 같은 소스. 빼면 개발 중인 최신 코드가 받아져요
npm ci # package-lock.json 그대로 설치 (install 은 버전이 올라갈 수 있어요)
# 개발 모드로 바로 실행
npm run tauri dev
# 앱으로 빌드해 /Applications에 설치
npm run tauri build -- --bundles app --no-sign
ditto src-tauri/target/release/bundle/macos/Kura.app /Applications/Kura.app
open /Applications/Kura.appActualización
La app se actualiza sola.
En Configuración → Información consulta la versión y los cambios, y pulsa Instalar ahora y reiniciar.
Solo la comprobación es automática; la instalación siempre requiere que pulses tú.
El archivo descargado solo se instala tras verificar su firma (la verificación de firma no se puede desactivar). Los detalles están en la sección «Actualización» de SECURITY.md.
Si no quieres que la app compruebe actualizaciones automáticamente, desactiva Configuración → Información → Comprobar al iniciar.
Desinstalación
⚠️ Desinstalar la app no elimina la billetera. Las claves, la configuración y el historial de transacciones están en la carpeta ~/.jigap, fuera de la app, así que si solo eliminas la app, todo permanece — lo hice a propósito para que no pierdas tus activos por accidente (ni siquiera brew uninstall --zap lo borra).
# 앱만 제거 (지갑은 남음 — 나중에 다시 설치하면 그대로 이어서 써요)
brew uninstall --cask dinggi5/tap/kura # 또는 /Applications/Kura.app 을 휴지통으로Para eliminar también la billetera de este Mac, sigue este orden estrictamente:
Comprueba primero que tienes la frase de recuperación de 12 palabras. Puedes volver a verla con el botón de llave del encabezado de la app.
Si queda saldo, transfiérelo a otra billetera.
Cierra Kura por completo (clic derecho en el icono de la barra de menús → Salir). Si está abierta, escribe un archivo de estado en
~/.jigapcada pocos segundos, así que la carpeta que borres volverá a aparecer de inmediato.Cierra también las herramientas de IA conectadas al MCP de Kura (como Claude Code).
Si tienes activado el inicio automático, desactívalo o ejecuta
rm ~/Library/LaunchAgents/Kura.plist(si eliminas la app a la papelera, este archivo permanece; conbrew uninstall --caskse elimina junto con la app).Después,
rm -rf ~/.jigap
Si ejecutas el último rm -rf ~/.jigap sin las 12 palabras, nadie podrá recuperar jamás los activos de esa billetera.
Primer uso
Kura vive en la barra de menús. Al ejecutarla, aparece un icono de cofre (◻︎) en la barra de menús superior, y la ventana se despliega hacia abajo solo al pulsar ese icono. Al hacer clic en cualquier otro lugar se cierra, y la app permanece en segundo plano esperando solicitudes de pago de la IA. Para apagarla por completo: clic derecho en el icono → Salir. (En el primer arranque, cuando aún no hay billetera, la ventana se abre sola.)
Crear billetera — Elige una contraseña (8 caracteres o más) que tendrás que introducir en cada transferencia. Con esta contraseña se cifran y guardan las claves (
~/.jigap/wallet.enc).Copia de seguridad de la semilla — Aparecen 12 palabras. Son la prueba real de propiedad de tus activos, así que anótalas en papel o en un gestor de contraseñas. Aunque olvides la contraseña, con las 12 palabras puedes recuperarlo todo: cierra la app, comprueba primero que tienes las 12 palabras, borra
~/.jigap/wallet.ency vuelve a abrir la app; se restaurará con Importar de la primera pantalla (también puedes importarlas en cualquier otra billetera estándar BIP-39). Pero si borras ese archivo sin las 12 palabras, perderás los activos para siempre.Tour de bienvenida — Te explica cómo recargar, conectar la IA y las medidas de seguridad. Puedes volver a verlo cuando quieras desde ⓘ Ayuda del encabezado.
Recargar fondos (USDC)
Para pagar, la billetera necesita USDC (dólares digitales).
Pulsa Recibir en la app y verás la dirección y un código QR.
Al enviar desde un exchange u otra billetera, elige siempre la red Base. Si lo envías a otra red, perderás los fondos.
En la testnet (por defecto) no es dinero real. Usa el botón Faucet de la pantalla Recibir para obtener monedas de prueba gratis y practicar.
ETH es opcional — En los pagos x402, el facilitador paga las comisiones, así que puedes tener 0 ETH. Solo necesitas un poco de ETH para el gas cuando envías directamente con Enviar de la app (las comisiones de Base rondan 1 céntimo). Con recargar solo USDC es suficiente.
Conectar la IA (Claude)
Se conecta registrando el servidor de Kura en la configuración MCP de la app de IA. Al conectarse, aparece la insignia «Claude conectado» en la pantalla principal. Desde la versión 0.1.2, el servidor MCP está integrado en la app, así que puedes conectarte sin clonar el código fuente ni instalar Rust.
La vía más fácil: la pantalla «Conexión de IA» de la app
Pulsa la insignia «IA no conectada» en la parte superior de la pantalla principal y se abrirá la pantalla de conexión.
Claude Desktop — Al pulsar el botón «Conectar», aparece la ventana de instalación de la extensión en Claude. Basta con pulsar «Instalar».
Claude Code — Se registra con un solo botón (la app ejecuta
claude mcp addpor ti). Desde la siguiente ejecución declaude, estará conectado en cualquier carpeta.
A continuación, cómo hacer lo mismo manualmente.
Claude Desktop: con un solo archivo de extensión
Descarga kura-<versión>.mcpb desde la página de releases y haz doble clic; Claude Desktop te preguntará si quieres instalarlo. (O en Configuración de Claude → Extensiones → Seleccionar archivo.)
La extensión no contiene ejecutables — solo un lanzador que, tras verificar la firma, ejecuta el servidor MCP firmado y notarizado que está dentro de Kura.app. Por eso primero debes instalar la app de Kura.
Claude Code · otras apps MCP
Registra el binario de la app con su ruta absoluta:
claude mcp add --scope user kura -- /Applications/Kura.app/Contents/MacOS/kura-mcp(--scope user es una opción para que esté disponible en cualquier lugar, no solo «en esta carpeta». Si solo lo vas a usar en un proyecto, puedes omitirla.)
En otras apps MCP, escribe esto en la configuración:
{
"mcpServers": {
"kura": {
"command": "/Applications/Kura.app/Contents/MacOS/kura-mcp"
}
}
}Si estás desarrollando desde el código fuente
El .mcp.json de la raíz del repositorio ya está incluido. Si ejecutas claude en esta carpeta, se detectará automáticamente (la primera vez te preguntará si quieres usar el servidor; pulsa Aprobar). Esta ruta es para desarrollo, ya que recompila con cargo run cada vez — si vas a usar la versión instalada, registra la ruta de la app como se indica arriba.
Herramientas que la IA puede usar: get_wallet_status · get_balances · get_history (solo lectura) · request_payment (solicitud de pago → ventana de aprobación en la app) · x402_fetch (llamada a URLs con pago 402).
Si cambias las herramientas MCP, reinicia la app de IA para que se apliquen (el servidor se carga una vez al iniciar la sesión).
Así fluye un pago
La IA solicita un pago.
Se abre la ventana de Kura mostrando cuánto y a dónde se envía (se abre automáticamente aunque la ventana esté oculta).
Introduce la contraseña y aprueba.
El pago se ejecuta y el resultado vuelve a la IA. Si no apruebas en 5 minutos, se rechaza automáticamente.
Modelo de seguridad
Aprobación con contraseña — Por defecto, cada pago requiere aprobación con contraseña (si activas el pago autónomo, solo hay excepciones bajo las condiciones siguientes). Las claves se guardan cifradas (Argon2id + AES-256-GCM) y solo se descifran al pagar, borrándolas de inmediato (con la sesión de pago autónomo activada, se conservan en memoria solo mientras dura el desbloqueo).
Límites — Configura cuánto se puede enviar por operación y por día (por defecto: 5 por operación · 20 USDC diarios). Si se supera, se bloquea.
Bloqueo de emergencia — Al activar el botón de escudo del encabezado, todas las transferencias se bloquean al instante.
Direcciones de confianza · pago autónomo — Para aprobar automáticamente sin contraseña deben cumplirse las tres condiciones: sesión desbloqueada + límite pequeño + dirección de confianza. En cualquier otro caso, siempre se pide contraseña.
Historial de transacciones — Registra todas las transferencias enviadas, los intentos bloqueados y las firmas.
Prioridad local — Las claves (
~/.jigap/) están fuera del repositorio y no se suben a git.Sin analíticas ni CDN de fuentes — La app solo se conecta a internet por tres motivos: ①el servidor RPC para consultar saldos y enviar transferencias, ②la dirección x402 que solicita la IA, ③la comprobación de actualizaciones (GitHub). No se envía ningún registro de uso a ningún sitio, y las fuentes están incluidas en la app, así que la interfaz funciona igual en modo offline.
La comprobación de actualizaciones se puede desactivar — Al abrir la app, consulta a GitHub si hay una versión nueva (allí quedan registrados tu IP y la versión actual). Si la desactivas en Configuración → Información → Comprobar al iniciar, esa comunicación también desaparece. Tanto si la dejas activada como si no, la instalación siempre requiere que pulses tú — nada se cambia en secreto.
Para desarrolladores
También puedes manejar la misma billetera con la CLI kura (comparte el servidor MCP y la lógica central). Ya viene incluida en la app instalada; basta con añadir una línea al PATH:
sudo mkdir -p /usr/local/bin
sudo ln -sf /Applications/Kura.app/Contents/MacOS/kura-cli /usr/local/bin/kura
kura statusPara ejecutarla desde el código fuente:
cargo run --manifest-path ./kura-mcp/Cargo.toml --bin kura -- status
cargo run --manifest-path ./kura-mcp/Cargo.toml --bin kura -- balance
cargo run --manifest-path ./kura-mcp/Cargo.toml --bin kura -- history --limit 10
cargo run --manifest-path ./kura-mcp/Cargo.toml --bin kura -- pay <주소> <금액> --token usdc
cargo run --manifest-path ./kura-mcp/Cargo.toml --bin kura -- fetch <URL>pay/fetch no aceptan la contraseña por CLI — la app de Kura debe estar abierta y la persona introduce la contraseña en la ventana de aprobación.
Pruebas:
(cd src-tauri && cargo test) # 백엔드(지갑·암호화·한도·송금)
(cd kura-mcp && cargo test) # MCP/CLI 어댑터
npx tsc --noEmit && npx vite build # 프론트El procedimiento para crear la distribución (DMG firmado y notarizado) está en docs/RELEASE.md. Requiere una cuenta de Apple Developer y una configuración inicial; a partir de ahí, es una sola línea:
./scripts/release.shStack tecnológico
Escritorio | Tauri (Rust + frontend web) |
Frontend | React + Tailwind CSS, Framer Motion, Lucide, Pretendard |
Cadena | Base / alloy-rs |
Pagos | x402 (firma off-chain EIP-3009) |
Conexión IA | Servidor MCP (rmcp) |
Estructura: [núcleo Rust (src-tauri)] ← adaptador MCP / CLI (kura-mcp). Solo el proceso de la GUI accede a las claves (firma) — esa es la última línea de defensa.
Licencia · estado
Licencia MIT — Es código que maneja llaves y dinero, así que creo que debe poder leerse, verificarse y modificarse directamente.
Si encuentras una vulnerabilidad, avísame por la vía privada indicada en SECURITY.md antes de abrir un issue. En ese mismo documento también he anotado lo que Kura no puede impedir.
La fuente Pretendard incluida está bajo la SIL Open Font License 1.1 (texto completo).
El primer usuario soy yo mismo — es una billetera para desarrolladores y creadores coreanos que pagan con LLM locales o Claude en Mac con Apple Silicon. Aún es una versión inicial 0.1.x, así que te recomiendo que primero la pruebes en la testnet (la opción por defecto) y que en la mainnet solo pongas lo que puedas permitirte perder.
This server cannot be installed
Maintenance
Related MCP Servers
AlicenseAqualityDmaintenanceProvides a non-custodial USDC wallet on Base for AI agents, with human-in-the-loop approval for every payment.2415MIT- AlicenseAqualityDmaintenanceGives AI agents a smart-contract wallet on Base (USDC) with 10 stdio tools: create wallets, send USDC payments, pay x402-protected HTTP resources, and run ERC-8183 escrow Jobs for A2A service delivery.1014MIT
- AlicenseNot gradedqualityAmaintenanceA budget-bound x402 payment wallet for AI agents: it autonomously pays HTTP 402 payment-gated URLs across every major chain (EVM, Solana, and many non-EVM families). Self-custodial and backendless, your key, your RPC, with spend caps enforced before any on-chain send.7MIT

@arispay/payagent-mcpofficial
AlicenseDqualityFmaintenanceEnables AI agents to call paid APIs and settle HTTP 402 payment challenges with USDC on Base, without private keys ever being involved.2102MIT
Related MCP Connectors
Read-only on-chain intel for AI agents on Base: balances, tokens, gas, tx status. No API keys.
PayPerByte — per-byte data for AI agents: x402 USDC on Base, EIP-712-attested. No token.
Read-only on-chain intelligence for AI agents on Base: balances, tokens, gas, tx status.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/dinggi5/kura'
If you have feedback or need assistance with the MCP directory API, please join our Discord server