MIST.cash MCP Server

MIST.cash MCP Server

Enables AI agents to interact with MIST.cash privacy-preserving payment protocol on Starknet, supporting private transactions with multiple tokens (ETH, USDC, USDT, DAI) through zero-knowledge proofs.

Category
访问服务器

README

Servidor MCP para MIST.cash SDK

Un servidor del Protocolo de Contexto de Modelo (MCP) que expone la funcionalidad de pagos privados de MIST.cash en Starknet. Este servidor permite a los agentes de IA interactuar con el protocolo de pagos preservadores de privacidad de MIST.cash a través de una interfaz estandarizada.

🌟 Características

  • 5 Herramientas MCP para operaciones de transacción
  • 2 Recursos MCP para información de contratos y transacciones
  • Privacidad Primero: Aprovecha el sistema de pruebas de conocimiento cero de MIST.cash
  • Soporte Multi-Token: ETH, USDC, USDT, DAI en Starknet
  • Listo para Producción: Lógica de reintento, tiempos de espera (timeouts) y manejo integral de errores

📋 Requisitos Previos

  • Node.js 20 o superior (si se ejecuta localmente)
  • Docker (recomendado para equipos)
  • Acceso a un proveedor RPC de Starknet (o Appchain compatible)

🚀 Instalación y Configuración

Opción 1: Docker (Recomendado para el Equipo)

Esta es la forma más sencilla de asegurar que todos en el equipo tengan el mismo entorno.

  1. Construir la imagen:

    docker build -t mcp-mistcash .
    
  2. Ejecutar con Docker:

    Para usarlo con clientes MCP (como Claude Desktop), usarás el comando docker run. Nota la bandera -i que es requerida para la comunicación stdio.

    docker run -i --rm \
      -e STARKNET_RPC_URL=https://ztarknet-madara.d.karnot.xyz \
      -e STARKNET_NETWORK=mainnet \
      -e CHAMBER_CONTRACT_ADDRESS=0xTuDireccionDeContrato \
      mcp-mistcash
    

Opción 2: Desarrollo Local (Node.js)

  1. Clonar e instalar dependencias:

    cd mcp-mistcash
    npm install
    
  2. Configurar variables de entorno:

    Crea un archivo .env basado en el ejemplo:

    cp .env.example .env
    

    Edita .env con tu configuración (ejemplo para Madara Appchain):

    STARKNET_RPC_URL=https://ztarknet-madara.d.karnot.xyz
    STARKNET_NETWORK=mainnet
    MCP_LOG_LEVEL=info
    # Opcional: Dirección del contrato Chamber (Requerido para Madara si no usas Mainnet)
    # CHAMBER_CONTRACT_ADDRESS=0x...
    
  3. Construir el proyecto:

    npm run build
    

🔌 Integración con Clientes de IA

Para que tu equipo pueda usar estas herramientas en su día a día, deben configurar su cliente de IA preferido.

Claude Desktop

Añade lo siguiente a tu archivo de configuración claude_desktop_config.json:

Ruta del archivo de configuración:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json

Configuración con Docker (Recomendada)

{
  "mcpServers": {
    "mist-cash": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e", "STARKNET_RPC_URL=https://ztarknet-madara.d.karnot.xyz",
        "-e", "STARKNET_NETWORK=mainnet",
        "mcp-mistcash"
      ]
    }
  }
}

Configuración Local (Alternativa)

{
  "mcpServers": {
    "mist-cash": {
      "command": "node",
      "args": ["/ruta/absoluta/a/mcp-mistcash/dist/index.js"],
      "env": {
        "STARKNET_RPC_URL": "https://ztarknet-madara.d.karnot.xyz",
        "STARKNET_NETWORK": "mainnet"
      }
    }
  }
}

Cursor IDE

Añade esto a tus configuraciones de MCP en Cursor:

