关于 Freqtrade-MCP
Freqtrade-MCP 是一个 MCP 服务,通过 Freqtrade 的 REST API 与加密货币交易机器人交互,供 AI Agent 查询状态并执行部分交易操作。适合已在运行 Freqtrade 并希望用自然语言监控或控制机器人的用户。项目基于 MIT 许可证发布。
主要功能
- 01获取 OHLCV 行情数据
- 02查询未平仓交易、收益、余额与表现
- 03查看白名单、黑名单、交易历史与锁定
- 04下单买入或卖出交易对
- 05启动、停止与重新加载机器人配置
- 06管理黑名单和交易锁
适用场景
- 01让 AI Agent 查询当前持仓与累计收益
- 02通过自然语言临时将某个交易对加入黑名单
- 03在调整配置后重新加载 Freqtrade 设置
MCP 相关
该项目是 MCP 服务,将 Freqtrade REST API 的端点封装为工具,供 MCP 客户端调用。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
Freqtrade-MCP
一个通过 REST API 集成 Freqtrade 加密货币交易机器人,让 AI Agent 能够无缝交互以执行自动化交易操作的 MCP 服务。
如需了解更多加密货币相关的 MCP 服务,请参阅 Kukapay MCP servers。
安装
前置条件
- Python 3.13+:确保系统已安装 Python。
- Freqtrade:已运行且启用 REST API 的 Freqtrade 实例(参阅 Freqtrade Docs)。
- Git:用于克隆仓库。
步骤
-
克隆仓库:
git clone https://github.com/kukapay/freqtrade-mcp.git cd freqtrade-mcp -
安装依赖项: 使用
pip:pip install freqtrade-client mcp[cli]或使用
uv(可选):uv add freqtrade-client "mcp[cli]" -
客户端配置:
"mcpServers": { "freqtrade-mcp": { "command": "uv", "args": [ "--directory", "/your/path/to/freqtrade-mcp", "run", "__main__.py" ], "env": { "FREQTRADE_API_URL": "http://127.0.0.1:8080", "FREQTRADE_USERNAME": "your_username", "FREQTRADE_PASSWORD": "your_password" } } } -
Freqtrade 配置:
在配置中添加 api_server 部分,并将 api_server.enabled 设为 true,以启用 REST API。
配置示例:
"api_server": { "enabled": true, "listen_ip_address": "127.0.0.1", "listen_port": 8080, "verbosity": "error", "enable_openapi": false, "jwt_secret_key": "somethingrandom", "CORS_origins": [], "username": "Freqtrader", "password": "SuperSecret1!", "ws_token": "sercet_Ws_t0ken" },请参阅此处的文档。
使用
可用工具
该服务器将以下 Freqtrade API 端点作为 MCP 工具公开:
| 工具 | 描述 | 参数 |
|---|---|---|
fetch_market_data | 获取交易对的 OHLCV 数据 | pair: str、timeframe: str |
fetch_bot_status | 获取未平仓交易状态 | 无 |
fetch_profit | 获取利润摘要 | 无 |
fetch_balance | 获取账户余额 | 无 |
fetch_performance | 获取绩效指标 | 无 |
fetch_whitelist | 获取交易对白名单 | 无 |
fetch_blacklist | 获取交易对白名单 | 无 |
fetch_trades | 获取交易历史 | 无 |
fetch_config | 获取机器人配置 | 无 |
fetch_locks | 获取交易锁定信息 | 无 |
place_trade | 下单买入/卖出交易 | pair: str、side: str、stake_amount: float |
start_bot | 启动机器人 | 无 |
stop_bot | 停止机器人 | 无 |
reload_config | 重新加载机器人配置 | 无 |
add_blacklist | 将交易对加入黑名单 | pair: str |
delete_blacklist | 从黑名单中移除交易对 | pair: str |
delete_lock | 删除交易锁定 | lock_id: int |
示例提示词
-
获取市场数据:
- “显示 BTC/USDT 的小时价格数据。”
- “ETH/BTC 的 5 分钟图表是什么样的?”
- “提供过去一小时 XRP/USDT 的最新蜡烛图数据。”
-
获取机器人状态:
- “我当前未平仓交易的状态如何?”
- “现在有任何活跃交易吗?”
- “告诉我机器人目前的交易活动。”
-
获取利润:
- “到目前为止我赚了多少?”
- “机器人的利润总额汇总是什么?”
- “可以显示我的交易收益吗?”
-
获取余额:
- “我的账户余额是多少?”
- “我的交易账户里有多少钱?”
- “告诉我 Freqtrade 钱包的当前余额。”
-
获取表现:
- “机器人的表现如何?”
- “我的交易表现指标有哪些?”
- “显示交易统计数据。”
-
获取白名单:
- “白名单中有哪些交易对?”
- “机器人允许使用哪些交易对?”
- “列出白名单中的交易对。”
-
获取黑名单:
- “黑名单中有哪些交易对?”
- “目前哪些交易对被禁止交易?”
- “告诉我黑名单的情况。”
-
获取交易记录:
- “我已平仓交易的历史记录是什么?”
- “显示机器人已完成的所有交易。”
- “可以列出我过去的交易吗?”
-
获取配置:
- “当前的机器人配置是什么?”
- “显示机器人正在使用的设置。”
- “告诉我 Freqtrade 的配置。”
-
获取锁定项:
- “目前有任何交易锁定项处于启用状态吗?”
- “当前有哪些锁定项?”
- “显示交易锁定项列表。”
-
下单交易:
- “立即买入 0.01 BTC/USDT。”
- “立即卖出 0.05 ETH/USDT。”
- “下单买入 0.1 XRP/USDT。”
-
启动机器人:
- “启动交易机器人。”
- “开启 Freqtrade 机器人。”
- “立即运行机器人。”
-
停止机器人:
- “停止交易机器人。”
- “关闭 Freqtrade 机器人。”
- “暂停机器人的交易。”
-
重新加载配置:
- “重新加载机器人的配置。”
- “更新机器人设置。”
- “刷新 Freqtrade 配置。”
-
添加到黑名单:
- “将 ETH/USDT 加入黑名单。”
- “将 BTC/ETH 添加到黑名单。”
- “禁止交易 XRP/USDT。”
-
从黑名单中删除:
- “将 ETH/USDT 从黑名单中移除。”
- “解除对 BTC/ETH 的交易限制。”
- “将 XRP/USDT 从黑名单中移除。”
-
删除锁定项:
- “删除 ID 为 123 的交易锁定项。”
- “移除编号为 45 的锁定项。”
- “解除 ID 为 7 的交易锁定。”
许可证
本项目基于 MIT 许可证授权。详情请参阅 LICENSE 文件。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。