Skip to main content
Glama
turnnoblindeye

Wellness Project MCP

update_recovery_session

Idempotent

Fix errors in an existing recovery session entry—update duration, quality, category, notes, or other fields. Locate the log by ID or date and submit only the fields to change.

Instructions

Update one or more fields on an existing recovery session log entry. Use when the user wants to correct or change something already logged (e.g. wrong duration, quality rating, category, or notes). Only send the fields that need to change; omit all others.

SELECTOR — pass id if known, or session_date (+ optional session_category to narrow) to resolve it. Exactly one of id or session_date required. If it matches more than one session, the call errors with candidate IDs to retry with.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
idNoRecovery session ID. Alternative to session_date.
dateNoUpdated date (YYYY-MM-DD). Optional.
notesNoUpdated notes. Optional.
qualityNoUpdated quality 1-5. Optional.
skippedNoUpdated skipped status. Optional.
categoryNoUpdated category. Optional.
strategy_idNoUpdated strategy ID. Optional — set null to unlink.
session_dateNoAlternative to id: the date (YYYY-MM-DD) the session was logged on. Optionally narrow with session_category.
strategy_nameNoUpdated practice name. Optional.
duration_minutesNoUpdated duration in minutes. Optional.
session_categoryNoOptional, narrows session_date to one category when more than one session shares that date. Ignored when id is given.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYesHuman-readable result text returned by the tool.

Schema Changelog

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

  1. First observedv1.2.1

TDQS

A4.8/5.0
Behavior5/5

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

Beyond the annotations (readOnly=false, idempotent=true, destructive=false), the description reveals selector resolution behavior: exactly one of id or session_date is needed, session_category can narrow the match, and ambiguity errors with candidate IDs for retry. This is valuable behavioral context an agent would otherwise infer only from failures.

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 tightly scoped paragraphs: the first gives the use case and patch style, the second the selector contract. It is front-loaded with the actionable verb and includes an example list without bloat. Every sentence contributes.

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 an 11-parameter update tool with an output schema available, the description covers the purpose, patch semantics, selector requirements, disambiguation, and error behavior. The only small omission is an explicit 'do not pass both id and session_date' rule, but the 'or' selector language makes that sufficiently clear.

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

Parameters5/5

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

Although the schema already documents all 11 parameters (100% coverage), the description adds critical relational semantics: the exact-one-of id/session_date selector rule, optional narrowing by session_category, that session_category is ignored when id is supplied, and the patch-style 'omit unchanged fields' convention. These relationships are absent from the individual parameter descriptions.

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 opens with a specific action and object: 'Update one or more fields on an existing recovery session log entry.' It distinguishes from related siblings like log_recovery_session and delete_recovery_session by emphasizing 'existing' and 'already logged,' and lists concrete fields (duration, quality, category, notes) that make the scope unmistakable.

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 explicitly states when to use the tool: when the user wants to correct or change something already logged, and it gives updating guidance ('Only send the fields that need to change'). It does not name alternatives such as log_recovery_session for new entries, but the 'existing'/'already logged' framing and examples supply clear context.

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

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/turnnoblindeye/wellness-project-mcp'

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