{
  "mist-cash": {
    "command": "docker",
    "args": [
        "run",
        "-i",
        "--rm",
        "-e", "STARKNET_RPC_URL=https://ztarknet-madara.d.karnot.xyz",
        "-e", "STARKNET_NETWORK=mainnet",
        "mcp-mistcash"
    ]
  }
}

🛠️ Herramientas Disponibles

1. generar_secreto_transaccion

Genera un secreto criptográfico para una transacción privada.

Parámetros:

  • claiming_key (string, requerido): Clave de reclamación para la transacción
  • recipient_address (string, requerido): Dirección Starknet (0x...)

2. obtener_assets_transaccion

Obtiene los activos de una transacción.

⚠️ ADVERTENCIA: Esta función muestra activos incluso si ya han sido gastados. Usa verificar_existencia_transaccion para una verificación precisa.

Parámetros:

  • transaction_key (string, requerido): Clave de la transacción a consultar
  • recipient_address (string, requerido): Dirección Starknet del receptor
  • provider_rpc_url (string, opcional): URL RPC personalizada

3. verificar_existencia_transaccion

Verifica si existe una transacción con activos específicos. Ideal para transacciones completamente privadas.

Parámetros:

  • claiming_key (string, requerido): Clave de reclamación
  • recipient (string, requerido): Dirección del receptor
  • token_address (string, requerido): Dirección del contrato del token
  • amount (string, requerido): Cantidad en unidades base (wei)

4. calcular_hash_transaccion

Calcula el hash único de una transacción.

Parámetros:

  • transaction_key (string, requerido): Clave de la transacción
  • recipient_address (string, requerido): Dirección del receptor
  • token_address (string, requerido): Dirección del token
  • amount (string, requerido): Cantidad en unidades base

5. obtener_configuracion_chamber

Obtiene la configuración del contrato Chamber y los tokens soportados.

Parámetros:

  • network (enum, opcional): "mainnet" o "sepolia" (por defecto: "mainnet")

📚 Recursos Disponibles

chamber://contract-info

Información estática sobre el contrato Chamber de MIST.cash, incluyendo ABI, direcciones y características.

chamber://tx/{txHash}

Detalles para una transacción específica por hash.

🔒 Consideraciones de Seguridad

✅ Prácticas Seguras

  • Sin Claves Privadas: Solo se manejan claves de reclamación (públicas)
  • Validación de Direcciones: Todas las direcciones Starknet son validadas
  • Logging Seguro: Los secretos de las transacciones nunca se registran en los logs
  • Validación de Entrada: Esquemas Zod validan todas las entradas

⚠️ Advertencias Importantes

  1. Transacciones Gastadas: obtener_assets_transaccion no detecta activos gastados
  2. Costos RPC: Monitorea el uso del RPC para evitar costos inesperados
  3. Retrasos de Red: Timeout de 30 segundos en todas las llamadas al contrato

🏗️ Estructura del Proyecto

mcp-mistcash/
├── src/
│   ├── index.ts                 # Servidor MCP principal
│   ├── types.ts                 # Definiciones de tipos TypeScript
│   ├── tools/                   # Implementación de herramientas
│   ├── resources/               # Recursos MCP
│   └── utils/                   # Utilidades (provider, validación)
├── Dockerfile                   # Configuración para construir la imagen Docker
├── package.json
├── tsconfig.json
├── .env.example
└── README.md

🤝 Contribuciones

Las contribuciones son bienvenidas. Por favor asegúrate de:

  1. Que todas las herramientas tengan manejo de errores adecuado
  2. Los esquemas Zod validen las entradas
  3. El código siga las mejores prácticas de TypeScript
  4. La documentación esté actualizada

📄 Licencia

MIT


Construido con ❤️ para las comunidades de Starknet y MCP

推荐服务器

Baidu Map

Baidu Map

百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
Kagi MCP Server

Kagi MCP Server

一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

官方
精选
Python
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选
Neon MCP Server

Neon MCP Server

用于与 Neon 管理 API 和数据库交互的 MCP 服务器

官方
精选
Exa MCP Server

Exa MCP Server

模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

官方
精选