mcp-metaeditor
MCP server that connects Claude Code (or any MCP client) to the MetaTrader 5 MetaEditor toolchain on Linux via Wine.
It lets you automate a full MQL5 workflow:
- browse MQL5 files,
- read/write code,
- compile EAs/indicators/scripts,
- run backtests and inspect results.
Quick install (Claude Code)
- Install dependencies:
npm install
- Build the server:
npm run build
- Register this MCP in Claude Code:
claude mcp add mcp-metaeditor node "$PWD/dist/index.js"
Run this command from the project root directory.
- Verify it is registered:
claude mcp list
- Start a new Claude Code session and use tools like
list_mql5_files.
Requirements
- Linux
- Wine installed and working
- MetaTrader 5 installed inside your Wine prefix
- Node.js 20+
- npm
Configuration
Supported environment variables:
MT5_WINEPREFIX(default:~/.mt5)MT5_PATH(default:~/.mt5/drive_c/Program Files/MetaTrader 5)
Example:
export MT5_WINEPREFIX="$HOME/.mt5"
export MT5_PATH="$HOME/.mt5/drive_c/Program Files/MetaTrader 5"
The server validates on startup that MT5_PATH, MetaEditor64.exe, and MQL5 exist.
Available MCP tools
Files
list_mql5_files(type, pattern?)read_mql5_file(path)write_mql5_file(path, content)
Compile
compile_mql5(path)get_compile_errors(path)
Backtest
run_backtest(expert, symbol, period, date_from, date_to, deposit?, leverage?)get_backtest_results(expert?)
Recommended workflow
write_mql5_fileto create/update your EA.compile_mql5to compile.get_compile_errorsto inspect errors/warnings.run_backtestto launch a test.get_backtest_resultsto inspect output.
npm scripts
npm run build— compile TypeScript intodist/npm start— rundist/index.jsnpm run dev— watch mode TypeScript compilation
License
MIT