Freqtrade-MCP について
Freqtrade-MCP は、Freqtrade の REST API を介して暗号資産取引ボットに接続する MCP サーバーです。AI エージェントがボットの状態を確認し、一部の取引操作を実行できます。すでに Freqtrade を運用し、自然言語でボットを監視・制御したい利用者に適しています。
主な機能
- 01取引ペアの OHLCV 市場データの取得
- 02未決済取引、利益、残高、パフォーマンスの照会
- 03ホワイトリスト、ブラックリスト、取引履歴、ロックの確認
- 04取引ペアの買い注文と売り注文の発注
- 05ボットの開始、停止、設定の再読み込み
- 06ブラックリストと取引ロックの追加・削除
活用シーン
- 01AI エージェントに現在の未決済取引と累計利益を問い合わせ
- 02プロンプトから特定の取引ペアをブラックリストに追加
- 03設定変更後に Freqtrade の設定を再読み込み
MCP 対応
本プロジェクトは MCP サーバーであり、Freqtrade REST API のエンドポイントをツールとして MCP クライアントに公開します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Freqtrade-MCP
Freqtrade 暗号資産取引ボットと REST API 経由で連携する MCP サーバーです。自動取引の操作で AI エージェントをシームレスに利用できます。
暗号資産関連の MCP サーバーについては、Kukapay MCP serversをご覧ください。
インストール
前提条件
- Python 3.13+:システムに Python がインストールされていることを確認してください。
- Freqtrade:REST API を有効にした、実行中の Freqtrade インスタンス(Freqtrade ドキュメントを参照)。
- 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 分足チャートはどのような感じですか?」
- 「過去 1 時間の XRP/USDT の最新のローソク足データを表示してください。」
-
ボットのステータスの取得:
- 「現在のオープン中の取引のステータスを教えてください。」
- 「現在、アクティブな取引はありますか?」
- 「現在のボットの取引状況について教えてください。」
-
利益の取得:
- 「これまでにどれくらいの利益が出ていますか?」
- 「ボットの利益の合計をまとめてください。」
- 「取引による利益を表示してください。」
-
残高の取得:
- 「アカウントの残高はいくらですか?」
- 「取引アカウントにはいくらありますか?」
- 「Freqtrade ウォレットの現在の残高を教えてください。」
-
パフォーマンスの取得:
- 「ボットのパフォーマンスはどの程度ですか?」
- 「取引のパフォーマンス指標を教えてください。」
- 「取引統計を表示してください。」
-
ホワイトリストの取得:
- 「ホワイトリストに登録されている通貨ペアはどれですか?」
- 「ボットで使用できる通貨ペアはどれですか?」
- 「ホワイトリストに登録されている通貨ペアを一覧表示してください。」
-
ブラックリストの取得:
- 「ブラックリストに登録されている通貨ペアはどれですか?」
- 「現在、取引が禁止されている通貨ペアはどれですか?」
- 「ブラックリストについて教えてください。」
-
取引の取得:
- 「クローズ済み取引の履歴を教えてください。」
- 「ボットが完了したすべての取引を表示してください。」
- 「過去の取引を一覧表示してください。」
-
設定の取得:
- 「現在のボット設定を教えてください。」
- 「ボットが使用している設定を表示してください。」
- 「Freqtrade の設定について教えてください。」
-
ロックの取得:
- 「アクティブな取引ロックはありますか?」
- 「現在設定されているロックは何ですか?」
- 「取引ロックの一覧を表示してください。」
-
取引の発注:
- 「今すぐ BTC/USDT を 0.01 買ってください。」
- 「すぐに ETH/USDT を 0.05 売ってください。」
- 「XRP/USDT を 0.1 買う注文を出してください。」
-
ボットの起動:
- 「取引ボットを起動してください。」
- 「Freqtrade ボットをオンにしてください。」
- 「今すぐボットを稼働させてください。」
-
ボットの停止:
- 「取引ボットを停止してください。」
- 「Freqtrade ボットをシャットダウンしてください。」
- 「ボットの取引を一時停止してください。」
-
設定の再読み込み:
- 「ボットの設定を再読み込みしてください。」
- 「ボットの設定を更新してください。」
- 「Freqtrade の設定を更新してください。」
-
ブラックリストへの追加:
- 「ETH/USDT をブラックリストに登録してください。」
- 「BTC/ETH をブラックリストに追加してください。」
- 「XRP/USDT の取引を禁止してください。」
-
ブラックリストからの削除:
- 「ETH/USDT をブラックリストから削除してください。」
- 「BTC/ETH の取引禁止を解除してください。」
- 「XRP/USDT をブラックリストから外してください。」
-
ロックの削除:
- 「ID 123 の取引ロックを削除してください。」
- 「番号 45 のロックを解除してください。」
- 「ID 7 の取引ロックを解除してください。」
ライセンス
このプロジェクトは MIT ライセンスの下でライセンスされています。詳細については、LICENSE ファイルをご覧ください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。