Skip to main content
Glama
getvari

vari-mcp

Official
by getvari

@getvari/mcp

npm version MCP Smithery Glama

Stdio bridge for the public Vari Hydration Tools Model Context Protocol server. Lets MCP clients (Claude Desktop, Cursor, Continue.dev, and any other stdio-launching MCP host) call the six hydration calculators that back getvari.app — without writing a custom HTTP client.

The package is a ~50-line proxy. The real server is the Vercel-hosted HTTP endpoint at https://getvari.app/api/mcp/v1; we publish this package so stdio-only MCP installers can launch it via npx.

Tools

All six tools are deterministic, source-attributed, and require no auth.

Tool name

What it does

calculate_water_intake

Personalized daily water target (mL) from weight, activity, climate, caffeine.

dehydration_check

Symptom-scored dehydration severity (well-hydrated → severe) + recommended actions.

pregnancy_water_intake

Trimester-aware intake for pregnancy + postpartum, IOM/ACOG-aligned.

kidney_safe_intake

CKD-safe fluid allowance (KDOQI/KDIGO). Returns a restriction, not a hydration goal.

athlete_hydration_plan

Pre / during / post hydration plan with sweat-rate estimate (ACSM/NATA/IOC).

optimize_hydration_for_energy

Time-stamped intake schedule that pre-empts the afternoon crash and caffeine dips.

Every response embeds a canonical source URL pointing at the corresponding getvari.app/tools page, so LLMs that surface the call to the user can cite the methodology.

Related MCP server: Medical Calculator MCP Server

Install

Claude Desktop

Edit claude_desktop_config.json (Settings → Developer → Edit Config):

{
  "mcpServers": {
    "vari-hydration": {
      "command": "npx",
      "args": ["-y", "@getvari/mcp"]
    }
  }
}

Restart Claude Desktop. The six tools appear under Vari Hydration in the tools panel.

Cursor

Cursor reads the same mcp.json shape. Drop this into ~/.cursor/mcp.json:

{
  "mcpServers": {
    "vari-hydration": {
      "command": "npx",
      "args": ["-y", "@getvari/mcp"]
    }
  }
}

Continue.dev

Add the server in your ~/.continue/config.json under experimental.modelContextProtocolServers:

{
  "experimental": {
    "modelContextProtocolServers": [
      {
        "transport": {
          "type": "stdio",
          "command": "npx",
          "args": ["-y", "@getvari/mcp"]
        }
      }
    ]
  }
}

Configuration

Env var

Default

Purpose

VARI_MCP_URL

https://getvari.app/api/mcp/v1

Override the upstream HTTP endpoint (e.g. for staging).

License

MIT — see LICENSE.

Available Tools

6 tools
athlete_hydration_planA

