Skip to main content
Glama
sktime

sktime-mcp

Official
by sktime

sktime-mcp

Read the Documentation | PyPI Package

MCP (Model Context Protocol) layer for sktime - Registry-Driven for LLMs

A semantic engine that exposes sktime's native registry and semantics to Large Language Models, enabling them to:

  • 🔍 Discover valid estimators

  • 🧠 Reason about estimator capabilities

  • 🔗 Compose compatible estimators

  • Execute real sktime workflows on real data

🎯 Design Philosophy

This MCP is not just documentation or static code analysis. It is a semantic engine for programmatic model usage.

Key Principles

  1. sktime as Source of Truth - No AST parsing, no repo indexing, no heuristics. All structure comes from all_estimators, estimator tags, and sktime's API contracts.

  2. Registry-First - Instead of File → Class → Infer Relationships, we do Registry → Semantics → Safe Execution.

  3. Minimal MCP Surface - Exposes only what an LLM needs: Discovery, Description, Instantiation, Execution, and model persistence.

Related MCP server: Ollama MCP Server

🛠️ Installation

If you have uv installed, no separate installation step is needed. Just update your MCP client config (see Connecting from an LLM Client below) and uvx will handle the rest automatically.

# Verify uv is available
uvx sktime-mcp --help

pip

pip install sktime-mcp

# With optional extras (SQL, forecasting models, file formats)
pip install "sktime-mcp[all]"

Development installation

git clone https://github.com/sktime/sktime-mcp
cd sktime-mcp
python3 -m pip install -e ".[dev]"

🐳 Docker

Run without installing anything locally (only Docker required):

# Build the image
docker build -t sktime-mcp .

# Run the MCP server (stdio transport)
docker run -i sktime-mcp

Or use Docker Compose:

docker compose build
docker compose run sktime-mcp

Claude Desktop — use Docker as the MCP server command:

{
  "mcpServers": {
    "sktime": {
      "command": "docker",
      "args": ["run", "-i", "--rm", "sktime-mcp"]
    }
  }
}

Environment variables can be passed at runtime:

docker run -i -e SKTIME_MCP_LOG_LEVEL=DEBUG sktime-mcp

For a more detailed first-time setup flow, including MCP server verification and troubleshooting, see Beginner Setup.

🧭 Beginner Setup (First‑Time Users)

If you are new to sktime‑mcp or to MCP‑based workflows, this section provides a minimal starting point to help you verify that your setup is working correctly.

What is MCP?

The Model Context Protocol (MCP) allows Large Language Models (LLMs) to discover, reason about, and execute sktime workflows programmatically. This project exposes sktime’s estimator registry and semantics in a structured way so that LLMs can safely compose and run real time‑series pipelines.

Prerequisites

  • Python 3.10 or newer

  • A working Python virtual environment (recommended)

  • pip installed

macOS / Unix-like first-time setup

For macOS or Unix-like shells, create an isolated virtual environment before installing the package:

python3 -m venv .venv
source .venv/bin/activate
python -m pip install --upgrade pip
python -m pip install sktime-mcp

For development (if you want to modify the source):

python -m pip install -e ".[dev]"

Verify that the MCP server starts:

sktime-mcp

If the sktime-mcp console command is not found (e.g. the script was not placed on your PATH), use the module fallback instead — this is also the recommended form when an MCP client needs to target a specific Python environment:

python -m sktime_mcp.server

Common first-time issues:

Symptom

Likely cause

Fix

command not found: sktime-mcp

Scripts directory not on PATH

Run python -m sktime_mcp.server or add .venv/bin to your PATH

ModuleNotFoundError: sktime_mcp

Package not installed in the active environment

Confirm .venv is active (which python) and re-run pip install sktime-mcp

pip: command not found

System pip not available

Use python -m pip instead of bare pip

Wrong Python version selected

Multiple Python installations

Invoke python3 -m venv .venv explicitly and always use python inside the activated environment

Minimal Setup Check

After completing the steps above, confirm the server starts with sktime-mcp. See the macOS / Unix-like first-time setup section for the fallback command and common error solutions.

Note: On Windows, the sktime-mcp command may be installed to a directory not on your PATH (e.g., %APPDATA%\Python\Python3xx\Scripts). Either add that directory to your PATH or use python -m sktime_mcp.server instead.

🚀 Quick Start

Running the MCP Server

Standard Stdio Mode (for MCP Clients)

sktime-mcp

HTTP/SSE Mode via FastAPI (for Web Browsers or ChatGPT)

To expose the MCP server as a REST API over SSE (Server-Sent Events) for direct consumption:

PYTHONPATH=src .venv/bin/uvicorn sktime_mcp.app:app --host 127.0.0.1 --port 8001

This exposes standard SSE on /sse and message passing on /messages/.

Note for ChatGPT Web Users: ChatGPT runs in the cloud and cannot connect to http://127.0.0.1 (you will get an "Unsafe URL" error). You must expose your local server to the internet using a secure tunnel like ngrok:

ngrok http 8001

Then use the provided https://<your-ngrok-id>.ngrok-free.app/sse URL in ChatGPT.

Configuration (Environment Variables)

You can configure the server's behavior at runtime using environment variables:

  • SKTIME_MCP_MAX_RESPONSE_TOKENS: Maximum tokens allowed per tool response (e.g., 10000). If a response exceeds this limit, it is truncated and appended with a notice. Set to 0 (default) for unlimited.

  • SKTIME_MCP_LOG_LEVEL: Server logging verbosity level (DEBUG, INFO, WARNING, ERROR). Defaults to WARNING.

  • SKTIME_MCP_AUTO_FORMAT: Enables or disables automatic time-series formatting during data loading.

  • SKTIME_MCP_JOB_MAX_AGE_HOURS: Maximum hours before completed background jobs are automatically pruned. Defaults to 24.

Connecting from an LLM Client

The server uses stdio transport by default, compatible with Claude Desktop, Claude Code, and other MCP clients.

Claude Desktop — add to your config file:

Platform

Config path

macOS

~/Library/Application Support/Claude/claude_desktop_config.json

Linux

~/.config/claude/claude_desktop_config.json

Windows

%APPDATA%\Claude\claude_desktop_config.json

With uvx (recommended — no prior install needed):

{
  "mcpServers": {
    "sktime": {
      "command": "uvx",
      "args": ["sktime-mcp"]
    }
  }
}

