Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Description from the maker (original English)
MT5 strategy development with 87 tools. Backtest, optimize, debug MQL5 EAs on macOS/Linux.
These three are never merged into one score: opinions, measurements and popularity are different things.
We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.
Pick the AI app you use, then copy the settings.
MT5_MCP_HOMEWhich app do you use?
Pick your app above. We remember it, so next time the button says “Install in …”.
Download the maker’s .mcpb file
The link goes to the maker’s own file; we do not host or repackage it. Open the file and Claude Desktop installs it.
Run this in your terminal
Fill in the empty values before running it.
Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
This one runs on your computer, and ChatGPT can only connect to servers on the internet. Pick another app.
Your choice stays on this device in a cookie; no account needed.
MT5_MCP_HOME envThese settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
Runs on your computer; the tool list appears in your AI app after you install it.
We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 6, 2026
The registry name was verified with the GitHub account masdevid, which owns the repo
We have not read this repo from GitHub yet
We have not read this repo from GitHub yet
This one runs on your computer; there is no internet endpoint
Runs on your computer and uses local settings instead
Runs on your computer; we can only read tool lists from internet endpoints
Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.
It passed 1 of 1 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.
The registry does not list a required key, though some servers ask you to sign in on first use.
It runs on your computer. Your AI app starts it when needed, and data does not pass through the maker’s servers (unless it calls an online service itself).
The GitHub repo last changed –, and the latest version (1.34.3) reached the registry 2 months ago.
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. You also need MCPB on your computer.
In the same category: Spec Driven Development, Remote Desktop Commander, AI Deprecations
Servers in the same category from other makers, sorted by stars.
Reading a card:★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
AI model shutdown dates, replacements, change feed and webhook alerts for 8 providers.
Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.
MCP server for MT5 strategy development on macOS/Linux. 89 tools to compile, backtest, analyze, optimize, debug crashes, and manage MQL5 Expert Advisors — no Windows required.
You: "Backtest MyEA Jan-Mar, what caused the February drawdown?"
Claude: [compile → clean → backtest → analyze 1,847 deals] → Feb 14: BUY grid at L6, locking lot 1.75× base → Cutloss fired 17 points later → Recommendation: cap locking multiplier to ≤1.2×
Focus: Backtest organization, reporting, and analytics — capabilities MT5 itself doesn't provide.
| MT5-Quant | Others | |
|---|---|---|
| Platform | macOS/Linux native | Windows only |
| Backtest pipeline | ✅ Full (compile → run → analyze) | ✅ Via MT5 Python package |
| Deal-level analytics | ✅ 19 dimensions, DB-backed | ❌ |
| Report organization | ✅ SQLite (reports + deals) + search + history | ❌ |
| MQL5 compilation | ✅ Headless (MetaEditor via Wine, no GUI) | ⚠️ Via GUI or terminal |
| Optimization | ✅ Background + results parsing + .set generation | ⚠️ Terminal only, no parsing |
| Crash debugging | ✅ Wine/MT5 diagnostics | ❌ |
Others typically run on Windows using the MetaTrader5 Python package, providing full terminal operations. MT5-Quant fills the gap: organizing backtest reports, extracting deal-level insights, and managing optimization workflows — none of which MT5 or its Python API expose natively.
cargo install mt5-quant --locked
# macOS Apple Silicon
curl -LO https://github.com/masdevid/mt5-quant/releases/latest/download/mcp-mt5-quant-macos-arm64.tar.gz tar xzf mcp-mt5-quant-macos-arm64.tar.gz # → mcp-mt5-quant-macos/mt5-quant
curl -LO https://github.com/masdevid/mt5-quant/releases/latest/download/mcp-mt5-quant-linux-x64.tar.gz tar xzf mcp-mt5-quant-linux-x64.tar.gz # → mcp-mt5-quant-linux/mt5-quant
Move the binary somewhere on your PATH (e.g. /usr/local/bin or ~/.local/bin) so clients can launch it as mt5-quant.
Claude Code
claude mcp add mt5-quant -- mt5-quant --stdio
Claude Desktop — ~/Library/Application Support/Claude/claude_desktop_config.json
{ "mcpServers": { "mt5-quant": { "command": "mt5-quant", "args": ["--stdio"] } } }
Cursor — .cursor/mcp.json (same JSON shape as Claude Desktop)
{ "mcpServers": { "mt5-quant": { "command": "mt5-quant", "args": ["--stdio"] } } }
opencode — .opencode/opencode.jsonc
{ "mcp": { "mt5-quant": { "type": "local", "command": ["mt5-quant", "--stdio"], "enabled": true } } }
Codex CLI — ~/.codex/config.toml
[mcp_servers.mt5-quant]
command = "mt5-quant" args = ["--stdio"]
Then finish setup (auto-detects Wine + MT5 paths):
bash scripts/setup.sh
Tip: you can also just ask your LLM coding agent to do all of the above:
*"Please install mt5-quant from https://github.com/masdevid/mt5-quant — download or build it, run its
scripts/setup.shto auto-detect Wine and MT5 paths, and register it as an MCP server."*
Run a backtest on MyEA from 2025.01.01 to 2025.03.31
The AI runs the full pipeline: compile → clean cache → backtest → extract → analyze.
| Tool | Description |
|---|---|
run_backtest | Full pipeline: compile → clean → backtest → extract → analyze |
run_backtest_quick | Quick backtest using pre-compiled EA (skip compile) |
run_backtest_only | Backtest only - just extract raw trades, no analysis |
launch_backtest | Fire-and-forget: launch MT5 backtest, poll for completion |
get_backtest_status | Poll running backtest status (MT5 running, report found, elapsed time) |
run_optimization | Genetic optimization (background, returns immediately) |
get_optimization_results | Parse optimization results after MT5 finishes |
list_jobs | List all optimization jobs with status |
analyze_report | Read analysis.json from any report directory |
compare_baseline | Compare report vs baseline, return winner/loser verdict |
compile_ea | Compile MQL5 EA via MetaEditor |
list_experts | List all EAs in MQL5/Experts directory |
list_indicators | List all indicators in MQL5/Indicators directory |
list_scripts | List all scripts in MQL5/Scripts directory |
healthcheck | Quick server health check |
list_symbols | List all available symbols in MT5 terminal |
| Tool | Description |
|---|---|
analyze_monthly_pnl | Monthly P/L breakdown only |
analyze_drawdown_events | Drawdown events and causes only |
analyze_top_losses | Worst losing deals only |
analyze_loss_sequences | Consecutive loss patterns only |
analyze_position_pairs | Position hold time and P/L pairs |
analyze_direction_bias | Buy vs Sell performance |
analyze_streaks | Win/loss streak analysis |
analyze_concurrent_peak | Peak simultaneous positions |
Use these for targeted analysis, or analyze_report to run all at once.
| Tool | Description |
|---|---|
list_deals | List individual deals with filters (type, profit range, volume, dates) |
search_deals_by_comment | Full-text search in deal comments (e.g., "Layer #3") |
search_deals_by_magic | Filter deals by EA magic number |
analyze_profit_distribution | Profit histogram: small/medium/large wins and losses |
analyze_time_performance | Performance by hour of day and day of week |
analyze_hold_time_distribution | Hold time buckets + correlation with profit |
analyze_layer_performance | Grid/martingale layer analysis from comments |
analyze_volume_vs_profit | Volume correlation + performance by lot size |
analyze_costs | Commission and swap impact on profitability |
analyze_efficiency | Profit per hour/day, annualized return, trade frequency |
| Tool | Description |
|---|---|
verify_setup | Check Wine/MT5 paths, Wine version, and EA/set file counts |
get_optimization_status | Check live state of a background optimization job |
list_jobs | All optimization jobs with compact status in one call |
| Tool | Description |
|---|---|
list_reports | Compact table of all runs with key metrics — no full analysis needed |
get_latest_report | Get most recent report with optional equity chart |
search_reports | Find reports by EA, symbol, date range, or profit criteria |
get_report_by_id | Get specific report by ID with equity chart |
get_reports_summary | Aggregate stats: counts, averages, pass rates |
get_best_reports | Top N reports sorted by any metric (profit factor, drawdown, etc.) |
search_reports_by_tags | Find reports by tags |
search_reports_by_date_range | Query by backtest date range |
search_reports_by_notes | Full-text search in report notes |
get_reports_by_set_file | Find all reports using a specific .set file |
get_comparable_reports | Find comparable reports (same EA/symbol/timeframe) |
tail_log | Read last N lines of any log; filter=errors to see only failures |
prune_reports | Delete old report directories, keep last N (skips _opt dirs) |
promote_to_baseline | Write a history entry or report to baseline.json for compare_baseline |
| Tool | Description |
|---|---|
archive_report | Convert one report dir → compact JSON entry in backtest_history.json, optionally delete source |
archive_all_reports | Bulk-archive all report dirs then optionally delete them; keeps N newest safe |
get_history | Query history with filters (EA, symbol, verdict, profit, DD) and sort options |
annotate_history | Attach verdict / notes / tags to any history entry |
| Tool | Description |
|---|---|
cache_status | MT5 tester cache size breakdown by symbol — check before cleaning |
clean_cache | Delete tester cache files; supports per-symbol and dry_run |
| Tool | Description |
|---|---|
get_active_account | Get current MT5 account session (login, server, available symbols) |
check_symbol_data_status | Validate symbol has sufficient history data for date range |
check_mt5_status | Check if MT5 terminal is installed and ready |
validate_ea_syntax | Pre-compile syntax check without running full compilation |
| Tool | Description |
|---|---|
diagnose_wine | Check Wine installation, version, and prefix health |
get_mt5_logs | Get MT5 terminal, tester, or MetaEditor logs with filtering |
search_mt5_errors | Search logs for error patterns (crash, exception, access violation) |
check_mt5_process | Check if MT5 processes are running, get PID, CPU, memory usage |
kill_mt5_process | Kill stuck MT5 processes (force=true for wineserver) |
check_system_resources | Check disk space, memory, CPU availability |
validate_mt5_config | Validate terminal.ini and tester configuration files |
get_wine_prefix_info | Get Wine prefix details: Windows version, installed programs, registry |
get_backtest_crash_info | Investigate backtest failures: incomplete markers, missing deals.csv, errors |
check_update | Check if a newer version of MT5-Quant is available |
update | Update MT5-Quant to latest release |
| Tool | Description |
|---|---|
init_project | Scaffold new MQL5 project with templates (scalper/swing/grid/basic) |
create_set_template | Generate .set parameter file from EA input variables |
export_report | Export backtest report to CSV, JSON, or Markdown |
| Tool | Description |
|---|---|
get_backtest_history | List all backtests for EA/symbol with summary metrics |
compare_backtests | Compare 2+ backtest results side-by-side with analysis |
| Tool | Description |
|---|---|
list_set_files | All .set files in tester profiles dir with sweep stats and combination counts |
read_set_file | Parse UTF-16LE .set file → structured JSON params |
write_set_file | Write full params dict → UTF-16LE .set with chmod 444 |
patch_set_file | Update specific params in-place, return diff — replaces read→edit→write |
clone_set_file | Copy .set to new path with optional overrides in one call |
| Tool | Description |
|---|---|
describe_sweep | Swept params, value counts, and total optimization combinations |
diff_set_files | Side-by-side diff of two .set files — only changed params returned |
set_from_optimization | Generate a clean backtest .set from get_optimization_results params; optionally narrow sweep |
Only the beginning is shown; read the rest in the repo