Skip to main content
Glama
roman-zaglauer

OctoBot MCP Server

update_trading_config

Update trading-mode tentacle activation settings by applying a patch that maps tentacle class names to boolean states, enabling or disabling them in the current profile.

Instructions

Update the current profile's trading-mode tentacle-activation config.

Maps to POST /config, JSON body {"trading_config": patch} -- see this module's docstring for the full source-verified derivation of this exact shape (the spec's [V]-tagged claim, independently re-confirmed against OctoBot source this session) and the request-body key's literal value (TRADING_CONFIG_KEY = "trading_config"). patch is submitted as-is, unwrapped -- the same shape models.update_tentacles_activation_config (also used by the tentacle/evaluator activation branches of this same route) expects: typically a dict mapping tentacle class names to a boolean (or a "true"/"false" string) activation state.

Output: {"trading_updated_config": <passthrough of OctoBot's own echoed value for this key from its success response>} -- matches the route's own response shape (NFR-8), narrowed to just this one key rather than OctoBot's whole /config response envelope, since every other key in that envelope reflects config domains (tentacle_config, evaluator_config, global_config, removed_elements) this tool never sends and is therefore always that route's own empty-string default.

Not confirm-gated (ADR-0003): mutates strategy/tentacle activation config, does not destroy data, expose credentials, or enable live trading. Raises TradingConfigUpdateRejectedError on any non-2xx response -- see this module's docstring for why, for this tool's own request shape, OctoBot's own error text is confirmed to always be an empty string in practice, never a substantive message, despite the spec's original claim otherwise.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
patchYes

Schema Changelog

Changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. First observedv0.1.0

TDQS

A4.2/5.0
Behavior5/5

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

With no annotations provided, the description carries the full burden, and it excels: it explicitly states the mutation is not confirm-gated, does not destroy data, expose credentials, or enable live trading. It also discloses error behavior (TradingConfigUpdateRejectedError on non-2xx) and clarifies that OctoBot's error text is empty in practice, which is valuable beyond the schema.

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

Conciseness3/5

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

The description is front-loaded with the purpose and contains a logical structure, but it is verbose. References to 'module docstring', 'spec's [V]-tagged claim', and 'independently re-confirmed this session' are unnecessary for tool invocation and add noise. It could be trimmed without losing essential information.

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?

For a mutation tool with no annotations and no output schema, the description is remarkably complete. It covers the request mapping, parameter shape, output shape, safety profile, and error behavior, leaving little for an agent to guess.

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?

Schema coverage is 0% and the schema only says patch is an object with additionalProperties. The description compensates fully by explaining that patch is submitted as-is, unwrapped, and typically maps tentacle class names to booleans or 'true'/'false' strings. This is exactly the semantic detail an agent needs.

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

Purpose4/5

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

The description opens with a specific verb and resource: 'Update the current profile's trading-mode tentacle-activation config.' It clearly identifies what the tool does and even maps it to POST /config. However, it does not explicitly differentiate itself from sibling tools like update_tentacle_config or update_evaluator_config, so it misses the top score.

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

Usage Guidelines3/5

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

The intended use is implied by the purpose statement: you use this when you need to update the current profile's trading-mode tentacle activation config. The description does not provide explicit when-not-to-use guidance or name alternative tools, and it lacks prerequisites or selection criteria.

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