Skip to main content
Glama

Log workout session

log_session

Log a completed workout with exercises, sets, cardio, and wearable metrics. Save the full session, auto-create exercise entries, and get a stored record with optional coaching hints.

Instructions

Log a completed workout session (exercises → sets, cardio, wearable metrics) at once. Returns the stored session including any auto-created exercise catalog entries. The response may carry a coach_hint: a server note to gently offer coaching (intake or a program) after confirming the log — offer once, never push. If the conversation is about PLANNING training (not just logging), call get_coaching_context first. Ask how long the session took (or estimate from set count) and set duration_sec — omitting it renders as an empty duration in the app's history and session views.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
sessionYes

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.2.1

TDQS

A4.7/5.0
Behavior5/5

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

The description reveals significant side effects and response traits beyond the sparse annotations: it auto-creates exercise catalog entries, returns a coach_hint with explicit handling guidance ('offer once, never push'), and exposes the rendering impact of missing duration. Since annotations only indicate readOnlyHint:false and destructiveHint:false, the description carries the full burden and does so well. 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.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Four sentences, each earning its place: purpose, return value, coach_hint behavior, routing to alternative, and a critical parameter instruction plus consequence. Information is front-loaded and no filler or repetition is present.

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?

Given a complex nested session object, an output schema, and sparse annotations, the description covers the key operational aspects an agent needs to call this correctly: what to include, what returns, how to handle coach_hint, when to route elsewhere, and a crucial parameter prerequisite. The output schema handles return-value details, so the description is complete without over-explaining.

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 adds a high-level structural map ('exercises → sets, cardio, wearable metrics') and specifically instructs setting duration_sec. However, it leaves the many nested fields (status, tags, metrics subfields, etc.) to the schema's names and types, which only partially suffice. It provides some added meaning but not a thorough semantic layer.

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 verb and resource: 'Log a completed workout session' followed by a clear enumeration of contents ('exercises → sets, cardio, wearable metrics'). It distinguishes itself from siblings by explicit routing to get_coaching_context for planning, clarifying this tool is for logging completed sessions. The return behavior (stored session, auto-created catalog entries) further sharpens the picture.

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 a different tool: 'If the conversation is about PLANNING training (not just logging), call get_coaching_context first.' It also provides a concrete pre-call instruction: ask for session duration or estimate it from set count, and warns about the consequence of omitting duration_sec. This gives an agent clear direction on both invocation and preparation.

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