Skip to main content
Glama
ariadng

metatrader-mcp-server

PyPI version Python 3.10+ License: MIT

让 AI 助手使用自然语言为您交易

MetaTrader MCP 服务器


📑 目录


Related MCP server: mt5-mcp

🌟 这是什么?

MetaTrader MCP 服务器 是一个连接 AI 助手(如 Claude、ChatGPT)与 MetaTrader 5 交易平台的桥梁。无需点击按钮,您只需告诉您的 AI 助手要做什么:

“查看我的账户余额” “买入 0.01 手 EUR/USD” “平掉所有盈利的仓位”

AI 会理解您的请求并自动在 MetaTrader 5 上执行。

工作原理

You → AI Assistant → MCP Server → MetaTrader 5 → Your Trades

✨ 功能特性

  • 🗣️ 自然语言交易 - 用简单的英语与 AI 对话即可执行交易

  • 🤖 多 AI 支持 - 适用于 Claude Desktop、ChatGPT(通过 Open WebUI)等

  • 📊 全面市场访问 - 获取实时价格、历史数据和品种信息

  • 💼 完整的账户控制 - 查看余额、净值、保证金和交易统计数据

  • ⚡ 订单管理 - 通过简单指令下单、修改和关闭订单

  • 🔒 安全 - 所有凭据均保留在您的本地机器上

  • 🌐 灵活的接口 - 可作为 MCP 服务器、REST API 或 WebSocket 流使用

  • 📖 文档完善 - 提供全面的指南和示例

🎯 适用人群

  • 交易者:希望使用 AI 实现交易自动化

  • 开发者:构建交易机器人或分析工具

  • 分析师:需要快速访问市场数据

  • 任何人:对将 AI 与金融市场结合感兴趣的人

⚠️ 重要免责声明

请仔细阅读:

交易金融工具涉及巨大的亏损风险。本软件按“原样”提供,开发者对使用本软件产生的任何交易损失、收益或后果不承担任何责任

使用本软件即表示您承认:

  • 您了解金融交易的风险

  • 您对通过本系统执行的所有交易负责

  • 您不会因任何结果而追究开发者的责任

  • 您自行承担使用本软件的风险

这不是财务建议。请务必负责任地进行交易。


📋 先决条件

在开始之前,请确保您具备:

  1. Python 3.10 或更高版本 - 在此下载

  2. MetaTrader 5 终端 - 在此下载

  3. MT5 交易账户 - 模拟或真实账户凭据

    • 登录账号

    • 密码

    • 服务器名称(例如:“MetaQuotes-Demo”)

🚀 快速入门

第 1 步:安装软件包

打开您的终端或命令提示符并运行:

pip install metatrader-mcp-server

第 2 步:启用自动交易

  1. 打开 MetaTrader 5

  2. 转到 工具选项

  3. 点击 智能交易系统 选项卡

  4. 勾选 允许自动交易

  5. 点击 确定

第 3 步:选择您的接口

根据您的使用方式选择一种:

选项 A:与 Claude Desktop 一起使用(本地 STDIO)

  1. 找到您的 Claude Desktop 配置文件:

    • Windows: %APPDATA%\Claude\claude_desktop_config.json

    • Mac: ~/Library/Application Support/Claude/claude_desktop_config.json

  2. 打开文件并添加此配置:

{
  "mcpServers": {
    "metatrader": {
      "command": "metatrader-mcp-server",
      "args": [
        "--login",     "YOUR_MT5_LOGIN",
        "--password",  "YOUR_MT5_PASSWORD",
        "--server",    "YOUR_MT5_SERVER",
        "--transport", "stdio"
      ]
    }
  }
}

可选:指定自定义 MT5 终端路径

如果您的 MT5 终端安装在非标准位置,请添加 --path 参数:

{
  "mcpServers": {
    "metatrader": {
      "command": "metatrader-mcp-server",
      "args": [
        "--login",     "YOUR_MT5_LOGIN",
        "--password",  "YOUR_MT5_PASSWORD",
        "--server",    "YOUR_MT5_SERVER",
        "--transport", "stdio",
        "--path",      "C:\\Program Files\\MetaTrader 5\\terminal64.exe"
      ]
    }
  }
}
  1. YOUR_MT5_LOGINYOUR_MT5_PASSWORDYOUR_MT5_SERVER 替换为您的实际凭据

  2. 重启 Claude Desktop

  3. 开始聊天!尝试:“我的账户余额是多少?”

