Skip to main content
Glama

timesfm-mcp

CI PyPI Docs

MCP server for Google's TimesFM 2.5 — give any AI agent zero-config time-series forecasting.

Plug TimesFM 2.5, Google's 200M-parameter foundation model for time-series, directly into Claude Code, Claude Desktop, Cursor, or any MCP client. The agent calls forecast, gets point predictions + uncertainty bands + a trend/seasonality summary, and writes the explanation itself.

No ML configuration. No data pipelines. One line to run.

Forecast chart: 24-month MRR history with 6-month point forecast and 90% confidence band

Chart generated with the statistical baseline. See "Enable TimesFM 2.5" below to use the full neural model.

Quickstart (30 seconds)

uvx timesfm-mcp        # runs over stdio for local agents

Add to your Claude Desktop / Claude Code / Cursor config:

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

Then ask your agent: "Forecast the next 6 months from this revenue data and tell me what to expect."

Related MCP server: Nixtla MCP Server

Enable TimesFM 2.5 (optional)

System requirements: ≥ 16 GB RAM · ~800 MB disk (model weights, downloaded on first use) · PyTorch

Not sure? Skip this — uvx timesfm-mcp already works great on any machine.

pip install "timesfm-mcp[timesfm]"

The TimesFM 2.5 source is bundled inside this package (Apache-2.0, Google LLC) — no separate git clone needed. The server auto-detects it and upgrades automatically; no config change required.

Two backends, zero config

Backend

When active

System requirement

Install

Statistical baseline

Always — default

Any machine

uvx timesfm-mcp

TimesFM 2.5 (Google)

When installed

≥ 16 GB RAM + ~800 MB disk

pip install "timesfm-mcp[timesfm]"

Start with the baseline. It runs on any machine, installs in seconds, and delivers production-ready forecasts. Upgrade to TimesFM only if you need the neural model's extra accuracy and have the RAM for it.

Tools

Tool

What it does

forecast

Forecast a single series with optional uncertainty bands

list_backends

Report which engine is active (timesfm / baseline)

backtest

Hold out the last N points — compare TimesFM vs baseline MAE/sMAPE

Supported clients

Works with any MCP-compatible agent. Verified configs in Client Setup:

Client

Config

Claude Desktop

claude_desktop_config.json

Claude Code

claude mcp add forecast -- uvx timesfm-mcp

GitHub Copilot (VS Code)

.vscode/mcp.json

Cursor

~/.cursor/mcp.json

Windsurf

~/.codeium/windsurf/mcp_config.json

Cline (VS Code)

Cline MCP settings panel

Continue.dev

~/.continue/config.json

Zed

~/.config/zed/settings.json

Documentation

Full docs in the docs/ folder:

Migrating from forecast-mcp

timesfm-mcp is the renamed continuation of forecast-mcp. Update your install:

pip install timesfm-mcp      # replaces: pip install forecast-mcp
uvx timesfm-mcp              # replaces: uvx forecast-mcp

Update your agent config: change "args": ["forecast-mcp"]"args": ["timesfm-mcp"].

License

Apache-2.0

Available Tools

3 tools
backtestB

Hold out the last N points and compare TimesFM vs baseline performance.

ParametersJSON Schema
NameRequiredDescriptionDefault
valuesYesHistorical observations (at least holdout + 3 points).
holdoutNoNumber of final points to hold out for testing.

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.4/5.0
Behavior2/5

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

Without annotations, the description must disclose behavioral traits. It mentions comparing performance but does not specify metrics, side effects, data sufficiency requirements, or output format. The existence of an output schema may fill some gaps, but the description itself is insufficient.

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 that concisely conveys the core action. It is front-loaded and efficient, though a bit more detail could be added without harming brevity.

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 and the presence of an output schema, the description is adequate but lacks details such as what baseline is used or what performance metrics are computed. This might leave some ambiguity.

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?

With 100% schema coverage, the schema already documents both parameters adequately. The description adds context about the comparison (TimesFM vs baseline) but does not enhance parameter meaning 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 tool performs a backtest by holding out the last N points and comparing TimesFM performance against a baseline. This distinguishes it from sibling tools 'forecast' (making predictions) and 'list_backends' (enumerating backends).

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 the tool is for model evaluation via holdout validation, but it does not explicitly state when to use it instead of alternatives like 'forecast' or list conditions where it is not appropriate.

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

