Chronos
Interactúa con la blockchain de Stellar para gestionar carteras, listar tokens, consultar saldos y transferir fondos.
Documentación
Servidor MCP Chronos 🔵
Chronos es un servidor de Protocolo de Contexto de Modelo (MCP) diseñado para la blockchain de Stellar y creado específicamente para la integración con Claude Desktop y aplicaciones de IA similares. Chronos brinda a tu asistente de IA herramientas en cadena que permiten interacciones optimizadas con la red de Stellar.
Descripción general
Chronos MCP ofrece las siguientes capacidades:
- Conectar a billeteras de Stellar: Conecta de forma segura tu billetera usando una clave secreta.
- Listar tokens de la billetera: Recupera y lista todos los tokens que posee una billetera de Stellar.
- Consultar saldos: Obtén saldos en tiempo real de tu XLM y otros activos.
- Transferir fondos: Inicia transferencias entre billeteras de Stellar con facilidad.
Chronos está diseñado para ser extensible y funciona como un paquete estándar de Node.js, lo que permite implementarlo, instalarlo e integrarlo fácilmente, de manera similar a otros servidores MCP como base-mcp.
Características
- Integración con Stellar: Interactúa completamente con la red principal de Stellar mediante la API de Horizon.
- Implementación sencilla: Publica e instala Chronos usando npm.
- Compatibilidad con Claude Desktop: Se integra sin problemas con Claude Desktop al actualizar la configuración del servidor MCP.
- Arquitectura extensible: Diseñado para futuras mejoras e integraciones de nuevas herramientas.
Requisitos previos
- Node.js (v14 o superior)
- npm
- Credenciales de billetera de Stellar (clave secreta para la conexión)
- Conectividad a internet para interactuar con la red de Stellar
Instalación
Opción 1: Instalar desde npm (Recomendado)
Instala Chronos de forma global:
npm install -g chronos-mcp
O úsalo directamente con npx:
npx chronos-mcp@latest
Opción 2: Instalar desde el código fuente
-
Clona el repositorio:
git clone https://github.com/yourusername/chronos-mcp.git cd chronos-mcp -
Instala las dependencias:
npm install -
Compila el proyecto:
npm run build -
(Opcional) Vincula globalmente para un acceso más fácil:
npm link
Opción 3: Usar Docker
También puedes ejecutar Chronos MCP usando Docker:
-
Crea la imagen de Docker:
docker build -t chronos-mcp . -
Ejecuta el contenedor:
docker run -it --rm chronos-mcp
Para obtener instrucciones más detalladas sobre el uso de Docker con Chronos MCP, incluida la configuración de Docker Compose y la integración con Claude Desktop, consulta la Guía de uso de Docker.
Para obtener información sobre cómo probar tu configuración de Docker localmente, consulta la Guía de uso de Docker. Esto incluye información sobre cómo crear la imagen de Docker, ejecutar el contenedor y usar Docker con Chronos MCP.
Configuración
Variables de entorno
Chronos MCP utiliza variables de entorno para la configuración, en particular para información sensible como tu clave secreta de Stellar. El proyecto usa dotenv para cargar variables de entorno desde un archivo .env durante el desarrollo.
Para configurar las variables de entorno:
-
Crea un archivo
.enven la raíz del proyecto:STELLAR_SECRET_KEY=your_stellar_secret_key STELLAR_NETWORK=mainnet -
Estas variables se cargarán automáticamente cuando se inicie la aplicación.
Al usar Docker, puedes proporcionar variables de entorno de varias maneras:
- Usando la bandera
--env-file:docker run -it --rm --env-file .env chronos-mcp - Usando la directiva
env_fileen docker-compose.yml - Configurando variables individuales con la bandera
-e:docker run -it --rm -e STELLAR_SECRET_KEY=your_key chronos-mcp
Configuración de Claude Desktop
Para usar Chronos con Claude Desktop, actualiza tu archivo de configuración de Claude Desktop ubicado en:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json - Linux:
~/.config/Claude/claude_desktop_config.json
Configuración de ejemplo para Claude Desktop:
{
"mcpServers": {
"stellar": {
"command": "npx",
"args": ["chronos-mcp@latest"],
"env": {
"STELLAR_NETWORK": "mainnet",
"STELLAR_SECRET_KEY": "your_stellar_secret_key"
},
"disabled": false,
"autoApprove": []
}
}
}
Para la integración con Docker y Claude Desktop, puedes usar:
{
"mcpServers": {
"stellar": {
"command": "docker",
"args": ["run", "-i", "--rm", "--env-file", "/path/to/your/.env", "chronos-mcp"],
"env": {
"STELLAR_NETWORK": "mainnet"
},
"disabled": false,
"autoApprove": []
}
}
}
Uso
Chronos MCP expone las siguientes herramientas a través de su interfaz MCP:
connect_wallet
Conecta una billetera de Stellar usando la clave secreta.
Comando de ejemplo:
"Conecta mi billetera usando la clave secreta ______"
list_tokens
Lista todos los tokens y activos en la billetera de Stellar especificada.
Comando de ejemplo:
"Lista los tokens de mi billetera"
get_balances
Recupera el saldo de XLM y cualquier otro activo.
Comando de ejemplo:
"¿Cuál es mi saldo actual de XLM?"
transfer_funds
Transfiere fondos desde tu billetera a otra billetera de Stellar.
Parámetros:
secretKey: Tu clave secreta de billetera.destinationAddress: La dirección de la billetera del destinatario.amount: La cantidad a transferir.asset(opcional): Activo a transferir (por defecto es XLM).
Comando de ejemplo:
"Transfiere 0.5 XLM a [dirección de la billetera de destino]"
Pruebas
Pruebas estándar
Para probar Chronos MCP localmente:
npm test
Esto ejecutará el conjunto de pruebas del proyecto y verificará que tu servidor funcione como se espera.
Pruebas con Docker
Para probar la configuración de Docker localmente, consulta la Guía de uso de Docker para obtener instrucciones. La guía cubre:
- Crear la imagen de Docker
- Ejecutar el contenedor con Docker Compose
- Integración con Claude Desktop
- Otra información relacionada con Docker
También puedes usar el script test-client.js incluido para probar el contenedor de Docker:
node test-client.js
Este script envía una solicitud MCP simple al contenedor de Docker y muestra la respuesta.
Implementación
Chronos MCP está diseñado para funcionar como un paquete estándar de Node.js y puede publicarse en npm. Una vez publicado (por ejemplo, mediante npm publish), Chronos se puede instalar de forma global o usar mediante npx, igual que cualquier otro servidor MCP.
Para la implementación en producción, considera envolver Chronos en un servicio del sistema (usando systemd, launchd, etc.) para reinicios automáticos y monitoreo.
Extender Chronos
Chronos está diseñado pensando en la extensibilidad. Para agregar nuevas herramientas:
- Crea un nuevo directorio en la carpeta
src/tools. - Implementa tu herramienta (incluye un
index.ts,schemas.tsyhandlers.ts). - Exporta tu herramienta en
src/tools/index.ts. - Actualiza el README con la documentación y los ejemplos de tu herramienta.
- Escribe pruebas para asegurarte de que tu nueva herramienta funcione correctamente.
Licencia
Este proyecto está licenciado bajo la Licencia MIT.
Contribuciones
¡Las contribuciones son bienvenidas! Consulta CONTRIBUTING.md para conocer las pautas sobre cómo informar problemas, enviar solicitudes de extracción y otras instrucciones para contribuir.
────────────────────────────── Este README está adaptado específicamente para Chronos MCP y describe su implementación como paquete de Node.js, la integración con Claude Desktop y un conjunto completo de funciones para interactuar con la blockchain de Stellar.