Bybit API

Una interfaz para interactuar con la API del exchange de criptomonedas Bybit.

Documentación

Interfaz MCP de Bybit API

smithery badge Buy Me A Coffee

Servidor MCP (Model Context Protocol) de Bybit. Proporciona una interfaz conveniente para interactuar con la API Bybit V5 mediante herramientas MCP. Permite obtener datos de mercado, gestionar información de cuenta y realizar/ cancelar órdenes a través de llamadas API envueltas como herramientas.

Bybit Server MCP server

⚠️ Seguridad y Protección

Este servidor puede realizar operaciones reales con dinero real. Léelo antes de configurarlo:

  • El trading está deshabilitado por defecto. Las herramientas de mutación (place_order, cancel_order, amend_order, cancel_all_orders, set_trading_stop, set_margin_mode, set_leverage) devuelven un error a menos que establezcas explícitamente TRADING_ENABLED=true.
  • Usa primero la testnet. Establece TESTNET=true mientras experimentas. Combínalo con TRADING_ENABLED=false para una configuración completamente de solo lectura, o establece READONLY_MODE=true para bloquear de forma estricta cada herramienta de mutación independientemente de otras configuraciones.
  • El tamaño de la orden está limitado. MAX_ORDER_SIZE_USDT (por defecto 100) limita el valor nocional estimado de una orden para proteger contra operaciones grandes accidentales.
  • Las claves API nunca se registran ni se exponen. Ninguna herramienta devuelve tus claves; los registros solo informan si una clave está presente.
  • Nunca confirmes tus claves API. Proporciónalas únicamente a través de variables de entorno.

Instalación

Requiere Python 3.12+. Este proyecto usa uv.

git clone https://github.com/dlwjdtn535/mcp-bybit-server.git
cd mcp-bybit-server
uv sync
uv run mcp-bybit-server   # runs the MCP server over stdio

Después de la instalación, el comando mcp-bybit-server es el punto de entrada utilizado por las configuraciones del cliente MCP a continuación.

Instalación mediante Smithery

Para instalar este servidor de Interfaz de Bybit API para Claude Desktop automáticamente mediante Smithery:

npx -y @smithery/cli install @dlwjdtn535/mcp-bybit-server --client claude

Configuración (Claude Desktop, Cline, Roo Code, etc.)

Agrega uno de los siguientes a tu archivo de configuración de MCP (por ejemplo, claude_desktop_config.json / mcp_settings.json).

Usando uv (ejecutado desde un repositorio clonado):

{
  "mcpServers": {
    "bybit": {
      "command": "uv",
      "args": [
        "run",
        "--directory",
        "/absolute/path/to/mcp-bybit-server",
        "mcp-bybit-server"
      ],
      "env": {
        "ACCESS_KEY": "YOUR_BYBIT_API_KEY",
        "SECRET_KEY": "YOUR_BYBIT_SECRET_KEY",
        "TESTNET": "true",
        "TRADING_ENABLED": "false"
      }
    }
  }
}

En Windows, usa una ruta absoluta con dobles barras invertidas (por ejemplo, C:\\Users\\YOUR_USERNAME\\mcp-bybit-server).

Usando Docker:

Primero extrae la imagen: docker pull dlwjdtn535/mcp-bybit-server:latest

{
  "mcpServers": {
    "bybit-server-docker": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "--init",
        "-e", "ACCESS_KEY=YOUR_BYBIT_API_KEY",
        "-e", "SECRET_KEY=YOUR_BYBIT_SECRET_KEY",
        "-e", "TESTNET=true",
        "-e", "TRADING_ENABLED=false",
        "-e", "MAX_ORDER_SIZE_USDT=100",
        "dlwjdtn535/mcp-bybit-server:latest"
      ]
    }
  }
}

Nota: Usa siempre @latest o una etiqueta de versión específica tanto para NPX como para Docker para asegurarte de que estás usando la versión prevista.

Variables de Entorno