With optional extras:

{
  "mcpServers": {
    "sktime": {
      "command": "uvx",
      "args": ["sktime-mcp[forecasting,sql]"]
    }
  }
}

With pip-installed package:

{
  "mcpServers": {
    "sktime": {
      "command": "sktime-mcp"
    }
  }
}

⚙️ Configuration

The server can be configured via environment variables:

Environment Variable

Description

Default

SKTIME_MCP_LOG_LEVEL

Logging verbosity (e.g. INFO, DEBUG, WARNING)

"WARNING"

SKTIME_MCP_LOG_PATH

Optional file path to output logs to in addition to stderr

(None)

SKTIME_MCP_AUTO_FORMAT

Automatically format time series data on load (true/false)

"true"

SKTIME_MCP_JOB_MAX_AGE_HOURS

Maximum age in hours before background jobs are cleared

24

SKTIME_MCP_JOB_CLEANUP_INTERVAL

Interval in seconds for periodic job cleanup checks

3600

📚 Available Tools

The full tool reference is in the project documentation: https://sktime.github.io/sktime-mcp/

Need

Tool options

Rough explanation

Discover what sktime can do

list_available_data, query_registry, describe_component

Find demo data, estimators, tags, and component details.

Bring data into the session

load_data_source, inspect_data, transform_data, split_data, save_data

Load files, inline data, SQL, or URLs into handles; inspect, clean, split, and persist them.

Build and run models

instantiate, fit, predict, update, get_fitted_params, call_method

Create sktime estimators or pipelines, fit them, forecast, update, or call native methods.

Evaluate and reproduce

evaluate, export_code, save_model, load_model

Cross-validate, generate Python code, and persist fitted models.

Manage runtime state

list_handles, release_handle, release_data_handle, list_jobs, check_job_status, cancel_job

See what is in memory, clean it up, and track async work.

The practical mental model is simple: prompts create tool calls, tool calls create handles, and handles let later prompts continue the workflow.

🔄 Example LLM Flows

See the User Guide for end-to-end workflow examples, including:

  • Discovering sktime coverage

  • Retail forecasting and saving results

  • Cleaning messy business data

  • Time-series classification

📁 Project Structure

sktime-mcp/
├── src/sktime_mcp/
│   ├── server.py           # MCP server entry point
│   ├── registry/           # Registry interface & tag resolver
│   ├── composition/        # Pipeline composition validator
│   ├── runtime/            # Execution engine, handle & job management
│   ├── data/               # Data adapters (file, pandas, SQL, URL)
│   └── tools/              # MCP tool implementations
├── docs/                   # Sphinx documentation source
├── examples/               # Usage examples
├── tests/                  # Test suite
├── Dockerfile              # Multi-stage container build
├── docker-compose.yml      # Compose service definition
└── .dockerignore           # Docker build context filter

🧪 Running Tests

pytest tests/

Local Quality Checks

Run standardized local checks before raising a PR:

make check

Auto-fix formatting and fixable lint issues:

make format-fix

If make is unavailable (common on Windows), run the equivalent commands:

ruff format --check .
ruff check .
pytest

To ensure your code meets quality standards before pushing, install the pre-commit hooks:

make install-hooks

This will automatically run Ruff and Pytest on your code every time you make a commit.

Available Tools

26 tools
call_methodA

Dynamically call any native method on an instantiated sktime component (e.g. 'split', 'get_alignment', 'call'). Use this tool to interact with non-standard scitypes like Splitters, Metrics, or Aligners that do not support the generic 'fit' or 'predict' endpoints. Pass 'kwargs' as a dictionary of arguments.

ParametersJSON Schema
NameRequiredDescriptionDefault
kwargsNoDictionary of keyword arguments to pass to the method. Pass '_dataset' or '_data_handle' as suffixes in keys to inject memory data (e.g., {'y_dataset': 'airline'}).
handle_idYesMemory handle ID of the instantiated component
method_nameYesName of the method to call (e.g. 'split')

TDQS

A3.9/5.0
Behavior3/5

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

No annotations provided, so description carries full burden. It mentions dynamic calling and kwargs with special suffixes, but does not disclose potential error behavior, side effects, or security implications. Adequate but not thorough.

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?

Extremely concise at two sentences, front-loaded with action and examples. Every sentence adds value without redundancy.

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?

Given the complexity of a dynamic method call tool and no output schema, the description omits return value and error handling. It covers purpose and basic usage but not operational details that could aid agent execution.

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 100%, so baseline is 3. The description adds general context but does not significantly enhance parameter understanding beyond the schema's own descriptions. No new semantics for individual parameters.

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 verb 'call', resource 'native method on instantiated sktime component', and distinguishes from siblings by specifying it's for non-standard scitypes not covered by 'fit' or 'predict'. Examples enhance clarity.

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

Usage Guidelines4/5

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

Explicitly states when to use the tool (for non-standard scitypes lacking generic endpoints), though it does not explicitly mention when not to use it. The context is clear enough for correct selection.

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

cancel_jobA

Cancel a running or pending background job. Set delete=true to also remove the job record entirely (useful for cleaning up completed/failed jobs).

ParametersJSON Schema
NameRequiredDescriptionDefault
deleteNoAlso remove the job record after cancelling (default: false)
job_idYesJob ID to cancel

TDQS

A3.7/5.0
Behavior2/5

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

No annotations are provided, so the description must fully disclose behavior. It mentions cancelling and optional deletion but lacks details on side effects, permissions, success/failure conditions, or whether cancellation is synchronous.

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?

Two concise sentences, front-loaded with the primary action, no wasted words. Efficiently communicates purpose and key parameter option.

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?

Adequate for a simple cancel operation but lacks explanation of return values, error handling, or state restrictions beyond 'running or pending'. Missing details on what occurs after cancellation.

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

Parameters4/5

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

Schema coverage is 100%, but the description adds value for the 'delete' parameter by explaining its utility (cleaning up completed/failed jobs). For 'job_id', no additional semantics beyond schema.

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 action: cancel a running or pending job. It is specific and distinguishes from sibling tools like check_job_status and list_jobs which are read-only.

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 description implies usage for running or pending jobs but does not explicitly state when to use this tool versus alternatives, nor does it provide when-not-to scenarios or prerequisites.

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

check_job_statusB

