Skip to main content
Glama

Switch a lane on or off

gtm_set_source
Idempotent

Switch a lane on or off — the toggle on the Sources list. Switching ON a lane that has nothing to run on (no companies, no intent/anchors/posts, no role) is refused: configure it first. An empty ICP is not a refusal — people_search may go on ahead of the ICP and comes back blocked: icp_empty until gtm_update_icp fills it. Switching OFF never fails and creates nothing. The lane then runs (or stops running) on the daily cadence; nothing runs inside this call.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
onYes
keyYesWhich lane. people_search: LinkedIn people search compiled from the play's ICP (+ optional free-text keywords). | competitor_posts: Post discovery: Otto searches LinkedIn daily for posts matching an intent, judges each, and takes who engaged. | job_offers: Hiring signal: companies posting a role → the buyers inside them. | account_list: Companies you name (names, websites or LinkedIn page URLs) → Otto finds your buyers inside each. | post_engagers: RETIRED — folded into competitor_posts.postUrls. Still runs on rows that exist; do not configure it on new plays.
playIdYesThe play, from gtm_list_plays.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.6/5.0
Behavior5/5

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

Annotations already declare idempotentHint=true and destructiveHint=false. The description adds valuable context beyond that: switching ON is refused if the lane has no config, switching OFF never fails and creates nothing, and it describes the specific 'blocked: icp_empty' edge case for people_search. It also clarifies that the lane runs on a daily cadence but nothing runs during this call. This fully discloses behavioral traits without contradicting annotations.

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?

The description is a single paragraph of 4 sentences, each carrying specific, useful information. The core action is front-loaded, followed by edge cases and a clarifying note about cadence. No fluff or repetition — every sentence earns its place.

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?

For a mutation tool with no output schema, the description covers the essential edge cases: refusal on empty config, blocked state for people_search, non-destructive OFF, and that no execution happens inside the call. It does not mention the response format or return value, but that is often implicit and the tool's behavior is well defined. A brief note on what the call returns would push this to a 5.

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 67% (key and playId have descriptions; 'on' has none). The description compensates by explaining that 'on' toggles the lane and by elaborating on the key param's behavior, especially for people_search (running ahead of an empty ICP and returning blocked). It adds meaning beyond the schema's static enum descriptions, though the playId could use a bit more context. Overall, it bridges the gap effectively.

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 clear verb and resource: 'Switch a lane on or off' — the toggle on the Sources list. It distinguishes itself from siblings like gtm_run_source by explicitly noting that nothing runs inside this call, and it clarifies the scope (lane activation vs. immediate execution). This leaves no ambiguity about what the tool does.

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?

The description explains when to use this tool: to change the active state of a lane for the daily cadence. It does not explicitly name alternatives (e.g., gtm_run_source for immediate execution), but it implies that by stating 'nothing runs inside this call.' It also provides clear preconditions for switching ON and explains that switching OFF never fails, guiding the agent on expected behavior. A short explicit pointer to siblings would make it a 5.

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.