Skip to main content
Glama

global_optimize

Minimize a scalar objective function using global optimization methods: differential evolution, dual annealing, or basin hopping, with bounds, starting points, and parameter constants.

Instructions

Minimize a scalar expression with a global optimizer.

Variables are named ``x0, x1, ...`` in the order of ``bounds`` (or ``x0``).
``method`` is ``differential_evolution`` or ``dual_annealing`` (both require
finite ``bounds``) or ``basinhopping`` (requires a starting point ``x0``).
Keys of ``params`` are injected as additional symbolic constants.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
x0No
seedNo
boundsNo
methodNodifferential_evolution
paramsNo
maxiterNo
objectiveYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

B3.4/5.0
Behavior3/5

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

With no annotations, the description carries the full burden. It usefully discloses the variable-naming convention, per-method input requirements, and the params-injection behavior. It does not cover determinism (seed), convergence/failure behavior, or return shape, which matter for an optimizer.

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

Conciseness4/5

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

Short and front-loaded: the purpose leads, then three tight lines covering variable naming, method constraints, and params. Every sentence adds information with no padding.

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

Completeness3/5

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

For a 7-parameter tool with no annotations and no output schema, the description covers the inputs that affect correctness but is silent on return values, convergence/iteration reporting, and the role of seed and maxiter. Adequate but with clear gaps.

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

Parameters3/5

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

Schema coverage is 0%, so the description must compensate. It explains the semantics of x0, bounds, method, and params reasonably well, but leaves seed, maxiter, and objective unexplained beyond the generic 'scalar expression' phrase.

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?

States a specific verb and resource: 'Minimize a scalar expression with a global optimizer.' The word 'global' implicitly distinguishes it from the sibling optimize_minimize, though the sibling is never named explicitly.

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?

Provides conditional guidance tied to `method` (DE/dual_annealing need finite bounds, basinhopping needs x0), which tells the agent what inputs are valid per choice. However, it never states when to prefer this tool over optimize_minimize or other optimizers, so alternative selection is left to inference.

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