Skip to main content
Glama
edkdev

MetaTrader5 MCP Server

by edkdev

Servidor MCP de MetaTrader5

Un servidor del Protocolo de Contexto de Modelo (MCP) que proporciona interfaces de trading para la plataforma MetaTrader5 (MT5).

Características

  • Gestión de Cuenta: Obtener información de la cuenta, saldo, equity, margen

  • Gestión de Posiciones: Ver, modificar y cerrar posiciones abiertas

  • Operaciones con Órdenes: Colocar órdenes de mercado/pendientes, cancelar órdenes

  • Datos de Mercado: Obtener información del símbolo, precios actuales (tics)

  • Velas/Tasas: Obtener OHLCV mediante start_pos/count o rango de fechas

  • Indicadores: Calcular SMA, EMA, RSI, MACD, Bandas de Bollinger, ATR, Estocástico

  • Indicadores Agrupados: Calcular múltiples indicadores en una sola llamada

  • Herramientas de Señal: Indicadores de régimen de cruce de EMA y puntuación de confluencia para entradas

Related MCP server: MetaTrader 5 MCP Server

Instalación

Instala las dependencias con uv:

uv sync

Configuración

Las variables de entorno ahora se configuran directamente en los ajustes de tu cliente MCP (no se necesita archivo .env).

Claude Desktop / Kiro

Añade a tu archivo de configuración mcp.json:

{
  "mcpServers": {
    "mt5-trading": {
      "command": "uvx",
      "args": ["mt5-mcp"],
      "env": {
        "MT5_LOGIN": "your_account_number",
        "MT5_PASSWORD": "your_password",
        "MT5_SERVER": "your_broker_server",
        "MT5_PATH": "C:\\Program Files\\MetaTrader 5\\terminal64.exe",
        "MT5_TIMEOUT": "60000",
        "DEFAULT_DEVIATION": "20",
        "DEFAULT_MAGIC": "234000"
      }
    }
  }
}

Variables de Entorno Requeridas:

  • MT5_LOGIN - Tu número de cuenta de MT5

  • MT5_PASSWORD - La contraseña de tu cuenta de MT5

  • MT5_SERVER - El nombre del servidor de tu bróker

  • MT5_PATH - Ruta al ejecutable del terminal MT5

Variables de Entorno Opcionales:

  • MT5_TIMEOUT - Tiempo de espera de conexión en milisegundos (por defecto: 60000)

  • DEFAULT_DEVIATION - Desviación de precio por defecto en puntos (por defecto: 20)

  • DEFAULT_MAGIC - Número mágico por defecto para órdenes (por defecto: 234000)

Alternativa: Desarrollo Local

Para desarrollo local, también puedes ejecutar directamente:

# Set environment variables and run
MT5_LOGIN=your_account MT5_PASSWORD=your_pass MT5_SERVER=your_server MT5_PATH="C:\Program Files\MetaTrader 5\terminal64.exe" uv run python mt5_mcp/server.py

O usar el método heredado con el directorio uv:

{
  "mcpServers": {
    "mt5-trading": {
      "command": "uv",
      "args": [
        "--directory",
        "D:\\path\\mt5-mcp",
        "run",
        "python",
        "mt5_mcp/server.py"
      ],
      "env": {
        "MT5_LOGIN": "your_account_number",
        "MT5_PASSWORD": "your_password",
        "MT5_SERVER": "your_broker_server",
        "MT5_PATH": "C:\\Program Files\\MetaTrader 5\\terminal64.exe"
      }
    }
  }
}

Herramientas Disponibles

Información de la Cuenta

  • mt5_get_account_info - Obtener saldo de la cuenta, equity, margen, etc.

  • mt5_get_positions - Obtener posiciones abiertas (todas o filtradas por símbolo)

  • mt5_get_orders - Obtener órdenes pendientes

Operaciones con Órdenes

  • mt5_place_order - Colocar órdenes de mercado o pendientes

    • Soporta: buy, sell, buy_limit, sell_limit, buy_stop, sell_stop

    • SL/TP opcionales

  • mt5_close_position - Cerrar una posición abierta por ticket

  • mt5_cancel_order - Cancelar una orden pendiente

  • mt5_modify_position - Modificar SL/TP de una posición abierta

Datos de Mercado

  • mt5_get_symbol_info - Obtener especificaciones del contrato

  • mt5_get_tick - Obtener precios actuales de bid/ask

Tasas / Velas

  • mt5_get_rates_from_pos - Obtener OHLCV comenzando desde una posición (0=barra actual) con start_pos y count

  • mt5_get_rates_range - Obtener OHLCV dentro de un rango de fechas ISO date_fromdate_to

Indicadores

