Skip to main content
Glama

MCP Blockchain Server

Servidor blockchain y DApp MCP

Un sistema seguro que permite a los asistentes de IA interactuar con contratos inteligentes de blockchain y al mismo tiempo garantizar que los usuarios mantengan un control total sobre sus claves privadas y la firma de transacciones.

Descripción general

Este proyecto aborda un desafío clave en la integración de IA y blockchain: permitir que los asistentes de IA lean datos de blockchain y preparen transacciones mientras se garantiza que los usuarios mantengan control exclusivo sobre la firma de transacciones y las claves privadas.

El sistema consta de:

  1. Servidor MCP : un servidor de protocolo de contexto de modelo que expone las operaciones de blockchain como herramientas que pueden ser utilizadas por asistentes de IA
  2. Web DApp : una aplicación React que proporciona una interfaz de usuario para la conexión de billetera y la firma de transacciones.
  3. Base de datos : base de datos PostgreSQL para almacenar usuarios, claves API y registros de transacciones
  4. Almacenamiento en caché : Redis para almacenar en caché datos a los que se accede con frecuencia

Características

Características del servidor MCP

  • Acceso a datos de blockchain : lectura de saldos, estado de contratos y otros datos en cadena
  • Preparación de transacciones : crear transacciones sin firmar para la aprobación del usuario
  • Compatibilidad con múltiples cadenas : funciona con Ethereum, Polygon y otras cadenas compatibles con EVM
  • Interacción de contratos inteligentes : lea contratos inteligentes verificados en redes compatibles
  • Diseño que prioriza la seguridad : las claves privadas nunca salen de la billetera del usuario

Características de la aplicación web DApp

  • Integración de billetera : conéctese con MetaMask y otras billeteras Web3
  • Revisión de transacciones : interfaz de usuario clara para revisar los detalles de la transacción antes de firmar
  • Firma de transacciones : Firme transacciones con la billetera conectada
  • Seguimiento de transacciones : supervise el estado de las transacciones enviadas
  • Compatibilidad móvil : el diseño adaptable funciona en todos los dispositivos.

Principios de seguridad

  1. Aislamiento de clave privada : las claves nunca salen de la billetera del usuario
  2. Verificación de transacciones : interfaz de usuario clara para revisar los detalles de la transacción
  3. Autenticación de API : gestión segura de claves API
  4. Limitación de velocidad : evitar el abuso
  5. Validación de entrada : desinfectar todas las entradas
  6. Registro de auditoría : seguimiento de todas las operaciones
  7. Sólo HTTPS : Comunicaciones seguras
  8. Política de seguridad de contenido : Prevenir XSS

Flujo de transacciones

  1. El asistente de IA solicita transacciones a través del servidor MCP
  2. El servidor MCP prepara una transacción sin firmar con UUID
  3. El servidor MCP devuelve la URL de la transacción al asistente de IA
  4. El asistente de IA proporciona la URL al usuario
  5. El usuario abre la URL en el navegador
  6. El usuario conecta la billetera y revisa los detalles de la transacción.
  7. El usuario aprueba y firma la transacción con su billetera
  8. La aplicación web DApp envía la transacción firmada a la cadena de bloques
  9. El estado de la transacción se actualiza y se rastrea.

Empezando

Prerrequisitos

  • Node.js (v18 o superior)
  • npm o hilo
  • PostgreSQL
  • Redis (opcional, para almacenamiento en caché)
  • Clave API de Infura (para acceso a blockchain)
  • Clave API de Etherscan (para ABI de contrato)

Instalación

  1. Clonar el repositorio:
git clone https://github.com/zhangzhongnan928/mcp-blockchain-server.git cd mcp-blockchain-server
  1. Instalar dependencias:
npm install # or yarn install
  1. Configurar variables de entorno: Cree un archivo .env en el directorio raíz (o cópielo desde .env.example ):
cp .env.example .env # Edit .env with your configurations
  1. Configurar la base de datos:
# For detailed instructions, see the Database Setup Guide # docs/database-setup.md # Create the PostgreSQL database createdb mcp_blockchain # Run database migrations npm run db:migrate # or yarn db:migrate