选项 B:与 Open WebUI 一起使用(适用于 ChatGPT 和其他 LLM)

  1. 启动 HTTP 服务器:

metatrader-http-server --login YOUR_LOGIN --password YOUR_PASSWORD --server YOUR_SERVER --host 0.0.0.0 --port 8000

可选:指定自定义 MT5 终端路径

如果您的 MT5 终端安装在非标准位置,请添加 --path 参数:

metatrader-http-server --login YOUR_LOGIN --password YOUR_PASSWORD --server YOUR_SERVER --path "C:\Program Files\MetaTrader 5\terminal64.exe" --host 0.0.0.0 --port 8000
  1. 在浏览器中打开 http://localhost:8000/docs 查看 API 文档

  2. 在 Open WebUI 中:

    • 转到 设置工具

    • 点击 添加工具服务器

    • 输入 http://localhost:8000

    • 保存

  3. 现在您可以在 Open WebUI 聊天中使用交易工具了!

选项 C:通过 WebSocket 获取实时行情

通过 WebSocket 流式传输实时报价数据(买价、卖价、点差、成交量),用于仪表板、机器人或监控:

metatrader-quote-server --login YOUR_LOGIN --password YOUR_PASSWORD --server YOUR_SERVER

使用任何 WebSocket 客户端连接:

websocat ws://localhost:8765

您将收到一条 connected 消息,随后是作为 JSON 的持续报价更新。详情请参阅 WebSocket 行情服务器

选项 D:远程 MCP 服务器 (SSE)

在 Windows VPS(安装了 MT5 的地方)上运行 MCP 服务器,并从 Claude Desktop 或 Claude Code 远程连接。

服务器端(在 Windows VPS 上):

metatrader-mcp-server --login YOUR_LOGIN --password YOUR_PASSWORD --server YOUR_SERVER

默认情况下,这会在 0.0.0.0:8080 上启动 SSE 服务器。使用 --host--port 进行自定义:

metatrader-mcp-server --login YOUR_LOGIN --password YOUR_PASSWORD --server YOUR_SERVER --host 127.0.0.1 --port 9000

客户端(您本地机器上的 Claude Desktop 配置):

{
  "mcpServers": {
    "metatrader": {
      "url": "http://VPS_IP:8080/sse"
    }
  }
}

VPS_IP 替换为您服务器的 IP 地址。

安全警告:MCP 协议不包含身份验证。当通过网络暴露 SSE 服务器时,请使用防火墙按 IP 限制访问,或将其置于带有身份验证的反向代理之后,或使用 SSH 隧道。


🤖 交易助手技能 (Claude Code / Claude Desktop)

claude-skill/ 目录中包含一个预构建的 交易终端助手 技能。它为 Claude 提供了关于所有 32 个交易工具、输出格式和 MetaTrader 5 领域专业知识的结构化知识。

为 Claude Code 安装

选项 1:符号链接(推荐)

从标准 Claude Code 技能目录创建到 claude-skill/ 的符号链接:

cd metatrader-mcp-server
mkdir -p .claude
ln -s ../claude-skill .claude/skills

该技能将被自动发现并作为 /trading 提供。

选项 2:复制

将技能文件复制到 Claude Code 技能目录:

cd metatrader-mcp-server
mkdir -p .claude/skills
cp -r claude-skill/trading .claude/skills/trading

为 Claude Desktop 安装

对于 Claude Desktop,将技能复制到全局 Claude 技能目录:

# macOS
mkdir -p ~/Library/Application\ Support/Claude/skills
cp -r claude-skill/trading ~/Library/Application\ Support/Claude/skills/trading

# Windows
mkdir "%APPDATA%\Claude\skills"
xcopy /E claude-skill\trading "%APPDATA%\Claude\skills\trading\"