Check the status and progress of a background job

ParametersJSON Schema
NameRequiredDescriptionDefault
job_idYesJob ID to check

TDQS

B3.1/5.0
Behavior2/5

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

With no annotations, the description must disclose behavior. It mentions 'status and progress' but does not detail what is returned (e.g., status code, progress bar), whether it is idempotent, or what happens if the job_id is invalid.

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?

A single concise sentence with no wasted words. Short and to the point, though it could benefit from some structure (e.g., bullet points for return values).

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

Completeness2/5

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

No output schema is provided, so the description should explain return values and possible statuses. It does not. Also missing error handling context. Incomplete for a 1-parameter tool.

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 covers 100% of parameters, and the description of job_id is minimal. The tool description adds no extra semantic value beyond the schema's description.

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 checks the status and progress of a background job, specifying the verb 'check' and resource 'status and progress of a background job'. It distinguishes from sibling tools like cancel_job (cancel) and list_jobs (list all jobs).

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives such as list_jobs or when to avoid it. No mention of prerequisites or typical use cases.

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

describe_componentA

Get detailed information about ANY class or component in the sktime ecosystem (estimators, splitters, metrics, transformers)

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesName of the component class (e.g., 'ARIMA', 'SlidingWindowSplitter', 'MeanAbsolutePercentageError')

TDQS

A3.9/5.0
Behavior4/5

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

The description uses 'Get' implying a read-only, non-destructive operation. No annotations provided, so description carries burden. It is adequate for a simple info tool, though could explicitly state that it does not modify state or require special permissions.

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?

Single sentence, no unnecessary words. Front-loaded with action and scope. Very concise.

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 simple one-parameter tool without output schema, the description is minimally adequate but omits what 'detailed information' includes (e.g., parameters, docstring, methods). Could improve by hinting at output structure.

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 100%, so parameter meaning is fully defined by schema. Description does not add any additional semantic information beyond the schema's description of 'name'.

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?

Clearly states the tool retrieves detailed information about any class or component in the sktime ecosystem, listing specific examples (estimators, splitters, etc.). Distinguishes from sibling tools like fit or predict which perform actions rather than retrieve info.

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?

Implied usage from description: use when needing details about sktime components. No explicit guidance on when not to use or alternatives. Could mention that query_registry or list_handles might be relevant for discovery, but not required.

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

evaluate_estimatorC

Evaluate an estimator using cross-validation on a dataset

ParametersJSON Schema
NameRequiredDescriptionDefault
datasetYesDataset name: airline, sunspots, lynx, etc.
cv_foldsNoNumber of cross-validation folds (default: 3)
estimator_handleYesHandle from instantiate_estimator

TDQS

C2.9/5.0
Behavior2/5

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

No annotations are provided, so the description must convey behavioral traits. It mentions cross-validation but does not disclose whether the estimator is modified, what the return value is, or any side effects like resource usage. The description is too brief for a tool with no annotations.

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 description is a single, front-loaded sentence with no waste. It is concise but could be more informative while maintaining brevity.

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

Completeness2/5

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

Given the tool performs cross-validation evaluation with three parameters and no output schema or annotations, the description lacks critical context: what the evaluation returns (e.g., scores, plots), how cross-validation is configured (e.g., stratified), and prerequisites (e.g., dataset must be loaded). It is insufficient for an agent to use correctly.

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 100%, so parameters are already described in the schema. The description adds no extra meaning beyond the schema, such as how 'dataset' values relate to available data or how 'cv_folds' affects evaluation. Baseline score of 3 is appropriate.

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 clearly states the verb 'evaluate' with the resource 'estimator' and method 'cross-validation on a dataset', which distinguishes it from sibling tools like 'fit' and 'predict'. It is specific but could be more explicit about what evaluation metrics are used.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives (e.g., 'fit', 'predict'), nor does it mention prerequisites like needing an estimator handle from 'instantiate_estimator'. Agents are left to infer context.

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

export_codeC

Export an estimator or pipeline as executable Python code

ParametersJSON Schema
NameRequiredDescriptionDefault
handleYesHandle ID of the estimator/pipeline to export
datasetNoOptional dataset name for the fit example (e.g. 'airline', 'sunspots'). Defaults to 'airline' if omitted.
var_nameNoVariable name to use in generated code (default: 'model')model
include_fit_exampleNoWhether to include a fit/predict example (default: false)

TDQS

C2.9/5.0
Behavior2/5

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

No annotations are provided, so the description must carry the full burden. It does not disclose whether the operation is read-only, modifies state, has side effects, or requires specific permissions. The minimal description leaves important behavioral unknowns.

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 a single sentence that efficiently conveys the core purpose. No redundant words or content.

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

Completeness2/5

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

Given the lack of output schema, the description should clarify what the tool returns (e.g., code as text or a file). It does not mention output format or behavior, leaving the agent without crucial information for correct invocation.

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?

The input schema has 100% coverage with descriptions for all 4 parameters. The description adds no extra parameter context beyond what the schema already provides. Baseline score 3 is appropriate as the schema already does the heavy lifting.

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 clearly states the verb 'Export' and the resource 'estimator or pipeline', and the output type 'executable Python code'. It is distinct from sibling tools, though it could be more specific about the export format.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives such as save_model or describe_component. No context about prerequisites or use cases is given.

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

fitA

Fit an estimator on data. Provide explicit X_handle and/y_handle (or datasets) depending on the estimator's scitype.

ParametersJSON Schema
NameRequiredDescriptionDefault
fhNoOptional: Forecast horizon (e.g. 12 or [1,2,3]) to pass to fit
X_handleNoOptional: Handle from load_data_source for X data (features, panel, etc.)
y_handleNoOptional: Handle from load_data_source for y data (target, labels, etc.)
X_datasetNoOptional: Demo dataset name for X data
run_asyncNoIf True, runs the fit asynchronously in the background and returns a job_id.
y_datasetNoOptional: Demo dataset name for y data
estimator_handleYesHandle from instantiate_estimator

TDQS

A3.8/5.0
Behavior3/5

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

No annotations provided. Description discloses the need for appropriate data handles or datasets depending on estimator type, and mentions run_async. However, it does not detail mutation behavior, prerequisites, or failure modes.

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?

Single sentence, front-loaded with main action, no unnecessary words.

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

Completeness2/5

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

