Skip to main content
Glama

get_tracking_plan

Read-only

Read a tracking plan: every planned analytics event with its description, placement hint, typed properties, and status (planned → implemented → received → verified, or mismatch), plus what to do next. Statuses are brought up to date with the events received so far. Pass planId when you were given one; omit it for the project's latest open plan. Read the whole plan before changing any code.

Input Schema

NameRequiredDescriptionDefault
planIdNoPlan id. Omit to get the project's most recent open plan.
projectIdYesThe project (application) id to scope this call to. Use list_projects to discover valid ids.
environmentYesThe environment name to scope this call to (e.g. 'production'). Use list_projects to discover the names available to this token.

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 declare readOnlyHint=true and openWorldHint=false, so safety is covered. The description then adds genuinely non-obvious behavioral context: statuses are refreshed against events received so far (data freshness semantics), the possible status values including mismatch, and that the response carries "what to do next." It stops short of discussing pagination or size limits for large plans.

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?

Three sentences, each doing distinct work: what is returned, how status is maintained, how to choose planId, and the workflow prerequisite. The return payload is front-loaded before the parameter guidance, so an agent can decide to call the tool before parsing the details.

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 a read-only, three-parameter tool with no output schema, the description covers the response shape in enough detail that an agent knows what it will get back and how to act on it. Nothing needed to invoke it correctly is missing.

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 coverage is 100%, so all three parameters are already documented in the schema, including the alternate meaning of an omitted planId. The description's planId sentence largely restates the schema text, adding only the mild framing "when you were given one," and says nothing extra about projectId or environment. Baseline 3 is appropriate when the schema carries the load.

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 ("Read a tracking plan") and then enumerates exactly what is returned: events, descriptions, placement hints, typed properties, and lifecycle status. Because the sibling set contains create_tracking_plan and update_tracking_plan_items, the read-oriented framing makes the distinction between this tool and its write siblings 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 gives concrete when-to guidance for the optional parameter ("Pass planId when you were given one; omit it for the project's latest open plan") and a workflow rule ("Read the whole plan before changing any code"). What it does not do is explicitly route the agent to update_tracking_plan_items or create_tracking_plan as the follow-on alternatives; the exclusion is implied rather than stated.

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.

Resources