Skip to main content
Glama
drasticstatic

hummingbot-mcp

manage_bots

Deploy, monitor, and control advanced multi-strategy trading bots with centralized risk management. Manage bot status, logs, start/stop controllers, and update runtime configurations in real-time.

Instructions

Manage controller-based bots: deploy, monitor, get logs, control execution, and modify runtime configs.

⚠️ NOTE: For most trading strategies (grid, DCA, position trading), use manage_executors() instead.
Only use bots when the user EXPLICITLY asks for "bot" deployment or needs advanced features like
multi-strategy bots with centralized risk management.

Actions:
- deploy: Deploy a new bot with controller configurations (requires bot_name + controllers_config)
- status: Get status of all active bots (no additional params needed)
- logs: Get detailed logs for a specific bot (requires bot_name)
- stop_bot: Stop and archive a bot forever (requires bot_name)
- stop_controllers: Stop specific controllers in a bot (requires bot_name + controller_names)
- start_controllers: Start/resume specific controllers (requires bot_name + controller_names)
- get_config: View current configs of a running bot (requires bot_name)
- update_config: Modify config of a controller INSIDE a running bot in real-time (requires bot_name + config_name + config_data)

Args:
    action: Action to perform on bots.
    bot_name: Name of the bot (required for deploy, logs, stop_bot, stop/start_controllers, get_config, update_config).
    controllers_config: List of controller config names (required for deploy).
    account_name: Account name for deployment (default: master_account).
    max_global_drawdown_quote: Maximum global drawdown in quote currency (deploy only).
    max_controller_drawdown_quote: Maximum per-controller drawdown in quote currency (deploy only).
    image: Docker image for deployment (default: "hummingbot/hummingbot:latest").
    log_type: Type of logs to retrieve for 'logs' action ('error', 'general', 'all').
    limit: Maximum log entries for 'logs' action (default: 50, max: 1000).
    search_term: Search term to filter logs by message content (logs only).
    controller_names: List of controller names (required for stop/start_controllers).
    config_name: Name of the config to update (required for update_config).
    config_data: New configuration data (required for update_config). Must include 'controller_type' and 'controller_name'.
    confirm_override: Required True if overwriting existing config in a running bot (update_config only).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
actionYes
bot_nameNo
controllers_configNo
account_nameNomaster_account
max_global_drawdown_quoteNo
max_controller_drawdown_quoteNo
imageNohummingbot/hummingbot:latest
log_typeNoall
limitNo
search_termNo
controller_namesNo
config_nameNo
config_dataNo
confirm_overrideNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.4

TDQS

A4.8/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full burden. It details each action's behavior, including destructive actions like stop_bot (stops and archives forever) and update_config requiring confirm_override. However, it could more explicitly state reversibility for actions like stop_controllers.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-organized with sections for general purpose, usage guidance, actions with bullet points, and parameter descriptions. It is front-loaded with key information and concise without redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 14 parameters, no annotations, and no output schema, the description covers all actions and their parameter dependencies, including defaults. It provides complete guidance for the agent to use the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description explains each action's required parameters beyond the input schema, which has 0% coverage. It adds details like config_data must include 'controller_type' and 'controller_name', log_type enum options, and defaults for account_name and image.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose as managing controller-based bots with specific actions like deploy, monitor, logs, control execution, and config modification. It distinguishes from sibling tools like manage_executors by explicitly noting when to use bots vs. executors.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit when-to-use and when-not-to-use guidance, recommending manage_executors for most trading strategies and only using bots when the user explicitly asks for 'bot' deployment or needs advanced features. It names the alternative sibling tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.