With 7 parameters, no output schema, and no return value description, the description is too minimal. Lacks details on async behavior, return format, and scitype-specific examples.

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

Parameters4/5

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

Schema coverage is 100% with descriptions for all parameters. The description adds value by tying the choice of X_handle/y_handle vs datasets to the estimator's scitype and referencing handles from load_data_source and instantiate_estimator.

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 action (fit an estimator) and the resource (estimator on data). It distinguishes from sibling tools like predict or evaluate_estimator by specifying the need to provide handles or datasets depending on scitype.

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 context on when to use X_handle/y_handle vs datasets based on estimator scitype, but does not explicitly exclude alternatives or mention when not to use this tool.

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

get_fitted_paramsA

Get fitted parameters from an estimator

ParametersJSON Schema
NameRequiredDescriptionDefault
estimator_handleYesHandle of a fitted estimator

TDQS

A3.5/5.0
Behavior2/5

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

With no annotations, the description carries the full burden but only states it 'gets' parameters, offering no details on behavior like error conditions for unfitted estimators or side effects.

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?

A single, front-loaded sentence with no unnecessary words; every word earns its place.

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?

Given the tool's simplicity, the description is adequate but lacks explanation of return format or what 'fitted parameters' entails, which could be helpful for an agent.

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 100% and already describes the parameter 'estimator_handle'. The description adds no additional meaning beyond what the schema provides, meeting baseline but not exceeding.

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 verb 'Get' and resource 'fitted parameters from an estimator', which is specific and distinct from sibling tools like 'fit', 'predict', or 'instantiate_estimator'.

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 description implies this tool is used after fitting an estimator, but provides no explicit guidance on when to use versus alternatives or prerequisites like the estimator needing to be fitted.

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

inspect_dataA

Inspect a loaded data handle and return rich metadata for understanding the series before modelling. Returns mtype, scitype, shape, column names, dtypes, index level names, inferred frequency, cutoff (last training timestamp), total missing-value count, a 5-row head preview, and per-column summary statistics. Works on handles from load_data_source, split_data, or transform_data. Does not modify the data.

ParametersJSON Schema
NameRequiredDescriptionDefault
data_handleYesData handle ID to inspect (from load_data_source, split_data, or transform_data).

TDQS

A4.2/5.0
Behavior4/5

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

No annotations provided, so description carries full burden. It explicitly states the tool does not modify data, and lists all returned metadata (mtype, scitype, shape, etc.), making behavior transparent.

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?

Concise and well-structured: starts with purpose, lists comprehensive return values, then specifies compatible handles. Every sentence adds value without redundancy.

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?

Given simple tool with one parameter and no output schema, the description is thorough, detailing all return fields. It is complete enough for an agent to understand what to expect.

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 description coverage is 100% for the single parameter. Description adds context about valid handles (from load_data_source, split_data, or transform_data), but the schema already describes the parameter adequately, so minimal additional value.

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?

Clearly states it inspects a data handle and returns rich metadata. Verb 'inspect' and resource 'data handle' are specific. Distinguishes from siblings that produce handles, like load_data_source, split_data, transform_data.

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

Usage Guidelines4/5

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

Explicitly states it works on handles from load_data_source, split_data, or transform_data, providing clear context for when to use it. Also notes it does not modify data, implying it is for inspection only.

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

instantiate_estimatorA

Create an estimator or pipeline instance using a sktime craft specification. The spec is a string that evaluates to an estimator, e.g., 'ARIMA(order=(1, 1, 1))' or 'Detrender() * ARIMA()'.

ParametersJSON Schema
NameRequiredDescriptionDefault
specYesCraft specification string.

TDQS

A3.5/5.0
Behavior2/5

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

No annotations provided, so the description must fully disclose behavior. It fails to mention side effects, safety (read-only vs destructive), or return value. The operation appears to create an instance without persistent storage, but this is not stated.

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?

Two concise sentences with no wasted words. The description is front-loaded with the purpose and provides an example, making it efficient.

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 simple tool with one parameter and no output schema, the description covers the core functionality. However, it lacks details on validation, error handling, and the nature of the returned instance (e.g., in-memory handle). Minor gaps reduce completeness.

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

Parameters4/5

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

The schema covers the only parameter at 100%, providing a baseline of 3. The description adds value by explaining the spec string evaluates to an estimator and giving examples, which aids understanding beyond the bare schema description.

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 creates an estimator or pipeline instance from a sktime craft specification, with concrete examples. It is distinct from siblings like 'load_model' or 'fit'.

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

Usage Guidelines2/5

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

No explicit guidance on when to use this tool versus alternatives like 'load_model' or 'describe_component'. The description implies usage with a spec string but does not clarify exclusions.

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

list_available_dataA

List all data available for use — system demo datasets and active user-loaded data handles — in a single unified response. Use is_demo=true for demos only, is_demo=false for handles only, or omit is_demo to get both.

ParametersJSON Schema
NameRequiredDescriptionDefault
is_demoNoOptional filter: true = only system demos, false = only active data handles, omit = both.

TDQS

A3.9/5.0
Behavior3/5

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

With no annotations provided, the description carries full burden. It is straightforward (listing data) and implies read-only behavior, but does not explicitly mention safety, permissions, or potential side effects. Adequate but not thorough.

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 extremely concise with two sentences: the first defines purpose and scope, the second gives parameter usage. No unnecessary words, perfectly front-loaded.

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?

Given the simplicity (1 optional parameter, no output schema), the description is mostly complete for basic use. However, it does not describe the return format or any error conditions, which could hinder an agent's understanding of the response.

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 description coverage is 100% and the description repeats the same information about the is_demo parameter. It adds no new meaning beyond the schema, meeting the baseline of 3.

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 lists all available data, including both system demo datasets and active user-loaded data handles, in a single unified response. This distinguishes it from sibling tools like list_handles, which likely only returns handles.

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

Usage Guidelines4/5

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

The description provides explicit guidance on using the is_demo parameter with three clear cases: true for demos, false for handles, omit for both. However, it does not contrast with sibling tools like list_handles to help decide which tool to use.

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

list_handlesA

List all active estimator handles in memory

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4/5.0
Behavior3/5

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

With no annotations, the description is the sole source of behavioral info. It states the action is listing in memory, which implies a read-only operation. However, it does not disclose potential side effects, required permissions, or whether handles are globally scoped.

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?

