Skip to main content
Glama

Get timeseries data

vital_get_timeseries
Read-only

Get timeseries data points for a user and resource over a date range. Supported resources: heartrate, hrv, glucose, blood_pressure, blood_oxygen, steps, respiratory_rate, body_weight, body_fat, distance, water, vo2_max, stress_level, mindfulness_minutes, calories_active, calories_basal, floors_climbed, caffeine, cholesterol. Vital API: GET /v2/timeseries/{user_id}/{resource}.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
user_idYesThe Vital user id (UUID).
end_dateNoEnd date yyyy-mm-dd (inclusive). Defaults to today upstream.
providerNoFilter to a single provider slug (e.g. oura, fitbit).
resourceYesTimeseries resource to fetch.
start_dateYesStart date yyyy-mm-dd (inclusive, required).

Schema Changelog

Changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. First observed

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already provide readOnlyHint=true, so the safety profile is established. The description adds the exact API endpoint (GET /v2/timeseries/{user_id}/{resource}), confirming a read-only HTTP GET and showing how parameters map to the URL path. It does not disclose pagination or rate limits, but the read-only behavior is clearly transparent.

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 purpose is front-loaded in the first sentence, and the API endpoint is useful context. The long list of supported resources is somewhat redundant with the schema enum, but it is still scannable and helps an agent quickly see the tool's scope without opening the schema.

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 read-only timeseries fetch tool, the description plus fully documented schema covers the essential invocation details: resource, user, date range, optional provider filter, and endpoint. No output schema exists, so the lack of a detailed return format is a minor gap, but it does not prevent correct selection or 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?

Schema coverage is 100%, so every parameter already has a clear type, format, and description. The description reinforces that user_id and resource identify the timeseries and that start/end date form a date range, but it does not add significant semantics beyond the schema. This matches the baseline for fully documented 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 states exactly what the tool does: it gets timeseries data points for a user and resource over a date range. It goes beyond a generic 'get data' by listing 19 concrete supported resources, which clearly separates it from siblings like vital_get_activity or vital_get_sleep.

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 clearly frames when to use this tool: when timeseries data points are needed for a user and resource in a date range. It does not explicitly name sibling alternatives or say when not to use it, but the resource list and 'timeseries data points' wording imply the appropriate context.

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.

TDQS

A3.6/5.0
Disambiguation5/5

Each tool maps to a unique resource/action pairing—users, health summaries, timeseries, providers, and lab orders—so an agent can reliably distinguish them. Even similarly named getters are separated by the data domain (activity/body/sleep/workouts) and description.

Naming Consistency4/5

All tools use the vital_ prefix and snake_case verb_noun forms, which is highly predictable. Minor inconsistency: get is used for both single-resource fetches and list-returning calls (get_workouts, get_user_connected_providers) while list is reserved for global collections.

Tool Count4/5

21 tools is on the heavier side, but the breadth of the Vital API—users, providers, many health summary types, timeseries, and lab tests/orders—justifies most of them. It is slightly over a typical focused MCP server but not bloated or redundant.

Completeness3/5

The read side is strong: users, providers, summaries, timeseries, lab tests, and results are all covered. However, there are no update/delete user operations and no way to create a lab-test order, so core lifecycle/workflow gaps remain.