Skip to main content
Glama

Apuntar ejercicio

log_exercise
Idempotent

Apunta una actividad física (p. ej. «he corrido 8 km en 45 minutos»). Si ya terminó, con duration_min; si solo dice que acaba de terminar, sin time, y el inicio se calcula como ahora menos la duración. Sin duración queda en curso (se termina luego con finish_exercise). Una actividad terminada necesita duration_min. La distancia u otros detalles van en details.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "kind": "<kind>"
    },
    "name": "log_exercise"
  }
}

Input Schema

NameRequiredDescriptionDefault
kindYesType of activity; use 'other' with `name` if none fits.
nameNoName of the activity when kind is 'other' (e.g. 'climbing').
timeNoWhen it STARTED. When it happened, in the user's local time: 'HH:MM' (today), 'YYYY-MM-DDTHH:MM', or ISO 8601 with offset. Omit it for right now. Never in the future.
detailsNoFree details such as distance ('8 km').
intensityNo
duration_minNoDuration in minutes, if finished.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already establish non-read-only, non-destructive, idempotent, closed-world behavior, so the description's job is to add state semantics, which it does: an entry without duration_min becomes an in-progress session and a finished activity requires duration_min. It also discloses the derived-start-time rule (now minus duration) that the annotations cannot express. It does not say what the tool returns or how an in-progress entry is identified for the later finish call.

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 core action and the state rules are front-loaded in the first two sentences, and the pointer to `details` for distance is a useful closing touch. The middle clause about "solo dice que acaba de terminar" is compressed to the point of being hard to parse on a first read.

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?

With six parameters, no output schema and a stateful create/finish workflow, the description covers what an agent most needs: the finished vs. in-progress distinction and the start-time derivation. Remaining gaps are modest, chiefly the undescribed `intensity` parameter and the absence of any hint about what the call returns or how to reference the entry afterward.

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 high (83%), so the schema already documents kind, name, time, details and duration_min. The description still adds meaning beyond it by tying duration_min to the finished/in-progress state and by explaining that omitting `time` triggers a computed start time. The `intensity` parameter carries no description in either the schema or the description, which is the one uncovered gap.

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 plus resource ("Apunta una actividad física") and gives a concrete example utterance, so an agent can immediately tell this is the exercise-logging tool. It also names finish_exercise as the tool for closing an open session, which separates it from at least one sibling that could otherwise look similar.

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 real conditional guidance: use duration_min when the activity is already finished, omit `time` when the user just says they finished, and leave duration out for a still-running session that is closed later with finish_exercise. The phrasing of the "just finished vs. explicit start time" rule is somewhat tangled, so the agent has to read carefully, but the when-to-use logic is present rather than implied.

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.