Freqtrade-MCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| FREQTRADE_API_URL | Yes | URL of the Freqtrade instance with the REST API enabled (e.g., http://127.0.0.1:8080) | http://127.0.0.1:8080 |
| FREQTRADE_PASSWORD | Yes | Password for Freqtrade API authentication | |
| FREQTRADE_USERNAME | Yes | Username for Freqtrade API authentication |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| fetch_market_dataB | Fetch OHLCV data for a specified trading pair and timeframe. Parameters: pair (str): Trading pair (e.g., "BTC/USDT"). timeframe (str): Timeframe for the data (e.g., "1h", "5m"). ctx (Context): MCP context object for logging and client access. Returns: str: Stringified JSON response containing OHLCV data, or None if failed. |
| fetch_bot_statusB | Retrieve the current status of open trades. Parameters: ctx (Context): MCP context object for logging and client access. Returns: str: Stringified JSON response with open trade status, or None if failed. |
| fetch_profitB | Get profit summary for the trading bot. Parameters: ctx (Context): MCP context object for logging and client access. Returns: str: Stringified JSON response with profit summary, or None if failed. |
| fetch_balanceB | Fetch the account balance. Parameters: ctx (Context): MCP context object for logging and client access. Returns: str: Stringified JSON response with account balance, or None if failed. |
| fetch_performanceC | Retrieve trading performance metrics. Parameters: ctx (Context): MCP context object for logging and client access. Returns: str: Stringified JSON response with performance metrics, or None if failed. |
| fetch_whitelistB | Get the current whitelist of trading pairs. Parameters: ctx (Context): MCP context object for logging and client access. Returns: str: Stringified JSON response with whitelist data, or None if failed. |
| fetch_blacklistB | Get the current blacklist of trading pairs. Parameters: ctx (Context): MCP context object for logging and client access. Returns: str: Stringified JSON response with blacklist data, or None if failed. |
| fetch_tradesB | Fetch the history of closed trades. Parameters: ctx (Context): MCP context object for logging and client access. Returns: str: Stringified JSON response with trade history, or None if failed. |
| fetch_configB | Retrieve the current bot configuration. Parameters: ctx (Context): MCP context object for logging and client access. Returns: str: Stringified JSON response with configuration data, or None if failed. |
| fetch_locksB | Get the current trade locks. Parameters: ctx (Context): MCP context object for logging and client access. Returns: str: Stringified JSON response with trade locks data, or None if failed. |
| place_tradeC | Place a trade (buy or sell) with the specified pair and amount. Parameters: pair (str): Trading pair (e.g., "BTC/USDT"). side (str): Trade direction, either "buy" or "sell". stake_amount (float): Amount to trade in the stake currency. ctx (Context): MCP context object for logging and client access. Returns: str: Stringified JSON response with trade result, or error message if failed. |
| start_botC | Start the Freqtrade bot. Parameters: ctx (Context): MCP context object for logging and client access. Returns: str: Stringified JSON response or success message, or error if failed. |
| stop_botC | Stop the Freqtrade bot. Parameters: ctx (Context): MCP context object for logging and client access. Returns: str: Stringified JSON response or success message, or error if failed. |
| reload_configC | Reload the bot configuration. Parameters: ctx (Context): MCP context object for logging and client access. Returns: str: Stringified JSON response or success message, or error if failed. |
| add_blacklistC | Add a pair to the blacklist. Parameters: pair (str): Trading pair to blacklist (e.g., "ETH/USDT"). ctx (Context): MCP context object for logging and client access. Returns: str: Stringified JSON response with updated blacklist, or error if failed. |
| delete_blacklistB | Remove a pair from the blacklist. Parameters: pair (str): Trading pair to remove from blacklist (e.g., "ETH/USDT"). ctx (Context): MCP context object for logging and client access. Returns: str: Stringified JSON response with updated blacklist, or error if failed. |
| delete_lockB | Delete a specific trade lock by ID. Parameters: lock_id (int): ID of the trade lock to delete. ctx (Context): MCP context object for logging and client access. Returns: str: Stringified JSON response with updated locks, or error if failed. |
| run_backtestC | Start a REST backtest job. Required fields follow freqtrade REST requirements: strategy and enable_protections. |
| fetch_backtest_statusA | Get current backtest execution status and latest result payload. |
| fetch_backtest_historyB | Get backtest result history; optionally filter by filename. |
| abort_backtestB | Abort currently running backtest task. |
| reset_backtestB | Reset backtest state/result on the API server. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| analyze_trade | Generate a prompt to analyze a trading pair's performance. |
| trading_strategy | Generate a prompt for suggesting a trading strategy. |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 22 tools
Most tools have distinct purposes targeting specific resources like blacklist, backtest, or bot operations, with clear boundaries. However, some fetch tools like fetch_bot_status and fetch_trades might be slightly overlapping in providing trade-related information, but descriptions help differentiate them.
Tools follow a highly consistent verb_noun pattern throughout, such as fetch_balance, add_blacklist, and run_backtest. All names use snake_case with clear verbs, making them predictable and easy to understand.
With 22 tools, the count is borderline high for a trading bot server, potentially feeling heavy. While it covers many aspects, some tools might be consolidated or omitted without losing core functionality, indicating a slight over-scoping.
The tool set provides comprehensive coverage for the Freqtrade domain, including CRUD operations for blacklist/locks, bot lifecycle management, data fetching, and backtesting. No obvious gaps are present; agents can handle full workflows from configuration to trading and analysis.