A single sentence that is concise and front-loaded. Every word is necessary; no wasted text.

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?

The description is complete given the tool's simplicity (no parameters, no output schema). It adequately describes the purpose, though it could hint at the return type or scope of 'active estimator handles'.

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

Parameters4/5

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

The tool has zero parameters and the schema coverage is 100% (empty). Per guidelines, baseline is 4 for 0 parameters. The description adds no parameter info, but none is needed since there are none.

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 'List all active estimator handles in memory', which matches the tool name and distinguishes it from other list tools (e.g., list_available_data, list_jobs). The verb 'list' and resource 'active estimator handles' are specific and unambiguous.

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?

No guidance is provided on when to use this tool versus alternatives like list_available_data or list_jobs. There is no mention of typical use cases or exclusions, leaving the agent to infer based on tool names alone.

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

list_jobsA

List all background jobs with optional status filter

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum number of jobs to return (default: 20)
statusNoFilter by status: pending, running, completed, failed, cancelled

TDQS

A3.8/5.0
Behavior3/5

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

No annotations are provided, so the description carries full burden. It does not disclose default behavior beyond the limit parameter, nor does it mention if the list is complete, ordered, or has side effects. For a simple read tool, this is adequate but not thorough.

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 a single concise sentence that front-loads the core purpose and is free of unnecessary words.

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?

Given the simplicity of the tool (2 optional params, no output schema), the description covers the main functionality. It lacks mention of return format or pagination but is sufficient for a basic list operation.

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 description coverage is 100% with both parameters documented. The description adds no new meaning beyond the schema; the optional filter is already implied. Baseline score of 3 applies.

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 uses the specific verb 'List' with the resource 'background jobs' and mentions an optional status filter, clearly distinguishing it from sibling tools like cancel_job or check_job_status.

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?

While the description implies use for listing jobs with optional filtering, it provides no explicit guidance on when to prefer this tool over siblings like check_job_status or what conditions warrant use.

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

load_data_sourceA

Load data from various sources into a data handle for forecasting. Can run synchronously (blocking) or asynchronously in the background. Supported source types: 'pandas' - from a dict or inline data (keys: data, time_column, target_column). 'file' - from CSV, Excel (.xlsx), or Parquet (keys: path, time_column, target_column). 'sql' - from a SQL database (keys: connection_string, query, time_column, target_column). 'url' - from a web URL pointing to CSV/Excel/Parquet (keys: url, time_column, target_column). GUIDELINES: 1. NEVER assume a column is a time index unless the user says so. 2. ALWAYS specify 'target_column' if the user mentions a specific variable. 3. The first column is used as target by default — if that's a date column, specify target_column explicitly. 4. For non-standard date formats, omit 'time_column' to use an integer index.

ParametersJSON Schema
NameRequiredDescriptionDefault
configYesData source configuration. Must include 'type' (pandas, sql, file, url).
run_asyncNoIf True, loads data in the background (non-blocking) and returns a job_id. If False (default), blocks and returns the data_handle directly.

TDQS

A4.2/5.0
Behavior3/5

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

No annotations are provided, so the description must fully disclose behavior. It explains synchronous and asynchronous execution and required keys for each source type. However, it lacks details on error handling, data size limits, or what happens if a source is missing.

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 description is well-structured with bullet points for source types and numbered guidelines. It is front-loaded with the core purpose. While somewhat lengthy, every sentence contributes valuable context.

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?

Given no output schema, the description explains the return values (data_handle or job_id) and covers main use cases. It addresses sync/async and source-specific details, making it fairly complete for a data loading tool.

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 100%, but the description adds substantial meaning beyond the schema. It details the required keys for each config type (pandas, file, sql, url), which the schema only mentions as a generic object. This is critical for correct parameter construction.

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 loads data from various sources into a data handle for forecasting. It lists specific source types (pandas, file, sql, url) with details, distinguishing it from sibling tools like save_data or fit.

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

Usage Guidelines4/5

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

The description provides explicit GUIDELINES on when to specify target_column, time_column, and how to handle date columns. It also explains synchronous vs async modes. However, it does not mention when not to use this tool or suggest alternatives like list_handles for already loaded data.

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

load_modelB

Load a saved sktime model from a local path and register it for use

ParametersJSON Schema
NameRequiredDescriptionDefault
pathYesPath to the saved model directory

TDQS

B3.2/5.0
Behavior2/5

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

With no annotations, the description should disclose behaviors like error handling, overwriting behavior, or required permissions. It only states 'load and register' without details on side effects or prerequisites.

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?

Single sentence, 12 words, front-loaded with the core action. No unnecessary information.

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

Completeness2/5

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

Despite low complexity, the description does not mention return values, error cases, or the scope of 'registration'. Incomplete for an agent needing to understand the tool's full behavior.

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 description coverage is 100%, and the description adds context that the path refers to a saved sktime model directory. This adds value beyond the schema but is minimal.

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 action ('load') and the resource ('saved sktime model'), and includes the outcome ('register it for use'). It distinguishes from siblings like 'save_model' and 'instantiate_estimator'.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives like 'instantiate_estimator' or other model-related tools. Missing explicit context for agent decision-making.

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

plot_seriesB

Plot one or more time series natively. Can save the plot to a specified path as a PNG file or return it as a base64 string.

ParametersJSON Schema
NameRequiredDescriptionDefault
dpiNoResolution in dots per inch (default: 150).
pathNoOptional local file path to save the plot (e.g., '/tmp/plot.png'). If omitted, returns base64.
titleNoOptional title for the plot.
labelsNoOptional list of labels corresponding to each data handle.
figsizeNoFigure size as [width, height] in inches (default: [12, 6]).
markersNoMarker style(s) for data points (e.g., 'o', ['.', 'x']).
x_labelNoCustom x-axis label.
y_labelNoCustom y-axis label.
data_handlesYesList of data handle IDs to plot (e.g., train, test, forecasts).
image_formatNoImage output format: 'png' (default), 'svg', or 'webp'.png

TDQS

B3.2/5.0
Behavior2/5

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

Lacking annotations, the description only mentions saving to PNG or returning base64. It does not disclose whether it modifies data, required permissions, performance impact, or error behavior. Critical behavioral traits are omitted.

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?

Two concise sentences that front-load the core purpose ('Plot one or more time series natively') and efficiently cover output options. No wasted words.

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

