Universal MCP Server for MetaTrader 5 Trading & Data Operations

--- ## Overview FullMt5McpByLeo is a complete, production-ready MCP server that enables Claude and other AI assistants to control MetaTrader 5 directly. Execute trades, retrieve market data, manage charts, analyze trading history, and automate MT5 operations through natural language. --- ## Main Features (MCP Functions) ### Trade Operations Execute and manage trading positions and orders: - **Open Positions:** Execute market trades (buy/sell) with immediate or pending orders - **Position Management:** Modify stops/profits, close positions (full or partial) - **Order Management:** Create, modify, and cancel pending limit/stop orders - **Trading History:** Query completed deals with profit/loss analysis ### Market Data & Symbols Access real-time and historical data: - **OHLC Data:** Retrieve candlestick data (open, high, low, close, volume, spread, etc..) - **Tick data:** Retrieve Tick data (last, ask, bid, flags, etc..) - **Symbol Information:** Get symbol properties (digits, spreads, swaps, volumes) - **Market Watch:** Manage symbol selection and availability ### Graphic Objects Create and modify chart visualizations: - **Draw Objects:** Create trend lines, rectangles, text labels, arrows - **Object Properties:** Modify colors, styles, prices, text - **Chart Annotations:** Add visual markers and indicators to charts ### Chart Management Control chart windows and redraw operations: - **Chart Operations:** Open, close, list active charts - **Chart Properties:** Read chart dimensions, colors, price ranges - **Visual Updates:** Force chart redraw for real-time updates ### Code & Terminal Compile and execute Expert Advisors: - **Compilation:** Compile MQL5 source to EX5 bytecode - **Backtesting:** Run historical tests with multiple tick modeling - **EA Execution:** Run Expert Advisors in real-time - **Logging:** Retrieve EA logs for debugging and monitoring - **Terminal and Account:** Obtaing terminal and acount info_* (integer, string, double) --- ## Repository Structure ``` FullMt5McpByLeo/ ├── Src/ # MQL5 Backend Functions │ .... ├── mt5_mcp_by_leo/ # Python MCP Server │ .... ``` --- ## Requirements - For repo code > - Check: [dependencies.json](./dependencies.json) - For user use: > - Check: [pyproject.toml](./pyproject.toml) por py dependencies and min py version. > - EX5 of releases (Runner an McPServer). > - McpServer requerid a EX5 Library, pucharse in: [TheBotPlace - McpServerByLeo](https://www.thebotplace.com/bot/mcpserverbyleo) --- ## Installation of repo code ```bash cd "C:\Users\YOUR USER\AppData\Roaming\MetaQuotes\Terminal\YOUR ID\MQL5\Shared Projects" tsndep install "https://forge.mql5.io/nique_372/FullMt5McpByLeo.git" ``` - For use tsndep command requerid tsndep pacakage (avaible in [pypi](https://pypi.org/project/tsndep)).. This command automatically downloads all dependencies and installs all requirements from the repositories. - If any part of the system is private, then it will fail... contact me so I can give you access (if it's a product, you can buy it; if you have any questions, don't hesitate to contact me). --- ## Quick Start (for final users) ### 1. Install Pacakage ```bash pip install mt5-mcp-by-leo ``` ### 2. Create a config json Open Common\\Files And create a file with this structure: ```json { "general_config": { "port": 9999, "host": "127.0.0.1", "mode": "fast_mcp" }, "fast_mcp": { "name": "FastMcpServer" }, "http": { "http_port": 8000, "name": "HTTP Server", "tools_namespace": "tools" } } ``` ### 3. Configure in Claude Desktop Add to your `claude_desktop_config.json`: ```json { "mcpServers": { "mt5_mcp_by_leo": { "command": "python", "args": ["-m", "mt5_mcp_by_leo", "--config", "PATH_TO_FILE", "--config_encodig", "utf-8" ] } } } ``` - PATH_TO_FILE: Path to json config file ### 4. Configure MetaTrader 5 In MT5: **Tools** → **Options** → **Allowed URLs for WebRequest** - Add `127.0.0.1` or host you configured. - Click **Accept** - Enable AutoTrading and DLL imports ### 5. Open claude desktop Open Claude Desktop. At that moment, a Python script is running in the background until it establishes a connection with the EA McpServer.ex5. ### 6 Compile & Attach EA ``` MetaEditor: Open Src/Mt5Mcp.mq5 → Compile (F5) Or Dowland Mt5Mcp.ex5 of releases (last version). MT5: Drag Mt5Mcp.ex5 onto your chart and cofigure it, The parameters of the EA, such as port/host, must match the JSON of Claude Desktop ``` ### 7. Use in Claude ``` Open a 0.01 lot BUY on EURUSD with SL at 1.0800 and TP at 1.0900 ``` Note: > You can also use HTTP Remote with the help of "mcp-remote" (see: https://forge.mql5.io/nique_372/McpServer/wiki/Running-HTTP) --- ## License **[Read Full License](./LICENSE)** By downloading or using this repository, you accept the license terms. --- ## Documentation - Wiki: [https://forge.mql5.io/nique_372/FullMt5McpByLeo/wiki](https://forge.mql5.io/nique_372/FullMt5McpByLeo/wiki) --- ## Contact - **Platform:** [MQL5 Community](https://www.mql5.com/es/users/nique_372) - **Profile:** https://www.mql5.com/es/users/nique_372/news ---

Copyright © 2026 Niquel Mendoza (nique_372).
TSN Trading Systems ecosystem.