CCXT
Official CCXT MCP server - Market data and trading across 100+ exchanges and prediction markets
Beschreibung vom Entwickler (englisches Original)
Let an AI agent read and trade a MetaTrader 5 account over MCP, behind a human-approval gate.
Diese drei werden nie zu einer Punktzahl zusammengefasst: Meinungen, Messungen und Beliebtheit sind verschiedene Dinge.
Für diesen Server haben wir noch keine Zusammenfassung in einfacher Sprache geschrieben. Unten stehen die Fakten, die wir aus der Registry gelesen haben.
Wähle die KI-App, die du nutzt, und kopiere die Einstellungen.
MT5_LOGIN, MT5_PASSWORD, MT5_SERVERAls geheim markierte Werte sind Schlüssel zu deinem Konto. Gib sie nie weiter und füge sie nie in einen Chat ein.
Du brauchst
Welche App nutzt du?
Wähle oben deine App. Wir merken sie uns, damit der Button beim nächsten Mal „In … installieren“ anzeigt.
Öffne Claude Desktop → Settings → Developer → Edit Config und füge dies in claude_desktop_config.json ein
{
"mcpServers": {
"mt5-trading": {
"command": "uvx",
"args": [
"mt5-trading-mcp"
],
"env": {
"MT5_LOGIN": "your-value",
"MT5_PASSWORD": "your-value",
"MT5_SERVER": "your-value"
}
}
}
}Führe das in deinem Terminal aus
claude mcp add mt5-trading --env MT5_LOGIN=your-value --env MT5_PASSWORD=your-value --env MT5_SERVER=your-value -- uvx mt5-trading-mcpTrag die leeren Werte ein, bevor du ihn startest.
In .cursor/mcp.json in deinem Projekt oder in ~/.cursor/mcp.json einfügen
{
"mcpServers": {
"mt5-trading": {
"command": "uvx",
"args": [
"mt5-trading-mcp"
],
"env": {
"MT5_LOGIN": "your-value",
"MT5_PASSWORD": "your-value",
"MT5_SERVER": "your-value"
}
}
}
}Dein Browser fragt, ob er die App öffnen darf, dann zeigt die App die Einstellungen und bittet dich um Bestätigung. Schlüsselwerte bleiben leer, damit du sie selbst einträgst.
In .vscode/mcp.json in deinem Projekt einfügen
{
"servers": {
"mt5-trading": {
"type": "stdio",
"command": "uvx",
"args": [
"mt5-trading-mcp"
],
"env": {
"MT5_LOGIN": "your-value",
"MT5_PASSWORD": "your-value",
"MT5_SERVER": "your-value"
}
}
}
}Dein Browser fragt, ob er die App öffnen darf, dann zeigt die App die Einstellungen und bittet dich um Bestätigung. Schlüsselwerte bleiben leer, damit du sie selbst einträgst.
Dieser Server läuft auf deinem Computer, und ChatGPT kann sich nur mit Servern im Internet verbinden. Wähle eine andere App.
Deine Auswahl bleibt in einem Cookie auf diesem Gerät; kein Konto nötig.
MT5_LOGIN envMT5_SERVER envDiese Einstellungen werden aus dem Registry-Eintrag des Entwicklers erzeugt. Wenn in der README etwas anderes steht, folge der README.
Basierend darauf, wie sich dieser Server verbindet, und auf der eigenen Doku jeder App, geprüft am 10. Nov. 2026.
Laufen auf deinem Computer in
ClaudeGooseLM StudioMsty StudioCherry StudioCursorVS Code + GitHub CopilotVisual StudioWindsurf (Devin Desktop)ZedKiroClineContinueJetBrains AI AssistantClaude CodeCodex CLIGemini CLIOpenCodenodecodeWarpLibreChatRaycast
Läuft auf deinem Computer; die Tool-Liste erscheint nach der Installation in deiner KI-App.
Wir prüfen Informationen, die jeder sehen kann; den Code haben wir nicht gelesen. Checks, die nicht zutreffen, werden nicht mitgezählt. · Geprüft am 10. Nov. 2026
Der Registry-Name wurde mit dem GitHub-Konto vincentwongso bestätigt, dem das Repo gehört
Code zuletzt geändert: vor 17 Tagen
Dieses Repo haben wir noch nicht von GitHub gelesen
Dieser Server läuft auf deinem Computer; es gibt keinen Endpunkt im Internet
Läuft auf deinem Computer und nutzt stattdessen lokale Einstellungen
Läuft auf deinem Computer; Tool-Listen können wir nur von Endpunkten im Internet lesen
Verglichen mit allen aktiven Servern dieser Kategorie in der Registry. Sterne zählen nur, wenn dem Herausgeber das Repo gehört.
Er hat 2 von 2 zutreffenden Basischecks bestanden. Den Code haben wir nicht gelesen. Bevor du einen Schlüssel oder Token hinzufügst, sieh nach, welche Zugriffe der Server verlangt, und nutze einen Schlüssel, der nur die Berechtigungen hat, die du brauchst.
Das musst du eintragen: MT5_PASSWORD
Er läuft auf deinem Computer. Deine KI-App startet ihn bei Bedarf, und die Daten laufen nicht über die Server des Entwicklers (außer der Server ruft selbst einen Onlinedienst auf).
Das GitHub-Repo wurde zuletzt vor 17 Tagen geändert, und die neueste Version (1.4.2) kam vor 5 Monaten in die Registry.
Apps, die MCP unterstützen, etwa Claude Desktop, Claude Code, Cursor und VS Code. Außerdem brauchst du Python (uv) auf deinem Computer.
In derselben Kategorie: CCXT, Finance Toolkit, AKQuant
Server derselben Kategorie von anderen Entwicklern, sortiert nach Sternen.
So liest du eine Karte:↓ Downloads pro Wochei★ GitHub-SterneiDrei Säulen: Bewertungen · Checks · NutzungiAktualisiert = neueste Version in der Registry veröffentlichti
Official CCXT MCP server - Market data and trading across 100+ exchanges and prediction markets
500+ transparent financial methods calculated from raw statements, not third-party endpoints.
Write and backtest trading strategies with AKQuant: API lookup, strategy checks, backtest runs
Unverändert aus dem Repo des Entwicklers übernommen. PopNx MCP hat den Inhalt weder geprüft noch empfiehlt es ihn. HTML, Bilder und Skripte wurden entfernt. Links führen von dieser Website weg.
Let an AI agent manage your MetaTrader 5 account over [Model Context Protocol](https://modelcontextprotocol.io) - with configurable human approval gate.
A Hermes agent placing then closing a real 0.01-lot trade on a demo account, end-to-end over MCP on Linux.
Not a mock-up - the same round-trip in MetaTrader 5's own History tab; the tickets and balance match the recording.
⚠️ **This software places _real_ trades through your MetaTrader 5 terminal with
real orders and irreversible fills.** Read
and SECURITY.md
before connecting it to a live account. Always test using your demo account first.
Runs locally - in the same process tree as your agent, no cloud, no telemetry. Windows (native) or Linux (via Docker); Python 3.10+.
📖 The story behind this: this project is built step by step in
Part 1 of the *Trade with AI agent* series on the Fintrix engineering blog.
mt5-mcp lets an AI agent read your MetaTrader 5 account and place trades through it, over the Model Context Protocol.
place_order, modify_order, cancel_order, close_position, each behind a preflight + human-consent + idempotency + audit layer.account://, positions://, and quotes://{symbol} snapshots that push change notifications..claude/skills/: mt5-market-data and mt5-trading teach an agent how to read the account and run the consent flow safely.Full catalogue and the consent flow: [docs/tools.md](https://github.com/vincentwongso/mt5-trading-mcp/blob/main/docs/tools.md).
place_order as a live attack surface and says so plainly - the MCP is explicitly *not* the security boundary (see SECURITY.md).rpyc version-matching).pip install mt5-trading-mcp
python -m mt5_mcp doctor: expect [INFO] backend: native and [PASS] lines.python -m mt5_mcp serve.Wire it to OpenClaw in one command (registers the mcp.servers entry):
openclaw mcp set mt5-mcp '{"command":"python","args":["-m","mt5_mcp","serve"]}'
The MT5 terminal + the MCP run headless in an all-in-one image; your agent talks MCP over HTTP. No host Python, no bridge.
cp deploy/.env.example deploy/.env # add MT5_LOGIN / MT5_PASSWORD / MT5_SERVER
docker compose -f deploy/docker-compose.yml up -d
Log the terminal in once via the KasmVNC web UI at http://127.0.0.1:3001 (File -> Login to Trade Account; persists across restarts), then point your agent at http://127.0.0.1:8765/mcp. Wire it to OpenClaw in one command:
openclaw mcp set mt5-mcp '{"url":"http://127.0.0.1:8765/mcp","transport":"streamable-http"}'
Full walkthrough: [docs/installation.md](https://github.com/vincentwongso/mt5-trading-mcp/blob/main/docs/installation.md).
get_chart_screenshot(symbol, timeframe, annotations?) returns a PNG of the native MT5 chart, optionally annotated, so an LLM can read it visually (candles, support/resistance, patterns). Because the MetaTrader5 Python API cannot capture charts, this uses a small MQL5 Expert Advisor that runs inside a GUI terminal and calls ChartScreenShot().
See Chart annotations for marking up support/resistance lines, trendlines and notes before capture.
Setup (one time):
AgentScreenshot EA - see mql5/README.md.[screenshot] template = "agent.tpl" in your config, or leave it unset for the default chart.Config knobs ([screenshot] section): width (default 1600), height (default 900), template (default none), timeout_s (default 10).
Not available on the headless Linux/Docker deployment: it needs a GUI terminal. Off Windows the tool returns SCREENSHOT_NOT_SUPPORTED.
If you've been handed this repository to install and run, follow the runbook in [docs/agents.md](https://github.com/vincentwongso/mt5-trading-mcp/blob/main/docs/agents.md). It covers platform detection, install, verification, registering the server, and the hard safety rules for trades - read it before calling any mutating tool.
| Guide | What's in it |
|---|---|
| Installation & setup | Requirements, Windows + Linux/Docker setup, wiring to an agent. |
| For AI agents | Step-by-step runbook for an agent installing and running the server. |
| Configuration | config.toml schema, storage paths, hot-reload. |
| Tools & resources | Read tools, mutating tools + consent flow, subscribable resources. |
| MCP client setup | Per-client config snippets and Claude Code usage. |
| Transports & deployment | stdio/HTTP transports and Windows VPS patterns. |
| Contributing | How to contribute and run the tests. |
| Changelog | Release history and known limitations. |
mt5-mcp is not the security boundary, the broker's MT5 server enforces the hard limits (margin, max-lot, symbol permissions). Pre-flight checks in the policy engine are UX guardrails to catch agent mistakes early, not security controls.
The human-consent gate is opt-in and off by default: auto_approve_notional defaults to 0, so mutating calls auto-execute (full-open) - intended for trusted or unattended agents. Arm the gate by setting `auto_approve_notional` > 0: orders/closes whose notional is at or above it then return an ApprovalPreview you must confirm, and modifying a stop to widen or remove it also requires approval. The pre-flight limits (max_*) and symbol allow/deny lists are likewise opt-in (0 / empty = off). Every mutating call is recorded in an append-only audit JSONL log regardless. For vulnerability disclosure, see SECURITY.md.
mt5-mcp wraps the MetaTrader 5 Python library behind a FastMCP server. A single MT5Client (src/mt5_mcp/adapter/) owns the terminal connection, broker-timezone inference, and type conversions; everything else sits on top of it. The Pydantic models in src/mt5_mcp/types.py / src/mt5_mcp/config.py are the source of truth for the data and config schemas.
Agent / MCP client (Hermes, OpenClaw, Claude Code, Claude Desktop, …)
│ │ stdio · loopback HTTP ▼ ┌──────────────────────────────────────────────────────────┐ │ FastMCP server │ │ │ │ tools/ resources/ policy/ │ │ read + subscribable consent · idempotency │ │ mutating account/quotes · audit (JSONL) │ │ │ │ streaming/ - change-detection poller + dispatcher │ │ types.py · config.py - Pydantic schemas: source of │ │ truth for data + config │ │ │ └──────────────────────────────────────────────────────────┘ │ ▼ ┌──────────────────────────────────────────────────────────┐ │ │ │ adapter/ MT5Client │ │ one terminal connection · broker-TZ inference · │ │ type conversions · transparent reinit │ │ │ └──────────────────────────────────────────────────────────┘ │ ▼ MetaTrader 5 Python library -> broker terminal -> broker server
The module paths shown (tools/, resources/, policy/, streaming/, adapter/, types.py, config.py) all live under src/mt5_mcp/.
Contributions are welcome, see CONTRIBUTING.md for the dev setup, test workflow, and project principles.