MetaTrader MCP Server

MetaTrader MCP Server

Enables LLMs to trade on MetaTrader 5 via REST API or MCP tools, supporting market/pending orders, position management, and account info retrieval.

Category
访问服务器

README

MetaTrader MCP Server

Servidor MCP/HTTP para operar MetaTrader 5 desde LLMs (Claude, Open WebUI, etc.).

Requisitos

  • Windows 10/11
  • MetaTrader 5 instalado
  • Python 3.12

Instalación

python -m venv venv_mt5
.\venv_mt5\Scripts\activate
pip install metatrader-mcp-server

Configuración

Crea un fichero .env en la raíz del proyecto:

MT5_LOGIN=tu_login
MT5_PASSWORD=tu_password
MT5_SERVER=tu_servidor

.env está en .gitignore — nunca se sube al repositorio.

Arranque manual

.\start_mcp_server.bat

O directamente:

.\venv_mt5\Scripts\python.exe -m metatrader_openapi.main `
  --login tu_login --password tu_password --server tu_servidor `
  --host 0.0.0.0 --port 8000

Arranque automático como servicio

El servidor está registrado como tarea de Windows y arranca automáticamente al iniciar el sistema.

Para gestionar el servicio manualmente usa mcp_service.ps1:

.\mcp_service.ps1 status     # comprobar estado
.\mcp_service.ps1 start      # arrancar
.\mcp_service.ps1 stop       # parar
.\mcp_service.ps1 restart    # reiniciar (si se queda colgado)

El comando status comprueba tres cosas:

  • Estado de la tarea en el Programador de Windows
  • Si el proceso Python está corriendo
  • Si el endpoint HTTP responde

Logs

Los logs se guardan en metatrader_mcp.log en la raíz del proyecto.

2026-06-29 12:52:12  INFO  === MetaTrader MCP Server started (login=tu_login server=tu_servidor) ===
2026-06-29 12:52:33  INFO  GET /api/v1/account/info 200 7ms client=100.81.112.95
2026-06-29 12:53:01  INFO  POST /api/v1/order/market 200 312ms client=100.81.112.95

Cada línea incluye: fecha/hora, nivel, método HTTP, ruta, código de respuesta, tiempo en ms e IP del cliente.

Endpoints HTTP

El servidor expone una API REST en http://localhost:8000. Documentación interactiva en http://localhost:8000/docs.

Cuenta

Método Ruta Descripción
GET /api/v1/account/info Balance, equity, margen, divisa, leverage

Mercado

Método Ruta Descripción
GET /api/v1/market/symbols Lista de símbolos disponibles
GET /api/v1/market/price/{symbol} Precio actual de un símbolo
GET /api/v1/market/candles/{symbol}/{timeframe} Últimas N velas

Posiciones abiertas

Método Ruta Descripción
GET /api/v1/positions Todas las posiciones abiertas
GET /api/v1/positions/symbol/{symbol} Posiciones por símbolo
GET /api/v1/positions/{id} Posición por ID
DELETE /api/v1/positions/{id} Cerrar posición por ID
DELETE /api/v1/positions Cerrar todas las posiciones
DELETE /api/v1/positions/profitable Cerrar todas las posiciones con beneficio
DELETE /api/v1/positions/losing Cerrar todas las posiciones con pérdida

Órdenes

Método Ruta Descripción
POST /api/v1/order/market Abrir orden de mercado
POST /api/v1/order/pending Colocar orden pendiente
GET /api/v1/order/pending Listar órdenes pendientes
GET /api/v1/order/pending/{id} Orden pendiente por ID
PUT /api/v1/order/pending/{id} Modificar orden pendiente
DELETE /api/v1/order/pending/{id} Cancelar orden pendiente
DELETE /api/v1/order/pending Cancelar todas las órdenes pendientes

Ejemplo — orden de mercado con SL y TP

curl -X POST http://localhost:8000/api/v1/order/market \
  -H "Content-Type: application/json" \
  -d '{"symbol":"EURUSD","volume":0.01,"type":"BUY","stop_loss":1.13500,"take_profit":1.15000}'

Ejemplo — cerrar posición

curl -X DELETE http://localhost:8000/api/v1/positions/9328864980

Historial

Método Ruta Descripción
GET /api/v1/history/deals Historial de deals (acepta from_date, to_date, symbol)
GET /api/v1/history/orders Historial de órdenes

Herramientas MCP

El servidor expone las mismas operaciones como herramientas MCP para uso directo desde Claude u otros LLMs compatibles con MCP.

Herramienta Descripción
get_account_info Info de cuenta
get_symbol_price Precio de un símbolo
get_symbols Lista de símbolos (con filtro opcional)
get_candles_latest Últimas N velas
get_candles_by_date Velas por rango de fechas
get_deals Historial de deals como CSV
get_orders Historial de órdenes como CSV
get_all_positions Posiciones abiertas
place_market_order Orden de mercado (con SL/TP opcionales)
place_pending_order Orden pendiente
modify_position Modificar SL/TP de posición abierta
modify_pending_order Modificar orden pendiente
close_position Cerrar posición por ID
close_all_positions Cerrar todas las posiciones
close_all_profitable_positions Cerrar posiciones con beneficio
close_all_losing_positions Cerrar posiciones con pérdida
cancel_pending_order Cancelar orden pendiente por ID
cancel_all_pending_orders Cancelar todas las órdenes pendientes

Docker

docker-compose up -d

Las credenciales se leen del fichero .env automáticamente.

推荐服务器

Baidu Map

Baidu Map

百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
Kagi MCP Server

Kagi MCP Server

一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

官方
精选
Python
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选
Neon MCP Server

Neon MCP Server

用于与 Neon 管理 API 和数据库交互的 MCP 服务器

官方
精选
Exa MCP Server

Exa MCP Server

模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

官方
精选