Skip to main content
Glama

Ephemeris Time-Series Forecasting

Plot a saved forecast

plot_forecast
Read-onlyIdempotent

Render a complete ephemeris.forecast v1 artifact object as PNG (default inline preview) or SVG (embedded resource to save). No inference or forecast charge; hosted processing receives the artifact over the network. Example: {artifact: , format: png}. Requires returned q0.5; never invents a median. Observed history, forecast boundary, median and nominal quantile bands are labeled. Default history view is most recent max(24, 2*horizon) points, capped by available history; history: all shows all. Dates only when supported by recorded metadata, otherwise sampling steps. Bands do not establish calibrated coverage; missing/crossed points are omitted and counted. Maximum 1 MiB input. Select series_index/variate_index for multiple results. Fix argument/shape errors without rerunning inference. User-supplied labels can be corrected in a COPY of artifact context offline; no new forecast needed. Client decides preview/download UI. URNs identify attached bytes, not hosted URLs; no filesystem access, URL fetching or persistent storage.

Input Schema

NameRequiredDescriptionDefault
lowerNoExisting lower quantile. Supply together with upper. Default pairs complementary available levels.
upperNoExisting upper quantile, greater than lower. Supply together with lower.
formatNopng returns an inline image preview; svg returns an embedded text resource to save as .svg. Neither creates a hosted download URL.png
historyNoObserved points to show: default min(available, max(24, 2*horizon)). all shows full history. View changes never change the artifact or inference.
artifactYesComplete ephemeris.forecast schema_version 1 JSON object returned by forecast or saved by Ephemeris CLI. Pass the object, not a filename, URL, resource URI, request ID, or bearer token. Maximum 1 MiB UTF-8 JSON. Contains submitted history; send only data you are authorized to process on this hosted server.
series_indexNoZero-based series index; required when the artifact has multiple series, otherwise 0.
variate_indexNoZero-based variate index; required for multivariate results, otherwise 0.

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.5/5.0
Behavior5/5

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

Annotations already declare readOnly/idempotent/non-destructive/closed-world, and the description adds substantial beyond-annotation behavior: 1 MiB input cap, hosted processing receiving the artifact over the network, no filesystem/URL fetching/persistent storage, URNs identifying attached bytes rather than URLs, no hosted download URL, and the guarantee that it never invents a median (requires returned q0.5).

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 purpose is front-loaded and no sentence is pure filler, but it is a dense semicolon-chained paragraph mixing plotting behavior, data-policy caveats, and client-UI notes. Splitting edge cases (omitted/crossed points, band coverage) from the core contract would improve scanability.

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

Completeness5/5

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

With an output schema present, return-format explanation is unnecessary, and the description still covers limits (1 MiB), edge cases (crossed/missing points omitted and counted), labeling behavior, history defaulting, and privacy constraints. An agent has everything needed to call it correctly.

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 the baseline is 3, but the description adds real meaning: series_index/variate_index are for multiple or multivariate results, q0.5 must be present and is never synthesized, and 'history: all' vs the max(24, 2*horizon) default changes only the view. This goes beyond restating 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 first sentence gives a precise verb+resource: render a complete ephemeris.forecast v1 artifact as PNG (inline) or SVG (embedded resource). It is immediately distinguishable from the sibling 'forecast' (which produces a forecast) and 'describe_forecast' (which describes one).

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?

It establishes when the tool applies: plotting an already-saved artifact, with no inference or forecast charge, and notes that argument/shape errors can be fixed without rerunning inference, and that label corrections happen offline on a COPY. It never explicitly routes the agent between this and 'describe_forecast'/'forecast', so it stops short of full when-not guidance.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.