CCXT MCP Server
Integra con exchanges de criptomonedas usando la librería CCXT.
Documentación
Servidor MCP de CCXT
Integración de intercambios de criptomonedas de alto rendimiento utilizando MCP (Model Context Protocol) y CCXT.
Características
- 🚀 Soporte de intercambios: Se conecta a más de 20 intercambios de criptomonedas
- 🔃 Tipos de mercado: Admite mercados spot, de futuros, swaps y más
- 🔧 Configuración de proxy: Opciones para acceder a intercambios a través de proxies
- 📊 Rápido y confiable: Caché optimizada y limitación de velocidad
- 🌐 Estándar MCP: Compatible con LLMs como Claude y GPT mediante MCP
Arquitectura de Integración del Servidor MCP de CCXT
El Servidor MCP de CCXT conecta modelos de lenguaje a intercambios de criptomonedas a través del Model Context Protocol. Actúa como un puente que permite a los LLMs acceder a datos de mercado en tiempo real y ejecutar operaciones de trading en múltiples intercambios mediante una API unificada.
La arquitectura incluye:
- Clientes LLM (Claude y otros modelos compatibles con MCP) que envían solicitudes
- El Model Context Protocol (MCP) que estandariza la comunicación
- El Servidor MCP de CCXT que procesa solicitudes y gestiona interacciones con intercambios
- La Biblioteca CCXT que proporciona acceso unificado a las APIs de intercambios
- Conexiones a múltiples intercambios de criptomonedas
Arquitectura de Código del Servidor MCP de CCXT
El servidor está organizado en tres módulos principales para una mejor mantenibilidad y extensibilidad:
- Exchange: Gestiona instancias de intercambio, credenciales y validación de símbolos
- Utils: Proporciona funcionalidad de caché, limitación de velocidad y registro
- Tools: Implementa herramientas y recursos MCP para la interacción con intercambios
Inicio Rápido
Instalación mediante Smithery
Para instalar mcp-server-ccxt para Claude Desktop automáticamente a través de Smithery:
npx -y @smithery/cli install @doggybee/mcp-server-ccxt --client claude
Paquete NPM (Recomendado)
Puedes instalar el Servidor MCP de CCXT desde npm:
# Install globally
npm install -g @mcpfun/mcp-server-ccxt
# Start the server
mcp-server-ccxt
O ejecutarlo directamente:
npx @mcpfun/mcp-server-ccxt
Instalación Manual
Alternativamente, puedes clonar y compilar el repositorio:
# Clone the repository
git clone https://github.com/doggybee/mcp-server-ccxt.git
cd mcp-server-ccxt
# Install dependencies
npm install
# Build the server
npm run build
# Start the server
npm start
Configuración
-
Crea un archivo de entorno
cp .env.example .env -
Edita el archivo
.envpara agregar tus claves de API de intercambio# Default exchange (optional) DEFAULT_EXCHANGE=binance # Default market type (optional) DEFAULT_MARKET_TYPE=spot # API credentials (optional) BINANCE_API_KEY=your_api_key BINANCE_SECRET=your_api_secret # For exchanges requiring passphrase (e.g., KuCoin) KUCOIN_API_KEY=your_kucoin_api_key KUCOIN_SECRET=your_kucoin_secret KUCOIN_PASSPHRASE=your_kucoin_passphrase # Proxy configuration (optional) USE_PROXY=false PROXY_URL=http://username:password@your-proxy-server:port # Legacy format (still supported but recommended to use the integrated URL format above) # PROXY_USERNAME= # PROXY_PASSWORD=
Uso
Nota: Si encuentras problemas con la comunicación MCP, consulta la Guía de Solución de Problemas para obtener soluciones.
Ejecutando el Servidor
Inicia el servidor:
# If installed globally via npm
mcp-server-ccxt
# If installed manually
npm start
Uso con Claude for Desktop
- Agrega el servidor a tu
claude_desktop_config.json:
Si se instaló mediante npm (globalmente):
{
"mcpServers": {
"ccxt": {
"command": "mcp-server-ccxt"
}
}
}
Si se instaló manualmente:
{
"mcpServers": {
"ccxt": {
"command": "node",
"args": [
"/path/to/mcp-server-ccxt/build/index.js"
]
}
}
}
- Reinicia Claude for Desktop
Uso como Módulo en Otro Proyecto
También puedes usar este paquete como módulo en tus propios proyectos Node.js:
// Import the CCXT MCP Server
import '@mcpfun/mcp-server-ccxt';
// The server starts automatically when imported
// You can configure it through environment variables
Consultas de Ejemplo
Aquí hay algunas consultas de ejemplo que puedes usar con el servidor MCP:
- "¿Cuál es el precio actual de Bitcoin en Binance?"
- "Muéstrame el libro de órdenes para ETH/USDT en Coinbase"
- "Obtén los datos OHLCV de 1 hora para BTC/USDT en Binance de las últimas 24 velas"
- "Compara el precio de SOL/USDT en diferentes intercambios"
- "¿Cuál es mi saldo actual en Binance?" (requiere claves de API)
- "Coloca una orden de compra de mercado por 0.1 ETH en Kraken" (requiere claves de API)
Herramientas Disponibles
Herramientas de API Pública
list-exchanges: Lista todos los intercambios de criptomonedas disponiblesget-ticker: Obtiene información de ticker actual para un par de tradingbatch-get-tickers: Obtiene información de ticker para múltiples pares de trading a la vezget-orderbook/get-order-book: Obtiene el libro de órdenes de mercado para un par de tradingget-ohlcv: Obtiene datos de velas OHLCV para un par de tradingget-trades: Obtiene operaciones recientes para un par de tradingget-markets: Obtiene todos los mercados disponibles para un intercambioget-exchange-info: Obtiene información y estado del intercambioget-leverage-tiers: Obtiene niveles de apalancamiento de futurosget-funding-rates: Obtiene tasas de financiación actualesget-positions: Obtiene información de posiciones abiertasget-open-orders: Obtiene todas las órdenes abiertasget-order-history: Obtiene el historial de órdenes
Herramientas de API Privada (requiere claves de API)
account-balance: Obtiene el saldo de tu cuenta desde un intercambio de criptomonedasplace-market-order: Coloca una orden de mercado en un intercambioplace-limit-order: Coloca una orden limitada en un intercambiocancel-order: Cancela una orden existentecancel-all-orders: Cancela todas las órdenes abiertasset-leverage: Establece el apalancamiento para futurosset-margin-mode: Establece el modo de margen para futurosplace-futures-market-order: Coloca órdenes de mercado de futurosplace-futures-limit-order: Coloca órdenes limitadas de futurostransfer-funds: Transfiere fondos entre cuentas (por ejemplo, spot a futuros)
Herramientas de Configuración y Utilidades
cache-stats: Obtiene estadísticas de caché de CCXTclear-cache: Limpia la caché de CCXTset-log-level: Establece el nivel de registroget-proxy-config: Obtiene la configuración de proxyset-proxy-config: Configura los ajustes de proxyset-market-type: Establece el tipo de mercado predeterminadoset-default-exchange: Cambia el intercambio predeterminadosystem-info: Obtiene información del sistema y del entorno
Optimizaciones de Rendimiento
MCP-CCXT incluye varias optimizaciones para garantizar un alto rendimiento:
-
Sistema de Caché LRU:
- Diferentes TTLs para diferentes tipos de datos
- Datos de ticker: 10 segundos
- Datos de libro de órdenes: 5 segundos
- Datos de mercado: 1 hora
-
Limitación de Velocidad Adaptativa:
- Ajusta automáticamente las tasas de solicitud según las respuestas del intercambio
- Implementa retroceso exponencial para errores
- Gestiona solicitudes concurrentes por intercambio
-
Gestión de Conexiones de Intercambio:
- Inicialización eficiente de instancias de intercambio
- Manejo adecuado de errores y reintentos
Mejores Prácticas de Seguridad
Seguridad de Claves de API
-
Crea Claves de API Dedicadas:
- Crea claves de API separadas para diferentes aplicaciones/propósitos
- Nunca reutilices claves de API entre diferentes servicios o aplicaciones
-
Limita los Permisos de las Claves de API:
- Habilita solo los permisos que necesitas (por ejemplo, solo lectura para datos de mercado)
- Desactiva los permisos de retiro si solo necesitas funcionalidad de trading
- Usa listas blancas de IP cuando estén disponibles para restringir el acceso a IPs conocidas
-
Almacenamiento Seguro:
- Nunca subas claves de API a sistemas de control de versiones
- Almacena las claves de API en variables de entorno o en un almacén seguro
- Usa archivos
.envque estén excluidos de git mediante.gitignore
Descargo de Responsabilidad de Riesgo
Este software se proporciona únicamente con fines informativos. Usar este software para interactuar con intercambios de criptomonedas implica riesgos significativos:
- Riesgo Financiero: El trading de criptomonedas implica riesgo de pérdida
- Seguridad de API: Asegúrate de que tus claves de API tengan límites de permisos apropiados
- Sin Asesoramiento de Inversión: Esta herramienta no proporciona asesoramiento de inversión
- Sin Garantía: El software se proporciona "tal cual" sin garantía de ningún tipo
Licencia
Este proyecto está licenciado bajo la Licencia MIT - consulta el archivo LICENSE.txt para más detalles.
Derechos de Autor y Atribución
Este proyecto utiliza la biblioteca CCXT (https://github.com/ccxt/ccxt), que es:
Copyright (c) 2016-2024 CCXT developers
CCXT se publica bajo la Licencia MIT, que se incluye a continuación:
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
Para problemas, solicitudes de funciones o contribuciones, visita el repositorio de GitHub.