Todas las herramientas de indicadores soportan datos directos (cierres/velas) o auto-obtención mediante symbol + timeframe más date_from/date_to o start_pos/count. Establece return_last_only=true para devolver solo los valores más recientes.

  • mt5_calc_sma - Media Móvil Simple

    • Parámetros: period (por defecto 20)

  • mt5_calc_ema - Media Móvil Exponencial

    • Parámetros: period (por defecto 20)

  • mt5_calc_rsi - Índice de Fuerza Relativa

    • Parámetros: period (por defecto 14)

  • mt5_calc_macd - Línea MACD, señal, histograma

    • Parámetros: fast (12), slow (26), signal (9)

  • mt5_calc_bbands - Bandas de Bollinger (superior/media/inferior)

    • Parámetros: period (20), stddev (2.0)

  • mt5_calc_atr - Rango Verdadero Promedio (requiere velas)

    • Parámetros: period (14)

  • mt5_calc_stochastic - Oscilador Estocástico %K/%D (requiere velas)

    • Parámetros: k_period (14), d_period (3), smooth_k (1)

Indicadores Agrupados

  • mt5_calc_bundle - Calcular múltiples indicadores en una sola llamada usando las mismas velas obtenidas

    • Argumentos:

      • indicators: array de nombres de ["sma","ema","rsi","macd","bbands","atr","stochastic"]

      • Objeto params opcional para sobrescribir por indicador (ej., { "sma": {"period": 50}, "bbands": {"stddev": 2.5} })

      • Soporta symbol/timeframe con rango/count o candles/closes directos

      • return_last_only: si es true, devuelve solo los valores más recientes

Herramientas de Señal

  • mt5_signal_crossover - Indicadores de régimen y cruce de EMA

    • Parámetros: fast (por defecto 50), slow (200), lookback_bars (200)

    • Devuelve: state (above/below/equal), crossed_up, crossed_down, age_bars, slope_fast, slope_slow, spread, spread_pct, price_above_both, price_below_both, price

  • mt5_signal_confluence - Puntuación de confluencia para entradas

    • Parámetros del indicador: ema_fast (50), ema_slow (200), ema_near (20), rsi_period (14), macd_fast (12), macd_slow (26), macd_signal (9), bb_period (20), bb_stddev (2.0), atr_period (14)

    • Umbrales: near_k_atr (0.5), atr_expansion_ratio (1.0), score_threshold (3)

    • Control: direction (auto|long|short), weights opcional para trend/momentum/volatility/location/trigger

    • Devuelve indicadores componentes y puntuaciones para largo/corto más una dirección sugerida

Ejemplo de Uso

# In Claude Desktop, you can now ask:

"What's my MT5 account balance?"
"Show me my open positions on EURUSD"
"Place a buy order for 0.1 lot EURUSD at market"
"Close position with ticket 12345"
"Get current price for XAUUSD"

# Indicators (auto-fetch candles)
"Compute RSI(14) on EURUSD H1 using the last 300 bars (latest value only)"
"Compute MACD and Bollinger Bands on EURUSD H4 for September"

# Bundle
"Compute RSI+MACD+BBands (latest values) on EURUSD H1 using last 300 bars"

# Signals
"Give me EMA(50/200) crossover regime info on EURUSD H1"
"Compute confluence score on EURUSD H1 (defaults) and tell me if entry is ready"

Requisitos

  • Sistema Operativo Windows (MT5 solo funciona en Windows)

  • Terminal MetaTrader5 instalada y en ejecución

  • Python >=3.11

  • Cuenta de trading MT5 activa

Arquitectura

mt5-mcp/
├── mt5_mcp/
│   ├── __init__.py          # Package init
│   ├── server.py            # MCP server with tool definitions
│   ├── mt5_service.py       # MT5 SDK wrapper
│   └── indicators.py        # Pure-Python technical indicators
├── pyproject.toml           # Project dependencies (uv)
├── .env.example             # Environment template
└── README.md

Desarrollo

Ejecuta en modo de desarrollo:

uv run python mt5_mcp/server.py

Licencia

MIT

Notas

  • El software se proporciona tal cual, el escritor del software no será responsable de ninguna pérdida derivada del trading. El trading de forex es altamente volátil y arriesgado, proceda con extrema precaución.

  • El terminal MT5 debe estar en ejecución al usar este MCP

  • Asegúrate de que tu cuenta tenga habilitados los permisos de trading

  • Prueba primero en una cuenta demo antes de usar con dinero real

F
license - not found
Not graded
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables access to MetaTrader5 market data and trading functionality, including real-time quotes, historical OHLCV data, tick data, symbol information, and technical indicators for forex and other trading instruments.
    21
    MIT
  • F
    license
    Not graded
    quality
    A
    maintenance
    Enables AI assistants to connect to MetaTrader 5 for trading, market data access, and account management through the Model Context Protocol.
    209
  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables AI applications to interact with MetaTrader 5 terminals via WebSocket MCP protocol for trading operations and account management.
    4
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables interaction with MetaTrader 5 for market data, technical analysis, Fibonacci calculations, and trading via MCP clients such as Claude.
    MIT

View all related MCP servers

Related MCP Connectors

  • Connect any MCP client to MetaTrader 4/5 to read prices, manage positions, and place trades.

  • Hosted MCP for stocks, options, Greeks, brokers, order previews, alerts, and workflows.

  • MCP server for OpenMM — exposes market data, account, trading, and strategy tools to AI agents

View all MCP Connectors

Latest Blog Posts

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/edkdev/mt5-forex-mcp'

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