Skip to main content
Glama

Client: add a ledger line for a change

expectation_add

The client's expectations ledger: every change and the result it should bring, checked on a date with a pass/fail rule. Adds a line for a change you made (or one the agency made by hand) the moment you make it: what changed, the number it should move, what you expect and by when. Page changes and Google Ads changes add their lines automatically. A failure line (rule <= or >= with on_miss) for 'if leads are under 0.5 a week on 11/23, investigate' is its own line even on the same number. For work on one page, measure that page (gsc_page, or gsc_query with path): without a path a search's position is the site's best page, and the result warns when a line already passes today. For something that must stay true, use rule every_days to re-check on a cycle. The nightly check fills the before-number from history (28 days before the change) and records met / partial / missed with the number (up to 28 days before the check); manual lines need a verdict by hand (expectation_verdict).

Input Schema

NameRequiredDescriptionDefault
ruleYespass/fail. On a Google position, <= 3 means top 3 and up means a better rank.
changeYeswhat changed, specifically ("Home title now leads with NW Structures")
clientYesClient name from list_clients
metricYesThe number the change should move
on_missNowhat to do if it is missed
baselineNothe number before, when you read it yourself; otherwise it is read from history
check_onNoYYYY-MM-DD; default from change_kind
expectedNothe expected result in words, with a rough size
rollbackNohow to undo the change
change_kindNosets the default check window (title 21 days, page 42, ads 21, indexing 14, speed 7, tracking 2, other 28)
confoundersNowhat else could move the number (season, learning period, low volume)
baseline_noteNowhere and when the baseline came from

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A3.9/5.0
Behavior4/5

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

The annotations already declare that this is a non-readonly, non-idempotent, open-world write, but the description adds real behavioral context: the nightly check backfills the baseline from 28 days of history and records met/partial/missed. It also notes that the tool warns when a line already passes today, that failure lines are separate lines, and that manual-kind lines require a verdict by hand. It still does not say what a call returns (line id, warnings) or what happens on a duplicate line.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The content is information-dense with little padding, but it is delivered as one long comma-and-semicolon-chained paragraph that is hard to scan. The enumeration of metric and rule behaviors would be far more usable as short bulleted clauses. Length is defensible for a 12-parameter nested tool, but the structure is not.

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 12-parameter tool with a nested schema and no output schema, the description covers the full lifecycle: creation, nightly evaluation, baseline sourcing, and the manual verdict path. Gaps remain around return values, duplicate handling, and permission/connection requirements, but nothing essential to a correct call 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 coverage is 100%, so the baseline is 3, but the description adds non-obvious interactions that the schema only hints at: a rule with op <=/>= plus on_miss forms its own failure line even on the same number, and every_days turns a line into a recurring check. It also clarifies that omitting path makes a search measure the site's best page. It leaves baseline vs. baseline_note interplay mostly to the schema.

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?

The description names a concrete verb and resource ("adds a line" to "the client's expectations ledger") and explains what a line contains: a change, the number it should move, an expectation, and a deadline. It separates itself from automatic ledger entries for page and Google Ads changes and from expectation_verdict for manual verdicts. The only weakness is that the first sentence defines the ledger rather than the action, so the verb arrives slightly late.

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 says when to call it ("the moment you make it") and when not to (page changes and Google Ads changes add lines automatically), and it routes manual lines to expectation_verdict. It also gives selection guidance for metric kinds (gsc_page vs gsc_query with path) and for recurring checks (rule every_days). It lacks explicit prerequisites, such as whether the client must already exist or be connected.

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.