Skip to main content
Glama

VirWave Breathe

Start a matched session

start_session

Matches a VirWave session the way the app's entry flow does: how clearly a feeling is coming through, what they'd like instead, and how long they have. Invoke it when someone says how they are feeling, or what they would like to feel instead, and wants a breathing session that fits. The session moves through stages (arrive, the matched core, close), each with its own shape, at one steady breath pace, and ends at the chosen length. In a client that supports MCP Apps (Claude on the web and in the desktop app, for example), the session appears in the chat itself. The result also carries a link to the same session as a web page, for any client that cannot draw it there. Either way the session waits for Begin, and the result says why it was picked and which stages it has. Every matched session is hold-free: breathe in, a longer breath out.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
goalYesWhat they'd like instead. grounded (Grounded: Back in the body, contact restored.) calm (Calm: Slower, softer, less pressure.) clear (Clear: One thing at a time, in focus.) unstuck (Unstuck: The loop loosens and moves on.) settled (Settled: Steady enough to rest.)
feelingYesHow the feeling is coming through: how clearly, not which feeling it is. The options describe how clear the signal is, and none of them names an emotion. flat (Flat / no signal: Numb, far off, nothing registers.) faint (Faint trace: Something is there but not describable.) nameable (Nameable: A word fits, with hedging.) directional (Directional: It points at something specific.) insistent (Insistent: Hard to set aside, keeps returning.) saturating (Saturating: Too much at once, loud and fast.)
minutesYesHow long they have: 2, 5, 10, or 15 minutes. Longer sessions move through more stages, not just more time.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.6/5.0
Behavior5/5

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

Annotations are all false, providing minimal behavioral info. The description compensates richly: the session waits for Begin, the result explains why it was picked and which stages it has, it may appear in chat or via a web link, the session moves through named stages, and the breathing pattern is hold-free. No contradiction with annotations.

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 longer than average, but every sentence carries useful information, especially given the lack of an output schema. It is front-loaded with purpose and trigger, then covers behavior and result. It could be tightened slightly but is not wasteful.

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?

For a 3-parameter tool with no output schema, the description is thorough: it explains when to invoke, what happens during the session, what the result contains, client-specific rendering, and the breathing style. There are no obvious missing pieces an agent would need 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% with detailed enum descriptions, so baseline is 3. The description adds a meaningful nuance for minutes: 'Longer sessions move through more stages, not just more time,' which goes beyond the schema. It also restates the three inputs coherently without adding conflicting syntax.

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 is specific: it states the verb 'Matches', the resource 'VirWave session', and exactly how the matching works (feeling clarity, desired alternative, length). It also distinguishes this from siblings by targeting the app's entry flow, which is clearly separate from simple breathing (breathe) or pattern lookup (list_patterns).

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?

Provides an explicit trigger: 'Invoke it when someone says how they are feeling, or what they would like to feel instead, and wants a breathing session that fits.' This is clear and actionable context, though it does not explicitly name sibling tools or state when not to use them.

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.