Skip to main content
Glama

Get Data Updates

get_data_updates
Read-only

Summarize data processed into a Fulcra account during a time range to identify new records since a previous check, then query the changed types.

Instructions

Summarize the data that arrived in the user's account during a period of time.

The time range filters on when records were processed/synced into Fulcra, NOT on the records' own timestamps — e.g. last night's sleep records typically arrive this morning. Use this to find out what new data exists since a previous check, then query the changed types with the appropriate tools.

Input Schema

NameRequiredDescriptionDefault
end_timeYesThe end of the time range (exclusive). Must include tz (ISO8601).
start_timeYesThe start of the time range (inclusive). Must include tz (ISO8601).
fulcra_useridNoCheck another Fulcra user's account instead. Only what they share is reported; poll to notice their agent's writes.
include_sharedNoAlso check every user who shares with this one. Adds a "shared" map keyed by their user ID (peers with no changes are omitted) and "peers_checked". At most 20 peers per call; any more are listed in "peers_skipped" to poll via fulcra_userid.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed4 schema fields changedv1.18.7
    • removedInput schema / properties / fulcra_userid / anyOf
      Removed value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • removedInput schema / properties / fulcra_userid / default
      Removed value: -null
    • addedInput schema / properties / fulcra_userid / type
      Added value: +"string"
    • changedOutput schema / (root)
      Previous value: -{
      -  "properties": {
      -    "result": {
      -      "type": "string"
      -    }
      -  },
      -  "required": [
      -    "result"
      -  ],
      -  "type": "object",
      -  "x-fastmcp-wrap-result": true
      -}New value: +null
  2. Addedv1.1.0

TDQS

A4.6/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=false, so safety is covered. The description adds the genuinely non-obvious behavioral fact that the window filters on processing/sync time rather than record timestamps, with a concrete sleep-record example. It stops short of describing the shape of the summary returned (counts vs. per-type breakdown), which is the one remaining gap for a no-output-schema tool.

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?

Purpose first, then the semantic caveat, then the intended follow-up action. Two short paragraphs, no filler, and the most error-prone detail (time-range meaning) is given its own emphasized block.

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 discovery tool with four fully documented parameters and no output schema, the description covers when to call it, what the parameters mean semantically, and what to do next. Only the return structure is left implicit, which is a minor omission since the include_shared field documents the added keys.

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 3 would be the baseline, but the description adds meaning the schema cannot: start_time/end_time mean ingestion time, not event time. That reframing is the single most important parameter semantic for correct invocation and it is stated clearly.

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?

States a specific verb and resource: "Summarize the data that arrived in the user's account during a period of time." It also positions itself against the fetch siblings by naming the follow-up step ("query the changed types with the appropriate tools"), so an agent can distinguish this discovery tool from get_records/get_time_series without inspecting schemas.

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

Usage Guidelines5/5

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

Explicitly prescribes the workflow: use this to find out what new data exists since a previous check, then query the changed types with the appropriate tools. It also sets a clear boundary by declaring what the time range does NOT mean, which is exactly the mistake an agent would otherwise make.

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