Completeness2/5

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

Despite 10 parameters and no output schema, the description omits important context like return structure (base64 string details), error handling, or constraints on data formats. Incomplete for a tool with many options.

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 100%, with all parameters described. The description adds no additional meaning beyond the schema, so baseline score of 3 is appropriate.

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 specifies the action ('plot') and resource ('time series'), and distinguishes from sibling tools like 'inspect_data' or 'evaluate_estimator' which have different purposes.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives, nor any context on prerequisites or exclusions. The description solely states what it does without aiding decision-making.

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

predictB

Generate predictions from a fitted estimator. Supports different modes like predict, predict_interval, predict_quantiles.

ParametersJSON Schema
NameRequiredDescriptionDefault
modeNoPrediction modepredict
alphaNoAlpha values for quantiles (float or list of floats)
horizonNoForecast horizon (default: 12)
X_handleNoOptional: Handle from load_data_source for X data
coverageNoCoverage level for intervals (float or list of floats)
y_handleNoOptional: Handle from load_data_source for y data (needed for annotators)
X_datasetNoOptional: Demo dataset name for X data
y_datasetNoOptional: Demo dataset name for y data
estimator_handleYesHandle of a fitted estimator

TDQS

B3.4/5.0
Behavior3/5

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

With no annotations provided, the description implies a read-only operation (generating predictions) but does not explicitly state safety or side effects. It does not disclose error conditions, data requirements, or performance implications.

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 extremely concise, consisting of two short sentences that convey the core purpose and list modes. There is no redundant or extraneous information.

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

Completeness2/5

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

Given 9 parameters, no output schema, and no annotations, the description lacks essential context: return value format, prerequisite that estimator must be fitted, handling of missing data, and mode selection guidance. It is inadequate for an agent to use reliably.

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 description coverage is 100%, so the schema already documents all parameters. The description adds only a mention of modes, which is redundant with the enum. No additional semantic explanation is provided beyond the schema.

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 verb 'generate predictions' and the resource 'fitted estimator', distinguishing it from siblings like 'fit' (which trains) and 'evaluate_estimator' (which evaluates). It lists supported modes, adding specificity.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives such as 'evaluate_estimator' or 'get_fitted_params'. The description does not indicate prerequisites (e.g., estimator must be fitted) or when not to use each mode.

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

query_registryA

Discover sktime estimators, metrics, or capability tags. Common tags you can filter estimators by: 'capability:pred_int' (bool) - prediction intervals, 'capability:multivariate' (bool) - multivariate support, 'handles-missing-data' (bool) - NaN handling, 'scitype:y' (str) - target type ('univariate'/'multivariate'/'both'), 'requires-fh-in-fit' (bool) - needs forecast horizon at fit time. Set task='tag' (or 'tags') to query the full list of capability tags.

ParametersJSON Schema
NameRequiredDescriptionDefault
tagsNoFilter by capability tags, e.g. {'capability:pred_int': true}. Ignored if task='tag'.
taskNoFilter by scitype: forecaster, classifier, regressor, transformer, clusterer, detector, splitter, metric, param_est, aligner, network. Set to 'tag' or 'tags' to retrieve capability tags.
limitNoMaximum results (default: 50). Ignored if task='tag'.
queryNoSearch by name or description (substring, case-insensitive). Can be combined with task and tags filters.
offsetNoSkip this many results for pagination (default: 0). Ignored if task='tag'.

TDQS

A3.9/5.0
Behavior3/5

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

No annotations provided, so description carries behavioral disclosure. It describes query behavior and parameter interactions (e.g., 'Ignored if task='tag''), but does not explicitly state read-only nature or any side effects. Basic disclosure is present.

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?

Description is two sentences, front-loaded with the main action. The second sentence is slightly lengthy but still concise. Every part adds meaningful information.

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?

Given 5 parameters and no output schema, the description covers the main behaviors and special cases (task='tag', ignored params). It could mention output format or pagination details, but is sufficiently complete for a query tool.

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

Parameters4/5

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

Schema coverage is 100%, so description adds value by explaining common tags and the special behavior of task='tag'. It gives examples for the tags parameter, enhancing understanding beyond the schema.

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?

Description clearly states the tool 'Discovers sktime estimators, metrics, or capability tags'. It uses a specific verb and resource, and distinguishes from siblings like describe_component or evaluate_estimator.

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?

Description explains when to use (to discover estimators/metrics/tags) and mentions the special task='tag' to get full tag list. However, it does not explicitly say when not to use or mention alternatives like describe_component for details.

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

release_data_handleB

Release a data handle and free memory

ParametersJSON Schema
NameRequiredDescriptionDefault
data_handleYesData handle to release

TDQS

B3.2/5.0
Behavior3/5

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

No annotations exist, so description carries full burden. It mentions freeing memory, implying destruction, but does not detail consequences (e.g., handle becomes invalid, irreversible). Some transparency but incomplete.

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?

Single sentence, front-loaded with action and resource. Adequately concise, though could be expanded without losing clarity.

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 simple one-parameter tool, description covers the basic purpose. However, lacks side effects and post-conditions, which are needed for an agent to understand full impact.

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 100%, and the parameter description in the schema is identical to what the tool description implies. No additional meaning is added beyond the schema.

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?

Description clearly states the action (release) and resource (data handle). However, it does not differentiate from the sibling tool 'release_handle', which may cause confusion.

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

Usage Guidelines2/5

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

No guidance provided on when to use this tool versus alternatives like 'release_handle'. The description is purely definitional.

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

release_handleA

Release an estimator handle and free it from memory

ParametersJSON Schema
NameRequiredDescriptionDefault
handleYesHandle ID to release

TDQS

A3.9/5.0
Behavior4/5

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

Discloses that the tool frees memory, indicating a destructive action. No annotations provided, so description carries the burden; it adequately alerts the agent to resource deallocation.

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?

Single sentence that is concise, front-loaded, and contains no filler.

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?

Adequate for a simple release operation but does not mention return values, errors, or post-conditions. Could be more complete given no output schema.

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 provides full description of the 'handle' parameter. The tool description adds no additional meaning beyond what the schema already states.

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 action 'Release an estimator handle' and specifies the resource type, distinguishing it from sibling tools like 'release_data_handle'.

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?