该技能的作用

  • 直接执行:请求时立即执行交易,无需额外确认

  • 工作流:知道如何为复杂操作链接工具(例如,下市价单然后设置止损/止盈)

  • 格式化:以整洁的终端风格表格呈现账户数据、仓位、订单和价格

  • 领域知识:了解 MT5 订单类型、时间周期、品种格式和成交模式

使用方法

安装后,使用 /trading 调用,或者自然地询问与交易相关的问题:

/trading
> Show me my account dashboard
> Buy 0.1 lots of EURUSD with SL at 1.0800
> Close all profitable positions
> Show me GBPUSD H4 candles

📡 WebSocket 行情服务器

WebSocket 行情服务器将实时报价数据从 MetaTrader 5 流式传输到任何 WebSocket 客户端。它非常适合实时仪表板、算法交易前端和实时监控。

启动服务器

metatrader-quote-server --login YOUR_LOGIN --password YOUR_PASSWORD --server YOUR_SERVER

服务器默认在 ws://0.0.0.0:8765 上启动。

自定义

metatrader-quote-server \
  --login YOUR_LOGIN \
  --password YOUR_PASSWORD \
  --server YOUR_SERVER \
  --host 127.0.0.1 \
  --port 9000 \
  --symbols "EURUSD,GBPUSD,XAUUSD" \
  --poll-interval 200

配置

标志

环境变量

默认值

描述

--host

QUOTE_HOST

0.0.0.0

绑定的主机

--port

QUOTE_PORT

8765

绑定的端口

--symbols

QUOTE_SYMBOLS

XAUUSD,USOIL,GBPUSD,USDJPY,EURUSD,BTCUSD

要流式传输的逗号分隔品种

--poll-interval

QUOTE_POLL_INTERVAL_MS

100

报价轮询间隔(毫秒)

CLI 标志优先于环境变量,环境变量优先于默认值。

消息格式

连接时 — 服务器发送带有品种列表的 connected 消息,随后是任何缓存的报价:

{"type": "connected", "symbols": ["XAUUSD", "EURUSD", "GBPUSD"], "poll_interval_ms": 100}

报价更新 — 每当买价、卖价或成交量发生变化时发送:

{"type": "tick", "symbol": "XAUUSD", "bid": 2345.67, "ask": 2345.89, "spread": 0.22, "volume": 1234, "time": "2026-03-14T10:30:45+00:00"}

错误 — 如果无法获取品种,则发送:

{"type": "error", "symbol": "INVALID", "message": "Symbol not found or data unavailable"}

示例:使用 Python 连接

import asyncio
import json
from websockets.asyncio.client import connect

async def main():
    async with connect("ws://localhost:8765") as ws:
        async for message in ws:
            tick = json.loads(message)
            if tick["type"] == "tick":
                print(f"{tick['symbol']}: {tick['bid']}/{tick['ask']} (spread: {tick['spread']})")

asyncio.run(main())
A
license - permissive license
Not graded
quality - not tested
D
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity
Issues opened vs closed

Related MCP Servers

  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables AI applications to interact with MetaTrader 5 terminals via WebSocket MCP protocol for trading operations and account management.
    4
  • A
    license
    A
    quality
    A
    maintenance
    An MCP server that lets an AI agent read your MetaTrader 5 account and place trades over the Model Context Protocol, with a configurable human approval gate.
    15
    4
    MIT
  • F
    license
    Not graded
    quality
    D
    maintenance
    A Model Context Protocol (MCP) server that provides AI assistants like Claude with direct access to MetaAPI trading platform. Trade forex, stocks, and commodities through natural language conversations.
    1
  • F
    license
    Not graded
    quality
    B
    maintenance
    Universal MCP server that enables AI assistants to control MetaTrader 5 directly, executing trades, managing data, and automating MT5 operations through natural language.
    2

View all related MCP servers

Related MCP Connectors

  • MCP server for OpenMM — exposes market data, account, trading, and strategy tools to AI agents

  • MCP server for Gainium — manage trading bots, deals, and balances via AI assistants

  • HiveCapital MCP Server — autonomous investment layer for AI agents

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/ariadng/metatrader-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server