forecastC

Forecast a single numeric time series.

ParametersJSON Schema
NameRequiredDescriptionDefault
valuesYesThe historical observations in chronological order (oldest first).
horizonNoHow many future steps to predict.
quantilesNoSymmetric coverage levels for uncertainty bands, e.g. [0.9]. Omit for point forecasts only.
season_lengthNoKnown seasonal period (e.g. 7 for daily-with-weekly, 12 for monthly-with-yearly). Leave null to auto-detect.

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.6/5.0
Behavior1/5

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

With no annotations, the description must disclose behavioral traits. It only states 'Forecast a single numeric time series', omitting details on side effects, permissions, error conditions, or return behavior. The agent is left with no insight into the operation's implications.

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

Conciseness3/5

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

The description is extremely concise (6 words), but conciseness comes at the cost of missing critical details. It lacks structure (e.g., sections) and could benefit from a slightly longer explanation of expected inputs and outputs.

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 that an output schema exists, the description could offload some detail, but it still fails to mention that it returns forecasts, how many, or any assumptions. The tool is simple, but more context is needed for reliable use.

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 baseline is 3. The description adds no additional meaning beyond what the schema already provides for each parameter. It simply repeats the concept of a time series forecast.

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 action (forecast) and resource (single numeric time series). It is concise and unambiguous, but lacks differentiation from sibling tools like 'backtest' and 'list_backends', though the purpose is still apparent.

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. There is no mention of prerequisites, context, or exclusions, leaving the agent without direction for appropriate invocation.

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

list_backendsA

Report which forecasting engine is active and why.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.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 carries full burden for behavioral disclosure. It only reveals that the tool reports engine status ('which' and 'why'), but does not disclose potential side effects, permissions needed, cost, or response details beyond purpose.

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, concise sentence that is front-loaded and contains no extraneous words. Every part earns its place.

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 tool is simple (no params, has output schema), and the description adequately states its purpose. However, it could be more precise about what 'why' entails (e.g., context or reason for engine choice). The presence of an output schema reduces the need to describe return values.

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?

With zero parameters and schema coverage 100%, the baseline is 4. The description adds meaning by clarifying that the tool requires no input and reports both the active engine and the reason, effectively compensating for the lack of 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 uses the specific verb 'report' and clearly identifies the resource ('forecasting engine'). It explains what the tool does (active engine and why), which distinguishes it from siblings 'backtest' and 'forecast' that perform different actions.

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 explicit guidance on when to use versus when not to use. The usage context is implied by the sibling tool names (backtest, forecast), but the description does not state conditions or alternatives, resulting in only implied usage.

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

TDQS

B3.4/5.0
Disambiguation5/5

Each tool has a distinct, non-overlapping purpose: backtesting, forecasting, and engine info. No ambiguity between them.

Naming Consistency4/5

All tools use imperative verbs, but 'backtest' and 'forecast' are single words while 'list_backends' uses an underscore. Slight inconsistency in formatting.

Tool Count5/5

Three tools is well-scoped for a focused forecasting server. Each tool is essential and contributes to the core workflow.

Completeness4/5

Covers the main actions: forecast, backtest, and engine info. Minor gaps like listing available models or settings, but acceptable for this domain.

Maintenance

ActivityInactive
ResponsivenessNo issues

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

  • A
    license
    A
    quality
    B
    maintenance
    Deterministic time-series statistics for AI agents. This MCP server gives any LLM agent unit-tested statistical tools — anomaly detection, changepoint detection, seasonal decomposition, stationarity/trend tests, data-quality audits, baseline forecasts — with schema-validated structured output and no arbitrary code execution.
    17
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables time-series analysis and forecasting through a structured tool catalogue, including data loading, quality repair, diagnostics, and forecasting with ARIMA, exponential smoothing, Chronos-2, Toto 2.0, and AutoML.
    1
    MIT

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/ramdhavepreetam/timesfm-mcp'

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