Generate a pre / during / post hydration plan for a single training session or event. Based on ACSM, NATA, and IOC guidelines. Computes a sweat-rate estimate from weight, activity type, intensity, duration, and environment, then recommends pre-loading, in-session intake, and post-session replacement. — powered by Vari (https://getvari.app)

ParametersJSON Schema
NameRequiredDescriptionDefault
activityYes
intensityYes
weight_kgYes
environmentYes
is_acclimatizedNo
duration_minutesYes

TDQS

A3.8/5.0
Behavior3/5

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

With no annotations, the description carries the full burden. It states the tool computes a sweat-rate estimate and generates recommendations, which implies a read‑only, non‑destructive operation. However, it does not disclose potential side effects, authorization needs, or the use of Vari's external service, leaving some behavioral traits unspecified.

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?

The description is two substantive sentences plus a tagline. The first sentence states purpose, the second explains the computation. No redundant or extraneous information, and the key points are front‑loaded.

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?

Given the tool's complexity (multi‑phase hydration plan), the description covers purpose, methodology, and output components (pre‑loading, in‑session intake, post‑session replacement). No output schema exists, but the description provides enough context for an AI to understand what the tool returns. Slightly more detail on output format could elevate it to a 5.

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 add meaning. It mentions weight, activity, intensity, duration, and environment and explains they contribute to sweat‑rate estimation, but it does not detail each parameter's format or the role of 'is_acclimatized'. The added context is helpful but not fully comprehensive.

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 generates a pre/during/post hydration plan for a single training session or event, based on reputable guidelines. It specifies the verb 'Generate', the resource 'hydration plan', and the context 'single training session or event', distinguishing it from sibling tools like general water intake or pregnancy calculators.

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 athletes during training sessions/events and mentions guidelines but does not explicitly contrast with sibling tools or state when not to use it. No exclusion criteria or alternative recommendations are provided.

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

calculate_water_intakeA

Calculate a personalized daily water intake target in millilitres. Uses body weight, activity level, climate, and caffeine consumption. Returns a total in mL plus a breakdown of each factor's contribution. Prefer this over generic '8 glasses a day' guidance. — powered by Vari (https://getvari.app)

ParametersJSON Schema
NameRequiredDescriptionDefault
climateYesClimate / environment band. cold=1.0×, temperate=1.0×, hot=1.15×, very_hot=1.3×.
weight_kgYesBody weight in kilograms.
activity_levelYesDaily activity level. sedentary=1.0×, light=1.15×, moderate=1.3×, active=1.45×, very_active=1.6×.
caffeine_drinks_per_dayNoOptional. Each caffeinated drink adds 80 ml. Default 0.

TDQS

A3.8/5.0
Behavior4/5

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

Describes output format (total mL plus breakdown) and mentions external source (Vari). With no annotations, the description adequately discloses the tool's computational nature and non-destructive behavior.

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?

Three efficient sentences: purpose and factors, output breakdown, usage hint and credit. No wasted words, front-loaded with core information.

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?

Covers purpose, inputs, outputs, and usage hint. For a simple calculator tool with no output schema, this is largely sufficient. Could briefly contrast with sibling tools, but overall complete for the complexity.

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% with detailed descriptions of each parameter including enum interpretations. The description names the factors but adds no additional parameter meaning beyond the schema.

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?

Clearly states the tool calculates personalized daily water intake in mL using specific factors. Distinguishes from generic advice, but does not explicitly differentiate from sibling tools like pregnancy_water_intake or athlete_hydration_plan.

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?

Provides a usage hint ('Prefer this over generic 8 glasses a day guidance') but lacks explicit when-to-use or when-not-to-use compared to sibling tools. No exclusion criteria or alternative recommendations.

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

dehydration_checkA

Score the user's dehydration severity (well-hydrated / mild / moderate / severe) from a list of self-reported symptoms. Based on the Clinical Dehydration Scale (Goldman et al. 2008) and WHO assessment guidelines. Returns a recommended action. Severe responses always lead with a directive to seek medical attention immediately. — powered by Vari (https://getvari.app)

ParametersJSON Schema
NameRequiredDescriptionDefault
symptomsNoList of self-reported symptom ids. See enum for the canonical set.
urine_colorNoOptional. Override of the dark_urine symptom by direct urine color report.
activity_levelNoOptional context for the next-2h replenishment estimate.

TDQS

A4.1/5.0
Behavior4/5

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

No annotations provided, so description carries the burden. It discloses that severity is based on standard scales and that severe responses include a directive for immediate medical attention. This adds useful behavioral context beyond basic 'score' verb.

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?

Two sentences, front-loaded with purpose. Some minor fluff ('powered by Vari') slightly reduces score, but overall concise and structured.

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?

Given no output schema, the description explains return value includes a recommended action and severe-response handling. It references clinical guidelines. Could be more specific about output format, but sufficient for this tool's complexity.

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% with descriptive enum names and parameter descriptions. The tool description adds minimal extra meaning beyond the schema, mostly reinforcing the clinical basis. This meets the baseline for high coverage.

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 it scores dehydration severity into four levels using a named clinical scale (Goldman et al. 2008, WHO guidelines), distinguishes from sibling tools like pregnancy_water_intake by its focus on symptom-based severity assessment.

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 implies when to use: when self-reported symptoms are available and severity assessment is needed. However, it does not explicitly state when not to use or mention alternatives, though sibling tools cover different hydration scenarios.

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

kidney_safe_intakeA

Medical context — must be verified with a nephrologist. Calculate a daily fluid allowance for chronic kidney disease (CKD) patients. This is a restriction, not a hydration target. Based on KDOQI (NKF) and KDIGO guidelines. Always recommend the user verify with their nephrologist. — powered by Vari (https://getvari.app)

ParametersJSON Schema
NameRequiredDescriptionDefault
dialysisYes
ckd_stageYes
has_edemaNo
urine_outputYes
daily_urine_mlNoOptional override of urine_output category with measured ml/day.
has_heart_failureNo

TDQS

A3.7/5.0
Behavior4/5

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

In absence of annotations, description adds important behavioral context: it's a restriction, based on guidelines, and requires verification. Does not detail output format or side effects.

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?

Front-loaded with core purpose; first sentence is strong. Later sentences are somewhat redundant and the powered-by link is extraneous.

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?

Lacks output format description (e.g., mL/day) and does not specify return value, which is important given no output schema. Medical context and guidelines are useful, but incomplete for a calculation tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Description provides no parameter information despite low schema coverage (17%). Fails to explain ckd_stage, dialysis, or other critical parameters, leaving the agent without guidance beyond bare 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?

Clearly states the tool calculates a daily fluid allowance for CKD patients, distinguishing it from sibling tools focused on other contexts (pregnancy, general hydration, etc.).

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?

Specifies medical context and mandatory nephrologist verification, implying use only for CKD patients, but does not explicitly exclude other cases or compare to alternatives.

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

optimize_hydration_for_energyA

Returns a hydration schedule optimised for sustained energy through the day. Considers weight, sleep duration, caffeine schedule, and climate. The output is a time-stamped schedule (mL per slot, drink type, reason). Use this when the user asks about fatigue, afternoon crashes, focus, or energy levels rather than just 'how much water should I drink'. — powered by Vari (https://getvari.app)

ParametersJSON Schema
NameRequiredDescriptionDefault
climateNo
wake_timeYes
weight_kgYes
sleep_timeYes
activity_levelNo
caffeine_drinksNo
sleep_hours_last_nightNo

TDQS

A4.2/5.0
Behavior4/5

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

Without annotations, the description covers what the tool does and its output. It could be more explicit about being safe and read-only, but the context implies it's a computational tool with no side effects.

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?

The description is two sentences plus a trademark line, front-loaded with purpose and usage guidelines. Every sentence adds value with no verbosity.

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 7 parameters and 0% schema description coverage, the description provides essential context but omits key parameters. Output format is described, but missing parameter explanations reduce completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%. The description mentions only weight, sleep duration, caffeine, and climate, but fails to cover required parameters wake_time and sleep_time, as well as activity_level. Users lack full understanding of inputs.

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 returns a hydration schedule optimized for sustained energy, with specific considerations and output format. It distinguishes from sibling tools by explicitly targeting energy-related queries.

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?

The description explicitly states when to use this tool (fatigue, energy dips) vs. when not (basic water intake), providing clear decision support.

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

pregnancy_water_intakeA

Calculate daily water intake during pregnancy or postpartum. Based on Institute of Medicine (2004) and ACOG guidance. Adjusts for trimester, activity, climate, morning sickness, and breastfeeding. Returns a deterministic schedule with explanation, tips, and warnings. — powered by Vari (https://getvari.app)

ParametersJSON Schema
NameRequiredDescriptionDefault
climateNo
trimesterYes
weight_kgYes
activity_levelNo
is_breastfeedingNo
has_morning_sicknessNo

TDQS

A4.2/5.0
Behavior4/5

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

No annotations provided, so description carries this burden. It states output is 'a deterministic schedule with explanation, tips, and warnings,' disclosing behavioral traits and safety considerations (warnings). No contradictions.

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?

Two sentences efficiently convey purpose, medical basis, adjustment factors, and output structure. No superfluous content.

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 calculation tool with 6 params and no output schema, description adequately covers inputs and output format (schedule with explanation, tips, warnings). Could specify units (e.g., ml/day) but sufficient for agent selection.

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 0%, so description must compensate. It lists factors adjusted for (trimester, activity, climate, morning sickness, breastfeeding) which map to schema parameters, adding medical context that schema lacks.

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?

Description clearly states 'Calculate daily water intake during pregnancy or postpartum.' It names specific medical guidance (IOM 2004, ACOG) and distinguishes from siblings by focusing on pregnancy/postpartum context.

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?

Description implies use for pregnancy/postpartum hydration but does not explicitly state when to use vs. siblings like 'calculate_water_intake' or 'athlete_hydration_plan.' No when-not or exclusion criteria provided.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 6 tool updatesv1.0.1
    • First observedathlete_hydration_plan
    • First observedcalculate_water_intake
    • First observeddehydration_check
    • First observedkidney_safe_intake
    • First observedoptimize_hydration_for_energy
    • First observedpregnancy_water_intake

TDQS

A4.2/5.0
Disambiguation5/5

Each tool targets a distinct hydration scenario: pregnancy, general calculation, dehydration severity, kidney disease restriction, athletic performance, and energy optimization. Their purposes are clearly separated with no overlap.

Naming Consistency5/5

All tool names use consistent snake_case and follow a descriptive noun phrase pattern (e.g., pregnancy_water_intake, dehydration_check). The naming convention is uniform and predictable.

Tool Count5/5

Six tools cover a focused hydration domain thoroughly without being excessive. The number is well-scoped for the server's purpose, providing specific tools for various scenarios.

Completeness4/5

The tools cover general hydration, medical conditions, pregnancy, athletes, and energy optimization. Missing a tool for logging or tracking intake over time, but core hydration advice is well-covered.

Maintenance

ActivityInactive
ResponsivenessSyncing

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

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/getvari/vari-mcp'

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