Skip to main content
Glama
Garmin MCP Server

Garmin MCP Server

by nitinmms

get_activity

Read-only

Fetch a single Garmin Connect activity by ID to review its summary, metadata, measurements, and split summaries for focused workout analysis.

Instructions

Get one activity's summary, metadata, measurements and split summaries.

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": {
      "activity_id": "<activity_id>"
    },
    "name": "get_activity"
  }
}

Input Schema

NameRequiredDescriptionDefault
activity_idYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

B3/5.0
Behavior3/5

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

Annotations already declare readOnlyHint and openWorldHint, so the safety profile is covered. The description adds useful content disclosure — what data categories come back (summary, metadata, measurements, split summaries) — which matters because there is no output schema. It does not mention error behavior for an unknown activity_id.

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?

One short sentence with zero padding and the resource front-loaded. The comma-list of data categories is efficient, though it borders on being a bare enumeration rather than explanatory prose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple one-parameter read tool with annotations and no output schema, the description covers what is returned at a high level. It falls short on parameter provenance and error/failure expectations, which are the remaining unknowns an agent needs.

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

Parameters2/5

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

Schema description coverage is 0% for the single activity_id parameter, so the description must compensate and does not. It never says the ID is an integer, where to obtain it (search_activities), or what happens if it is invalid.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb ('Get') and resource ('one activity') plus the payload scope (summary, metadata, measurements, split summaries). 'One activity' implicitly separates it from the list-oriented search_activities sibling, though it never names that sibling explicitly.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No when-to-use guidance, no prerequisite that activity_id must come from search_activities, and no mention of when to prefer siblings like get_activity_workouts. The only routing signal is the word 'one', which the agent must infer.

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