Skip to main content
Glama

search_exercises

Finds an exercise's exact app name in EGYM's catalogue by matching all query words, with optional category filtering and locally cached results.

Instructions

Searches EGYM's exercise catalogue (~1200 exercises) for the exact name an exercise has in the app.

All words in query must appear in the local or English name (e.g. 'dumbbell bench', 'pullover', 'face pull'). Optionally filter by category, e.g. FREE_WEIGHTS, BODY_WEIGHT_BASED, WEIGHT_MACHINE_BASED, EGYM_MACHINE, MOBILITY, STRETCHING, ROWING. appName is the name in the app. The catalogue is cached locally; refresh=True fetches it again from EGYM (only for missing exercises).

Input Schema

NameRequiredDescriptionDefault
limitNo
queryYes
refreshNo
categoryNo

Output Schema

NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.3/5.0
Behavior4/5

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

With no annotations, the description carries the burden and does so well: it discloses that the catalogue is cached locally, that `refresh=True` re-fetches from EGYM, and that refresh only applies to missing exercises. It omits any note on auth needs, rate limits, or result ordering, which keeps it from a 5.

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 purpose and matching rule are front-loaded and every sentence carries information. The closing line about `appName`, presumably an output field, is slightly dangling and reads as if it belongs elsewhere, which costs a point.

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?

An output schema exists, so return values need no explanation, and the caching/refresh semantics cover the most surprising behavior. The one gap is `limit` — its default of 15 and effect on result truncation are never mentioned, which matters for an ~1200-item catalogue.

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 the description must compensate, and it explains three of four parameters: `query` (all words must match local or English name), `category` (with concrete example values), and `refresh` (re-fetch scope). Only `limit` is left entirely undocumented.

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 states a specific verb and resource ('Searches EGYM's exercise catalogue') plus scale (~1200 exercises) and the outcome ('the exact name an exercise has in the app'). No sibling tool does name lookup, so the agent can place it immediately.

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 clear context for use — find the app name for an exercise, with optional category narrowing — and the AND-matching rule tells the agent how to phrase a query. It stops short of explicit when-not-to-use guidance or naming alternatives, but no sibling overlaps this function.

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