Sui Butler

Un servidor MCP para el ecosistema blockchain Sui que conecta inteligencia artificial para un desarrollo simplificado. Soporta modos zkLogin y clave privada.

Documentación

Sui Butler

NPM Version

Mover a https://github.com/tamago-labs/sui-mcp

Sui Butler es una implementación de servidor de Model Context Protocol (MCP) para el ecosistema de la blockchain de Sui que une la inteligencia artificial para un desarrollo simplificado y más.

Componentes

El sistema se compone de dos subsistemas:

  • Sui Butler Client – (Este repositorio) Una biblioteca de TypeScript para Node.js diseñada para ejecutarse dentro de clientes de modelos de IA compatibles con MCP, como Claude Desktop. Permite que los agentes de IA interactúen con la blockchain de Sui.
  • Sui Butler Backend – El sistema backend construido con AWS Serverless Stack. Incluye servicios backend y un panel para emitir claves de acceso y gestionar transacciones en modo zkLogin.

Características

  • Más de 30 herramientas MCP que cubren gestión de cuentas, desarrollo de contratos inteligentes, staking, operaciones con tokens y datos de mercado
  • Intercambios de tokens en Mainnet a través del agregador Cetus DEX
  • Integración del oráculo de precios de Pyth para datos de mercado en tiempo real
  • Integración con Sui CLI para desarrollo y prueba de contratos inteligentes
  • Totalmente no custodial, permite transacciones usando billeteras zkLogin desde la interfaz de chat de IA

Uso con Claude Desktop

Hay dos modos disponibles: zkLogin (recomendado para la mayoría de los nuevos usuarios) y Clave Privada (para usuarios avanzados).

Modo de Clave Privada

En el modo de Clave Privada, todas las operaciones (incluidas transferencias y otras operaciones de escritura) se ejecutarán automáticamente sin requerir aprobación adicional.

  1. Instala Claude Desktop si aún no lo has hecho
  2. Abre la configuración de Claude Desktop
  3. Añade el cliente Sui MCP a tu configuración:
{
  "mcpServers": {
    "sui-butler": {
      "command": "npx",
      "args": [
        "-y",
        "sui-butler",
        "--sui_private_key=YOUR_PRIVATE_KEY", 
        "--sui_network=mainnet"
      ],
      "disabled": false
    }
  }
}

El modo de Clave Privada se recomienda para usuarios avanzados que puedan gestionar sus claves privadas de forma segura. El cliente MCP maneja las transacciones localmente sin exponer ningún dato a servidores externos.

Modo zkLogin

Con la autenticación zkLogin, las operaciones de lectura (consultas de saldo, cotizaciones) funcionan de inmediato, pero las operaciones de escritura (transferencias, intercambios) requieren aprobación en el panel.

  1. Instala Claude Desktop si aún no lo has hecho
  2. Abre la configuración de Claude Desktop
  3. Añade el cliente Sui MCP a tu configuración:
{
  "mcpServers": {
    "sui-butler": {
      "command": "npx",
      "args": [
        "-y",
        "sui-butler",
        "--sui_access_key=YOUR_ACCESS_KEY", 
        "--sui_network=mainnet"
      ],
      "disabled": false
    }
  }
}

La clave de acceso se puede obtener desde el panel. Después de iniciar sesión, se generará una clave de acceso única para cada usuario.

Casos de Uso

1. Gestión de Cartera DeFi

Butler se conecta a los oráculos de precios de Pyth y a fuentes externas para ayudarte a:

  • Monitorear precios de criptomonedas en tiempo real en múltiples activos
  • Comparar precios entre diferentes plataformas para oportunidades de trading óptimas
  • Ejecutar intercambios de tokens a través del Agregador Cetus

Ejemplo:

Screenshot from 2025-05-18 18-08-37

Screenshot from 2025-05-18 18-11-29

2. Asistencia en Desarrollo y Pruebas de Contratos Inteligentes

Butler se integra con Sui CLI para ayudar a los desarrolladores:

  • Analizar código Move existente y sugerir mejoras
  • Generar casos de prueba completos para contratos inteligentes
  • Publicar y actualizar paquetes directamente a través de la conversación con IA

Ejemplo:

Screenshot from 2025-05-18 18-13-38

Screenshot from 2025-05-18 18-14-05

Screenshot from 2025-05-18 18-14-20

Screenshot from 2025-05-18 18-14-34

3. Gobernanza de Protocolo y Gestión de Parámetros

Butler asiste a los gestores de protocolos DeFi con:

  • Verificar fuentes externas para determinar parámetros óptimos según las condiciones actuales del mercado
  • Por ejemplo, en protocolos de colateralización, Butler puede analizar precios de activos para sugerir mejores configuraciones de ratio de colateral para contratos inteligentes
  • Luego proponer nuevos parámetros de gobernanza a través de conversaciones con IA

Ejemplo:

Screenshot from 2025-05-22 08-02-10

Antecedentes

Hoy en día, al construir aplicaciones de IA—especialmente las centradas en cripto—a menudo dependemos de kits de agentes basados en Langchain. Estos kits acoplan estrechamente el modelo de IA y los componentes, requiriendo actualizaciones frecuentes; de lo contrario, la aplicación corre el riesgo de volverse no funcional en unos pocos meses o incluso semanas.

El Protocolo de Contexto de Modelo (MCP), introducido por Claude AI a finales de 2024, se ha vuelto rápidamente popular hoy en día. Resuelve este problema integrándose directamente con las interfaces de IA, permitiendo a los usuarios cambiar fácilmente a los últimos modelos e interactuar con Web3 a través de herramientas estandarizadas.

Herramientas Disponibles

Operaciones de Cartera

