Skip to main content
Glama

update_funnel_query

DestructiveIdempotent

Replace the definition of a saved funnel query (and optionally rename it). Read it with get_query first, change only what the user asked for, and pass the complete spec back without its queryType — it replaces the saved definition on every dashboard that shows the query. Run the new spec with run_funnel_query first so you know it works. Saved when this runs; explain it in reason. Load the manage-dashboards, funnel-queries skills (load_skill("manage-dashboards"), load_skill("funnel-queries")) first.

Input Schema

NameRequiredDescriptionDefault
nameNo
specYesThe complete new funnel definition. Replaces the saved one entirely — start from get_query's spec (without its queryType) and change only what the user asked for.
reasonYesWhy you are making this change, in one sentence the user will read on the approval card.
queryIdYesThe saved funnel query to change.
projectIdYesThe project (application) id to scope this call to. Use list_projects to discover valid ids.
descriptionNoNew description. Pass one when the new spec makes the saved description wrong, or when the query has none. Omit to keep the current one.
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.6/5.0
Behavior4/5

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

Annotations already declare destructiveHint=true and idempotentHint=true, but the description adds the blast radius the annotations cannot convey: the write replaces the saved definition on every dashboard that shows the query, and the result is persisted immediately. It also implicitly handles the queryType stripping requirement, which is a real behavioral gotcha.

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?

Front-loaded with purpose, then the safe-edit workflow in a logical order. The skill-loading sentence is a slight appendage and the get_query/run_funnel_query guidance is dense, but no sentence is filler for a destructive tool.

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 destructive, deeply nested mutation with no output schema, the description covers the blast radius, the read-modify-write workflow, the verification step, and the required reasoning field. Nothing essential to calling it safely is missing.

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 description coverage is 86%, so the schema does most of the work, but the description adds two useful bits beyond it: that name is an optional rename rather than a required field, and that spec must be the complete definition stripped of queryType. The reason parameter's purpose is only restated, not extended.

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?

Opens with a specific verb+resource: "Replace the definition of a saved funnel query (and optionally rename it)." That cleanly separates it from create_funnel_query, run_funnel_query, and update_query without the agent needing to open any schema.

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?

Gives an explicit ordering of sibling calls: read with get_query first, change only what the user asked for, verify with run_funnel_query before saving, and load the two named skills beforehand. Alternatives and preconditions are stated rather than inferred.

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