Implied usage (free memory after using an estimator handle) but no explicit guidance on when to use vs alternatives or prerequisites.

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

run_commandA

Run an arbitrary CLI/bash command inside the sktime container. Use this to install missing python packages (e.g., 'pip install mlflow') or inspect the file system.

ParametersJSON Schema
NameRequiredDescriptionDefault
commandYesThe bash command to run

TDQS

A4/5.0
Behavior3/5

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

Without annotations, the description carries the burden of disclosing behavioral traits. It correctly implies that commands are arbitrary and can be destructive (e.g., 'rm'), but does not warn about potential side effects or permissions. The mention of 'inside the sktime container' provides some isolation context.

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?

Two concise sentences with no wasted words. The purpose is front-loaded, and the example immediately clarifies the intended use.

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 simple tool with one parameter and no output schema, the description adequately covers purpose and typical usage. It could mention that output is printed to stdout/stderr, but this is not critical for a run-command tool.

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 100% for the only parameter 'command', so the description adds limited value beyond the schema. The example 'pip install mlflow' provides a concrete usage hint, but the schema already defines the parameter as a bash command string.

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 that the tool runs arbitrary CLI/bash commands inside the sktime container, which distinguishes it from sibling tools like call_method that execute Python methods. The verb 'run' and the resource 'CLI/bash command' are specific and unambiguous.

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

Usage Guidelines4/5

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

The description provides explicit use cases: 'install missing python packages' and 'inspect the file system', with a concrete example ('pip install mlflow'). It does not explicitly state when not to use it, but the context implies it is meant for setup and debugging tasks.

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

save_dataA

Persist the target series (y) and any exogenous features (X) behind a data handle to a local file. Combines y and X into one table. Creates parent directories as needed. Supported formats: csv (default, writes index as first column), parquet, json (records orient, ISO dates).

ParametersJSON Schema
NameRequiredDescriptionDefault
pathYesDestination file path. Format is controlled by the format argument, not the file extension.
formatNoOutput format: csv (default), parquet, or json.csv
data_handleYesData handle ID to export (from load_data_source, split_data, or transform_data).

TDQS

A4.4/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 discloses key behaviors: combining y and X into one table, creating parent directories, format details (csv index column, JSON records orient with ISO dates). Missing edge cases like overwrite behavior, but overall informative.

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?

Three sentences, no fluff. Front-loaded with the primary action, then details. Efficient use of space.

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?

Given no output schema, description adequately covers what happens (persist to file). It mentions combining y and X, which is crucial context. Could add error handling or file existence behavior, but sufficient for typical use.

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

Parameters4/5

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

Schema coverage is 100%, but description adds meaning: explains path is destination not controlling format, format controls extension, data_handle must be from specific tools. That adds value beyond the schema definitions.

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 persists target series (y) and exogenous features (X) to a local file, distinguishing it from siblings like save_model or load_data_source. The verb 'persist' is specific and the resource (data behind a handle) is well-defined.

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

Usage Guidelines4/5

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

The description mentions typical context (after load_data_source, split_data, or transform_data) and lists supported formats. It lacks explicit when-not-to-use or alternatives, but the context is clear enough for typical usage.

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

save_modelA

Save an estimator/pipeline handle using sktime MLflow integration

ParametersJSON Schema
NameRequiredDescriptionDefault
pathYesLocal directory or URI where the model will be saved
mlflow_paramsNoOptional extra parameters for sktime.utils.mlflow_sktime.save_model
estimator_handleYesHandle ID of the estimator to save

TDQS

A3.5/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 of behavioral disclosure. It mentions 'using sktime MLflow integration', adding some context about the saving mechanism, but does not disclose potential side effects (e.g., overwriting, permissions, return behavior) or the impact on the estimator handle.

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 description is a single sentence with no redundant text. While efficient, it could be slightly more detailed without sacrificing conciseness, such as hinting at return values or typical invocation context.

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

Completeness2/5

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

The tool has 3 parameters (one nested object) and no output schema. The description is insufficient: it does not explain what the tool returns, what 'sktime MLflow integration' entails, or prerequisites like whether the estimator must be fitted first. Given the lack of annotations, more context is needed for an agent to use it correctly.

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 100%, so baseline is 3. The description does not add meaningful new information beyond the schema descriptions; 'using sktime MLflow integration' loosely matches the mlflow_params parameter description but does not clarify usage or constraints.

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 saves an estimator/pipeline handle using sktime MLflow integration. The verb 'save' and resource 'estimator/pipeline handle' are specific, distinguishing it from siblings like 'load_model' or 'update'.

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 description implies usage for saving model handles, but provides no explicit guidance on when to use this tool over alternatives, nor any exclusion criteria or prerequisites. The sibling tools include 'save_data' and 'load_model', but no comparative context is given.

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

split_dataA

Split a time series data handle into temporal train and test sets, registering both halves as new data handles. Provide exactly one of test_size (fraction in (0, 1)) or fh (forecast horizon). fh may be an integer (hold out that many final steps) or a list of relative horizon indices (hold out max(fh) final steps). Returns train_handle, test_handle, cutoff timestamp, train_size, and n_test.

ParametersJSON Schema
NameRequiredDescriptionDefault
fhNoForecast horizon for the test window. Integer: hold out that many final time steps. List of ints: hold out max(fh) final steps (e.g. fh=[1,5,10] reserves 10 steps). Mutually exclusive with test_size.
test_sizeNoFraction of observations to hold out for the test set, exclusive range (0.0, 1.0). Mutually exclusive with fh.
data_handleYesData handle ID to split (from load_data_source or transform_data).

TDQS

A4.2/5.0
Behavior3/5

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

No annotations are provided, so the description carries full burden. It discloses that new data handles are registered and returns are listed, but does not specify whether the original handle remains intact, safety profile (destructive or read-only), or error handling for invalid inputs.

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 a concise three-sentence paragraph with the core action front-loaded. Every sentence adds meaningful information without redundancy or filler.

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?

Despite no output schema, the description lists all return values (train_handle, test_handle, cutoff, train_size, n_test). It covers parameter constraints comprehensively but could mention error handling for invalid combinations or non-time-series data.

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

Parameters4/5

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