Nombre de la herramientaDescripciónEjemplo de uso
sui_get_wallet_addressObtén tu dirección de cartera"¿Cuál es mi dirección de cartera?"
sui_get_all_balancesObtén todos los saldos de tokens"Muestra mis saldos de tokens"

Transferencias de Tokens y DeFi

Nombre de la herramientaDescripciónEjemplo de uso
sui_transfer_tokenTransfiere tokens a otra dirección"Transfiere 10 SUI a 0x123..."
sui_get_swap_quoteObtén una cotización para intercambiar tokens"Obtén cotización para intercambiar 10 SUI a CETUS"
sui_swap_tokensIntercambia tokens en el Agregador Cetus"Intercambia 10 SUI a CETUS con 0.5% de deslizamiento"

Operaciones de Staking

Nombre de la herramientaDescripciónEjemplo de uso
sui_get_validatorsObtén todos los validadores activos"¿Cuáles son buenos validadores para hacer staking?"
sui_stakeHaz staking de tokens SUI en un validador"Haz staking de 100 SUI en el validador X"
sui_get_stakeObtén todos los tokens SUI en staking"Muestra mis posiciones en staking"
sui_unstakeRetira tokens SUI del staking"Retira mi SUI del validador X"

Gestión de Tokens

Nombre de la herramientaDescripciónEjemplo de uso
sui_deploy_tokenDespliega un nuevo token en Sui"Crea un token llamado MyToken con símbolo MTK"

Servicios de Dominio SNS

Nombre de la herramientaDescripciónEjemplo de uso
sui_get_sns_name_recordObtén información del dominio SNS"Busca información sobre domain.sui"
sui_register_snsRegistra un dominio SNS"Registra myname.sui por 2 años"

Integración con Sui CLI

Nombre de la herramientaDescripciónEjemplo de uso
sui_cli_publishDespliega un paquete Move en la red"Despliega un paquete Move de la carpeta proporcionada a la red"
sui_cli_move_testEjecuta pruebas unitarias de Move en la carpeta"Ejecuta pruebas para mi contrato inteligente en la carpeta proporcionada"
sui_cli_move_newCrea un nuevo proyecto Move"Ayuda a crear un nuevo proyecto Move llamado my-project-test"
sui_cli_move_buildCompila un paquete Move"Ayuda a compilar el paquete en la carpeta proporcionada"
sui_cli_callLlama a una función Move"Llama al paquete 0x1234 en update_k() con estos argumentos [10000]"
sui_cli_active_envObtén el entorno de red Sui actualmente activo"¿A qué red está conectado Sui CLI?"
sui_cli_active_addressObtén la dirección activa en Sui CLI"¿Obtener dirección activa en Sui CLI?"
sui_cli_addressesLista todas las direcciones de cartera y sus alias"¿Listar todas las carteras en Sui CLI?"
sui_cli_switch_addressCambia la dirección activa"Cambia la dirección activa en Sui CLI a 0x456"

Datos de Precio (Pyth)

Nombre de la herramientaDescripciónEjemplo de uso
pyth_search_price_feedsBusca fuentes de precios"Encuentra fuentes de precios de BTC en Pyth"
pyth_get_pricesObtén precios por IDs de fuente"Obtén los últimos precios de BTC y ETH"
pyth_get_common_crypto_pricesObtén precios comunes de criptomonedas"¿Cuáles son los precios actuales de BTC, ETH, SOL y SUI?"

Flujo de Transacciones zkLogin

Cuando un usuario opera en modo zkLogin usando un cliente de IA compatible con MCP:

  1. El cliente envía una solicitud de transacción al backend.
  2. La transacción se almacena en la base de datos con estado pendiente.
  3. El usuario puede visitar el panel para aprobar manualmente la transacción usando su sesión autenticada con zkLogin.

Solución de Problemas

Si estás usando Ubuntu u otro entorno Linux con NVM, necesitarás configurar la ruta manualmente. Sigue estos pasos:

  1. Instala Sui Butler bajo tu versión actual de Node.js gestionada por NVM.
npm install -g sui-butler
  1. Debido a cómo NVM instala las bibliotecas, es posible que necesites usar rutas absolutas en tu configuración. Reemplaza los valores de ejemplo a continuación con tu nombre de usuario y versión de Node reales:
{
  "mcpServers": {
    "sui-mcp": {
      "command": "/home/YOUR_NAME/.nvm/versions/node/YOUR_NODE_VERSION/bin/node",
      "args": [
        "/home/YOUR_NAME/.nvm/versions/node/YOUR_NODE_VERSION/bin/sui-butler",
        "--sui_access_key=YOUR_ACCESS_KEY",
        "--sui_network=mainnet"
      ]
    }
  }
}
  1. Reinicia Claude Desktop y debería funcionar ahora.

Trabajar con Archivos Locales

Al trabajar con archivos locales, especialmente cuando usas herramientas de Sui CLI para desarrollo de contratos inteligentes para crear, compilar y probar un paquete Move en tu máquina—necesitarás importar una biblioteca adicional de servidor MCP de filesystem creada por el equipo de Claude. Úsala con:

"filesystem": {
  "command": "npx",
  "args": [
    "-y",
    "@modelcontextprotocol/server-filesystem",
    "${workspaceFolder}"
  ],
  "disabled": false
}

workspaceFolder se refiere a tu directorio de trabajo. Puedes proporcionar más de un argumento. Las subcarpetas o archivos específicos pueden luego ser referenciados en tu prompt de IA.

Si estás usando Linux y encuentras problemas durante la configuración, consulta la sección de solución de problemas.

Licencia

Este proyecto está licenciado bajo la Licencia MIT.