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:
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
Web DApp : una aplicación React que proporciona una interfaz de usuario para la conexión de billetera y la firma de transacciones.
Base de datos : base de datos PostgreSQL para almacenar usuarios, claves API y registros de transacciones
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
Aislamiento de clave privada : las claves nunca salen de la billetera del usuario
Verificación de transacciones : interfaz de usuario clara para revisar los detalles de la transacción
Autenticación de API : gestión segura de claves API
Limitación de velocidad : evitar el abuso
Validación de entrada : desinfectar todas las entradas
Registro de auditoría : seguimiento de todas las operaciones
Sólo HTTPS : Comunicaciones seguras
Política de seguridad de contenido : Prevenir XSS
Flujo de transacciones
El asistente de IA solicita transacciones a través del servidor MCP
El servidor MCP prepara una transacción sin firmar con UUID
El servidor MCP devuelve la URL de la transacción al asistente de IA
El asistente de IA proporciona la URL al usuario
El usuario abre la URL en el navegador
El usuario conecta la billetera y revisa los detalles de la transacción.
El usuario aprueba y firma la transacción con su billetera
La aplicación web DApp envía la transacción firmada a la cadena de bloques
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
Clonar el repositorio:
Instalar dependencias:
Configurar variables de entorno: Cree un archivo
.env
en el directorio raíz (o cópielo desde.env.example
):
Configurar la base de datos:
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.
Iniciar el servidor:
Uso de Docker Compose
Para comenzar rápidamente a utilizar Docker:
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 MCPsrc/services
: Servicios de lógica empresarial básicasrc/utils
: Funciones de utilidadsrc/index.ts
: Punto de entrada principal
Estructura de la aplicación web DApp
web/src/components
: Componentes de Reactweb/src/hooks
: Ganchos de React personalizadosweb/src/services
: Servicios APIweb/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 compatiblesget-balance
: Obtener el saldo de la cuenta de una direcciónread-contract
: Leer datos de un contrato inteligenteprepare-transaction
: prepara una transacción sin firmar para la aprobación del usuarioget-transaction-status
: obtener el estado actual de una transacción
Ejemplo de uso de la herramienta
Solución de problemas
Si encuentra problemas con las dependencias:
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.
This server cannot be installed
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.
- Descripción general
- Características
- Principios de seguridad
- Flujo de transacciones
- Empezando
- Desarrollo
- Uso del servidor MCP
- Solución de problemas
- Licencia
Related Resources
Related MCP Servers
- AsecurityAlicenseAqualityProvides 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 -310MIT License
- -securityAlicense-qualityA 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 -3GPL 3.0
- -securityFlicense-qualityA 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
- AsecurityAlicenseAqualityIntegrates Aptos blockchain access into AI applications, enabling interaction with tools for native APT operations, custom coin management, and transaction handling.Last updated -12MIT License