VariableRequeridaPredeterminadoDescripción
ACCESS_KEYSí–Clave API de Bybit.
SECRET_KEYSí–Secreto API de Bybit.
MEMBER_IDNo–ID de miembro de Bybit (opcional).
TESTNETNofalseUsa la testnet de Bybit cuando true.
TRADING_ENABLEDNofalseDebe ser true para permitir cualquier herramienta de mutación/trading.
READONLY_MODENofalseCuando true, bloquea cada herramienta de mutación (tiene prioridad sobre TRADING_ENABLED).
MAX_ORDER_SIZE_USDTNo100Limita el valor nocional estimado (USDT) de una sola orden.
RESPONSE_VERBOSITYNonormalminimal recorta las respuestas de get_tickers/get_positions a campos principales para ahorrar tokens; normal/full devuelven la carga útil completa.

Herramientas 🛠️

Datos de mercado

  • get_orderbook — libro de órdenes (category, symbol, limit?).
  • get_kline — velas (category, symbol, interval, start?, end?, limit?).
  • get_tickers — información de ticker (category, symbol).
  • get_public_trade_history — operaciones públicas recientes (category, symbol, limit?).
  • get_instruments_info — metadatos / límites del instrumento (category, symbol, status?, baseCoin?).
  • get_funding_rate_history — historial de tasas de financiación para perpetuos (category, symbol, startTime?, endTime?, limit?).
  • get_open_interest — interés abierto a lo largo del tiempo (category, symbol, intervalTime?, ...).
  • get_fee_rate — tasas de comisión maker/taker (category, symbol?, baseCoin?).
  • get_server_time — hora del servidor de Bybit.
  • market_snapshot — vista de mercado compuesta (libro de órdenes + ticker + kline + instrumento + operaciones recientes, además de tasa de financiación e interés abierto para futuros) en una sola llamada.

Cuenta

  • get_wallet_balance — saldos (accountType, coin?).
  • get_positions — posiciones abiertas (category, symbol?).
  • get_order_history — órdenes históricas.
  • get_open_orders — órdenes abiertas actuales.
  • get_api_key_information — detalles de la clave API.

Trading (mutación — requiere TRADING_ENABLED=true)

  • validate_order — validación previa al vuelo; nunca realiza una orden. No está bloqueada por los indicadores de trading.
  • place_order — realiza una orden; admite dry_run=true para validar sin realizar.
  • amend_order — modifica una orden existente en su lugar.
  • cancel_order — cancela una sola orden.
  • cancel_all_orders — cancela todas las órdenes abiertas (opcionalmente con alcance).
  • set_trading_stop — establece take profit / stop loss / trailing stop.
  • set_margin_mode — establece margen aislado/cruzado.
  • set_leverage — establece el apalancamiento para un símbolo de futuros.

(Consulta las cadenas de documentación de las funciones en el código para descripciones detalladas de parámetros y ejemplos.)

Configuración de la Clave API

Para usar esta interfaz de Bybit API, crea una clave API desde Bybit:

  1. Inicia sesión en tu cuenta de Bybit.
  2. Navega a Gestión de API.
  3. Crea una nueva clave API.
  4. Configuraciones de seguridad importantes:
    • Habilita la restricción de IP si es posible, y agrega SOLO la(s) dirección(es) IP desde las que se ejecuta el servidor.
    • Nunca compartas tus claves API ni las expongas en repositorios públicos.
    • Permisos recomendados:
      • Lectura (requerido)
      • Trading (requerido solo si habilitas la ejecución de órdenes)
      • Billetera (requerido para verificar saldos)

Desarrollo

uv sync --group dev   # install dev dependencies (pytest, ruff)
uv run ruff check .   # lint
uv run pytest -q      # run the unit test suite (no live API calls)

CI (GitHub Actions) ejecuta lint + pruebas en cada push/PR; las imágenes de Docker se construyen y publican automáticamente en los pushes a main.

Patrocinio y Donaciones

Si encuentras útil este proyecto y deseas apoyar su desarrollo:

Cómprame un Café

"Buy Me A Coffee"

Programa de Referidos

También puedes apoyar este proyecto registrándote en Bybit usando nuestro enlace de referido:

Tu apoyo ayuda a mantener y mejorar este proyecto. ¡Gracias! 🙏

Contacto y Soporte

Para consultas adicionales o soporte, contacta:

¡Damos la bienvenida a tus preguntas y comentarios!

Licencia

Licencia MIT