Skip to main content
Glama
vsima

canton-agent-mcp

by vsima

canton+agent-mcp

Tu agente pide. Tú apruebas. El hardware firma.

ci License: Apache-2.0

Un servidor MCP que permite a un agente de IA usar la Canton Network a través de la cartera móvil de una persona. El agente puede pedir iniciar sesión y pagar; cada solicitud llega como una hoja de aprobación al teléfono de la persona, y lo que se firma lo firma la clave del dispositivo (Secure Enclave o Android StrongBox), nunca el agente.

Este servidor es un cliente dApp CIP-0103 sobre WalletConnect. No posee clave ninguna ni tokens del ledger. Solo puede pedir, y el propietario de la cartera puede ver, aprobar o rechazar cada solicitud.

Cómo funciona

  1. El agente llama a canton_connect_wallet; aparece un QR de emparejamiento de WalletConnect.

  2. La persona lo escanea desde la pestaña Conectar de su cartera y lo aprueba en el teléfono.

  3. A partir de ahí, el agente puede solicitar el inicio de sesión (canton_sign_in) o un pago (canton_request_payment). Cada solicitud abre una hoja de aprobación en el teléfono; la cartera prepara la transacción en su participante, vuelve a verificar el hash de la transacción preparada en el dispositivo y firma en hardware.

  4. Las sesiones persisten en disco, por lo que la cartera se empareja una sola vez y se reutiliza.

La cartera de referencia en el otro extremo es canton-mobile-app (iOS y Android, construida con el canton-mobile-sdk nativo), pero cualquier cartera CIP-0103 que hable WalletConnect funciona.

Related MCP server: Grip MCP

Inicio rápido

Requiere Node 22.6+ (el servidor ejecuta TypeScript directamente, sin paso de compilación) y un identificador de proyecto libre de WalletConnect Cloud.

git clone https://github.com/vsima/canton-agent-mcp
cd canton-agent-mcp && npm install

Regístralo con Claude Code:

claude mcp add canton-agent --env WC_PROJECT_ID=<your-project-id> \
  -- node <path-to>/canton-agent-mcp/src/main.ts

Después pide al agente que conecte tu cartera y pague a alguien. Una solicitud de pago se bloquea hasta que la persona decide, así que aumenta el timeout de las herramientas de tu cliente MCP si corta las llamadas largas (en Claude Code: la variable de entorno MCP_TIMEOUT).

Herramientas

Herramienta

Qué hace

canton_connect_wallet

Inicia el emparejamiento; devuelve el QR que la persona escanea

canton_wallet_status

Si una cartera está conectada y a qué red

canton_accounts

Las partes que la cartera otorgó, con sus claves públicas

canton_sign_in

Inicio de sesión con Canton: una prueba firmada y verificada de la parte

canton_request_payment

Envía una transferencia de Token Standard para su aprobación en el teléfono

canton_disconnect

Finaliza la sesión

Configuración

Todo mediante variables de entorno:

Variable

Valor por defecto

What is

WC_PROJECT_ID

obligatorio

Identificador de proyecto de WalletConnect Cloud

WC_RELAY_URL

relay público

URL WebSocket del relay

CANTON_NETWORK_ID

canton:localnet

Identificador de red CAIP-2

AGENT_MCP_NAME

Canton Agent

Se muestra en las hojas de aprobación de la cartera

AGENT_MCP_DOMAIN

canton-agent-mcp.local

Dominio del desafío de inicio de sesión

AGENT_MCP_STORAGE

~/.canton-agent-mcp/wc-store

Directorio de almacén de sesiones

AGENT_MCP_REQUEST_EXPIRY

3600

Segundos durante los que una solicitud sigue respondiendo (300 a 604800)

CANTON_LEDGER_URL / CANTON_REGISTRY_URL / CANTON_VALIDATOR_URL

Splice LocalNet

Dónde se construyen los comandos de pago

Los pagos usan por defecto un Splice LocalNet local (arranca uno con integration/run-local.sh del repositorio del SDK).

Modelo de seguridad

  • El servidor puede pedir, nunca actuar: sin claves, sin tokens del ledger, sin teantar.

  • Cada inicio de sesión y cada pago necesita una aprobación explícita en el teléfono.

  • La cartera vuelve a derivar y verifica el hash de la transacción preparada en el dispositivo antes de que su clave de hardware firme, de modo que el teléfono solo puede firmar lo que ha mostrado.

  • Las solicitudes caducan (una hora por defecto); el relay las almacena cifradas.

  • La política de gasto de la cartera (límites por agente y listas permitidas, aplicadas por la cartera antes de firmar) es el próximo hito en el SDK correspondiente.

Desarrollo

npm test        # typecheck + unit tests (no network)
npm run probe   # opens a real relay session and prints the pairing QR

Un proyecto independiente de código abierto, construido por la comunidad, con licencia Apache-2.0. No está afiliado ni respaldado por Digital Asset, la Canton Foundation ni la Global Synchronizer Foundation.

A
license - permissive license
Not graded
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    A
    quality
    C
    maintenance
    Cryptographic proof of consent for AI agents. Sign before you act. Policy engine enforces spending caps, action whitelists, and escalation rules. Independently verifiable by anyone.
    10
    2
    Apache 2.0
  • A
    license
    A
    quality
    D
    maintenance
    Enables AI agents to check balances and send transactions across multiple blockchains with automatic spending limit protection and policy enforcement.
    3
    MIT

View all related MCP servers

Related MCP Connectors

  • Provide AI agents and automation tools with contextual access to blockchain data including balance…

  • Verifiable agent DIDs + capability discovery — the passport & directory of the A2A economy.

  • Trust and payment layer for the agentic economy on the XRP Ledger.

View all MCP Connectors

Latest Blog Posts

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/vsima/canton-agent-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server