Skip to main content
Glama

Gradient Boosting Classifier

gradient_boosting_classifier

Train a gradient boosting classifier on a numeric, complete tabular split to correct prior tree errors sequentially and return train/test metrics, top features, and warnings.

Instructions

Train a gradient boosting classifier (scikit-learn): shallow trees added one at a time, each correcting the errors of the previous ones. Often the most accurate classical model on tabular data. The split must have only numerical, complete features (no scaling is needed). Args: split_id (str): ID of a split made by train_test_split. n_estimators (int): Number of boosting stages. Default is 100. learning_rate (float): Shrinkage per stage, greater than 0. Lower values need more estimators. Default is 0.1. max_depth (int): Depth of each tree. Default is 3. subsample (float): Fraction of rows used per tree, in (0, 1]. Below 1 gives stochastic boosting. Default is 1.0. min_samples_leaf (int): Minimum rows in a leaf. Default is 1. random_state (int): Seed. Default is 42. Returns: dict: model_id, train/test metrics (accuracy, precision, recall, F1, ROC-AUC), top features and warnings.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "split_id": "<split_id>"
    },
    "name": "gradient_boosting_classifier"
  }
}

Input Schema

NameRequiredDescriptionDefault
split_idYes
max_depthNo
subsampleNo
n_estimatorsNo
random_stateNo
learning_rateNo
min_samples_leafNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4/5.0
Behavior4/5

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

With no annotations, the description carries the full burden and does reasonably well: it discloses the hard input constraint (numerical, complete features, no scaling) and enumerates the returned dict (model_id, five metrics, top features, warnings). It stops short of describing side effects such as whether the fitted model is persisted and reusable, or expected training cost.

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?

The structure is front-loaded and scannable: purpose, then data requirement, then Args, then Returns. The two framing sentences about shallow trees and being "often the most accurate classical model" are mildly promotional but short and do aid intuition.

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

Completeness4/5

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

For a seven-parameter training tool with no annotations and no output schema, the definition covers the algorithm, all parameters, the precondition on the input split, and the return shape. Residual gaps — persistence of the returned model_id, failure behavior on invalid splits, runtime cost — are minor.

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%, yet every one of the seven parameters is documented with meaning, default, and constraint: learning_rate must be > 0 with the tradeoff against n_estimators, subsample lies in (0, 1] and creates stochastic boosting below 1, max_depth is per-tree depth. This adds substantial interpretation the bare JSON schema does not provide.

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 ("Train a gradient boosting classifier (scikit-learn)") and even sketches the algorithm's mechanism (shallow trees correcting prior errors). It does not, however, distinguish this tool from close siblings such as xgboost_classifier or random_forest_classifier, leaving that inference to the agent.

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?

One concrete prerequisite is stated: the split must contain only numerical, complete features and needs no scaling. There is no when-to-use/when-not guidance relative to the other classifier tools in the catalog, so model selection among siblings is left implicit.

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

Deploy Server

Other Tools