Schema coverage is 100%, baseline 3. The description adds value by explaining fh can be an integer or list of ints with an example (e.g., fh=[1,5,10] reserves 10 steps), and clarifies mutual exclusivity, exceeding what the schema alone provides.

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 splits a time series data handle into temporal train and test sets, registering new handles, which is a specific verb and resource. The purpose is unambiguous and distinct from sibling tools like 'transform_data' or 'fit'.

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

Usage Guidelines4/5

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

The description explicitly states to provide exactly one of test_size or fh, and explains how fh works (integer or list of ints). This provides clear usage guidance, though it lacks comparison with alternative tools or when not to use this tool.

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

transform_dataA

Transform a loaded data handle and return a new handle. action='format' (default): auto-fix common time series issues — infer/set frequency, remove duplicate timestamps, fill index gaps, and forward/backward-fill missing values; returns changes_applied. action='convert': convert y to a different sktime mtype via convert_to() (requires to_mtype, e.g. 'pd.DataFrame', 'pd.Series', 'np.ndarray'). Replaces the legacy format_time_series tool.

ParametersJSON Schema
NameRequiredDescriptionDefault
actionNoTransformation to apply: 'format' (default) or 'convert'.format
to_mtypeNo(convert only, required) Target sktime mtype string, e.g. 'pd.DataFrame', 'pd.Series', 'np.ndarray'.
data_handleYesData handle ID to transform.
fill_missingNo(format only) Forward/backward fill missing values (default: true).
auto_infer_freqNo(format only) Infer and set DatetimeIndex frequency (default: true).
remove_duplicatesNo(format only) Drop duplicate timestamps, keeping first (default: true).

TDQS

A4.3/5.0
Behavior4/5

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

No annotations are provided, so description carries full burden. It discloses that format returns a new handle with changes_applied, and convert requires to_mtype and uses convert_to(). It does not mention side effects on original handle, permissions, or error handling, but the core behavior is well-explained.

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?

Two sentences, front-loaded with purpose, then details actions and deprecation. No redundant information. Every sentence adds value.

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?

No output schema, so description should clarify return values. For format, it mentions 'returns changes_applied', but for convert, it only says 'return a new handle' implicitly. Missing explicit return structure for convert. Also, no mention of how errors are handled or prerequisites. Adequate but with gaps.

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

Parameters4/5

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

Schema description coverage is 100%, so parameters are documented. The description adds context by explaining the two actions and their default behaviors (e.g., fill_missing defaults to true). It also clarifies that to_mtype is required only for convert, which goes beyond schema.

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?

Description clearly states it transforms a data handle into a new handle, with two distinct actions: 'format' for auto-fixing time series issues and 'convert' for changing mtype. It also notes it replaces the legacy format_time_series tool, distinguishing it from sibling tools.

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

Usage Guidelines4/5

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

Description provides clear guidance on when to use each action: format for fixing time series issues, convert for changing mtype. It does not explicitly state when not to use or list alternatives, but the actions are well-defined and the context of sibling tools makes it clear that this is the primary data transformation tool.

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

updateC

Update a fitted estimator with new data.

ParametersJSON Schema
NameRequiredDescriptionDefault
X_handleNoOptional: Handle for X data
y_handleNoOptional: Handle for y data
X_datasetNoOptional: Demo dataset for X data
y_datasetNoOptional: Demo dataset for y data
estimator_handleYesHandle of a fitted estimator

TDQS

C2.9/5.0
Behavior2/5

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

No annotations are provided, so the description must disclose behavior. It only says 'update' but does not state side effects (e.g., whether the estimator is modified in-place), performance implications, or required prior state.

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 description is concise, one sentence with no filler. However, it could benefit from slightly more detail without being verbose.

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

Completeness2/5

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

With 5 parameters and no output schema, the description is too minimal. It doesn't explain the update process, data usage, or return values, leaving significant gaps in understanding.

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 description coverage is 100%, so the schema already documents each parameter. The description adds no further meaning beyond 'with new data', which is generic.

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 clearly states it updates a fitted estimator with new data. The verb 'update' and resource 'fitted estimator' are specific, and it differentiates from sibling tools like 'fit' which would be for initial fitting.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives like 'fit', 'transform_data', or 'predict'. Lacks conditions or prerequisites.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 26 tool updatesv0.1.1
    • First observedcall_method
    • First observedcancel_job
    • First observedcheck_job_status
    • First observeddescribe_component
    • First observedevaluate_estimator
    • First observedexport_code
    • First observedfit
    • First observedget_fitted_params
    • First observedinspect_data
    • First observedinstantiate_estimator
    • First observedlist_available_data
    • First observedlist_handles
    • First observedlist_jobs
    • First observedload_data_source
    • First observedload_model
    • First observedplot_series
    • First observedpredict
    • First observedquery_registry
    • First observedrelease_data_handle
    • First observedrelease_handle
    • First observedrun_command
    • First observedsave_data
    • First observedsave_model
    • First observedsplit_data
    • First observedtransform_data
    • First observedupdate

TDQS

B3.4/5.0

Scored across 26 tools

Disambiguation3/5

Several tools have overlapping purposes, such as 'list_available_data' and 'list_handles' (different but similar names), 'release_data_handle' and 'release_handle', and 'describe_component' and 'query_registry'. The generic 'call_method' tool also overlaps with standard fitting/prediction tools, though it is intended for non-standard cases. Overall, an agent might occasionally confuse tools despite descriptive names.

Naming Consistency4/5

Most tool names follow a consistent 'verb_noun' pattern in snake_case (e.g., 'load_data_source', 'inspect_data', 'split_data'). However, a few short verbs like 'fit', 'predict', and 'update' break this pattern, and there is slight inconsistency with longer names like 'release_data_handle' vs 'release_handle'. Overall, the naming is mostly predictable.

Tool Count3/5

With 26 tools, the server is on the higher end of appropriate size. It covers many aspects of time series forecasting (data handling, modeling, evaluation, plotting, job management), but some tools like 'run_command' and 'call_method' are generic escapes. The count feels slightly heavy but not excessive for the domain.

Completeness4/5

The tool surface covers the core workflow for time series forecasting: data loading, inspection, splitting, transformation, model instantiation, fitting, prediction, updating, evaluation, and saving/loading. Additionally, it supports plotting, code export, registry queries, and async job management. Minor gaps include a lack of explicit deletion for persistent models/data and hyperparameter tuning, but these are not critical.

Maintenance

ActivityActive
ResponsivenessSlow

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/sktime/sktime-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server