Skip to main content
Glama
Fino-wind

Vaultbeat MCP Server

Water intake

get_water_intake
Read-onlyIdempotent

Decrypts recent daily water intake locally and returns per-day liters plus average daily intake. Filter by owner for individual records, with coverage details to show data gaps.

Instructions

Decrypt recent daily water intake locally and compute the average.

Returns one entry per day (newest first) with refill count, container volume, and derived intake in liters, plus average_daily_intake_liters over the window. Use owner prefix to filter by person β€” take it from vaultbeat_status (owner_user_id_prefix is the paired user; server 0.7.1+), or vaultbeat_doctor for every owner present in the data. Each record carries owner_user_id to identify whose data it is.

Carries a coverage block: quote coverage.days_covered (distinct days, not the row count) and coverage.span_days beside any average or trend, and read coverage.window_satisfied: false as a shorter history than asked, not as a missing kind. πŸ”΄ Before saying how far back someone's data goes, read coverage.more_available: true means this server can decrypt days OLDER than first_day that your limit left behind β€” re-read with a larger limit, or quote coverage.oldest_available as the real start of their history. Never report a limit-shaped window as the extent of their data.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
freshNo
limitNo
ownerNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.8.1

TDQS

A4.3/5.0
Behavior5/5

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

The annotations already mark this as read-only and idempotent, and the description adds substantial behavioral context: local decryption, per-day vs row semantics, the `coverage` block, the meaning of `window_satisfied: false`, and the `more_available` / `oldest_available` caveat. This goes well beyond what annotations provide.

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 dense but front-loaded with the core purpose, followed by return format, owner filtering, and coverage caveats. Each section earns its place, though the coverage warning is repeated and could be tightened slightly.

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 three-parameter tool with no schema-level descriptions and an output schema available, the description covers output shape, owner sourcing, and the critical coverage edge cases. The only meaningful gap is the undocumented `fresh` parameter, which keeps it from being fully complete.

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 0%, so the description must compensate. It explains `owner` thoroughly and `limit` well enough to understand it controls the window and that larger values access older days. However, `fresh` is never mentioned, leaving one of three parameters undocumented.

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 a specific verb and resource: 'Decrypt recent daily water intake locally and compute the average.' It also states the return shape (per-day entries, refill count, container volume, derived liters, and average) which makes the tool's purpose unmistakable and clearly distinct from sibling metric getters.

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 gives clear, actionable context: this is the tool for recent daily water intake and averages, and it explains how to obtain the `owner` prefix from `vaultbeat_status` or `vaultbeat_doctor`. It does not explicitly name alternatives or exclusions, but the unique resource and filtering guidance provide enough direction for an agent to select it correctly.

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