Consulte la Guía de configuración de la base de datos para obtener instrucciones detalladas sobre la instalación y configuración de PostgreSQL.

  1. Iniciar el servidor:
npm run dev # or yarn dev

Uso de Docker Compose

Para comenzar rápidamente a utilizar Docker:

# Create .env file with required environment variables cp .env.example .env # Edit .env with your configurations # Start the services docker-compose up -d

Esto comenzará:

  • Base de datos PostgreSQL
  • Caché de Redis
  • Servidor MCP
  • Aplicación web descentralizada

Desarrollo

Estructura del servidor

  • src/mcp : Implementación del servidor MCP
  • src/services : Servicios de lógica empresarial básica
  • src/utils : Funciones de utilidad
  • src/index.ts : Punto de entrada principal

Estructura de la aplicación web DApp

  • web/src/components : Componentes de React
  • web/src/hooks : Ganchos de React personalizados
  • web/src/services : Servicios API
  • web/src/pages : Componentes de la página

Uso del servidor MCP

El servidor MCP expone varias herramientas que pueden utilizar los asistentes de IA:

  • get-chains : Obtener la lista de redes blockchain compatibles
  • get-balance : Obtener el saldo de la cuenta de una dirección
  • read-contract : Leer datos de un contrato inteligente
  • prepare-transaction : prepara una transacción sin firmar para la aprobación del usuario
  • get-transaction-status : obtener el estado actual de una transacción

Ejemplo de uso de la herramienta

// Example of using the get-balance tool const result = await callTool("get-balance", { chainId: "1", address: "0x742d35Cc6634C0532925a3b844Bc454e4438f44e" });

Solución de problemas

Si encuentra problemas con las dependencias:

# MCP SDK issue - install directly from GitHub npm uninstall @modelcontextprotocol/sdk npm install modelcontextprotocol/typescript-sdk

Para problemas de conexión a la base de datos, consulte la Guía de configuración de la base de datos .

Licencia

Este proyecto está licenciado bajo la licencia MIT: consulte el archivo de LICENCIA para obtener más detalles.

-
security - not tested
A
license - permissive license
-
quality - not tested

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

Un sistema seguro que permite a los asistentes de IA interactuar con datos de blockchain y preparar transacciones, garantizando al mismo tiempo que los usuarios mantengan control exclusivo sobre sus claves privadas y la firma de transacciones.

  1. Descripción general
    1. Características
      1. Características del servidor MCP
      2. Características de la aplicación web DApp
    2. Principios de seguridad
      1. Flujo de transacciones
        1. Empezando
          1. Prerrequisitos
          2. Instalación
          3. Uso de Docker Compose
        2. Desarrollo
          1. Estructura del servidor
          2. Estructura de la aplicación web DApp
        3. Uso del servidor MCP
          1. Ejemplo de uso de la herramienta
        4. Solución de problemas
          1. Licencia

            Related MCP Servers

            • A
              security
              A
              license
              A
              quality
              Provides tools for AI assistants to interact with the Ethereum blockchain through standard JSON-RPC methods, enabling queries for account balances, gas prices, and smart contract code.
              Last updated -
              6
              8
              JavaScript
              MIT License
            • -
              security
              A
              license
              -
              quality
              A comprehensive toolkit for building AI agents with blockchain capabilities, enabling interactions with multiple blockchain networks for tasks like wallet management, fund transfers, smart contract interactions, and cross-chain asset bridging.
              Last updated -
              3
              TypeScript
              GPL 3.0
              • Linux
              • Apple
            • -
              security
              F
              license
              -
              quality
              A Model Context Protocol server that enables AI assistants to access Flow blockchain data and perform operations such as checking balances, resolving domains, executing scripts, and submitting transactions.
              Last updated -
              1
              JavaScript
              • Linux
              • Apple
            • -
              security
              F
              license
              -
              quality
              Enables natural language interaction with the Avalanche blockchain through AI assistants, allowing users to execute Avalanche CLI commands and AvalancheJS API operations without technical knowledge.
              Last updated -
              1
              TypeScript

            View all related MCP servers

            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/zhangzhongnan928/mcp-blockchain-server'

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