Skip to main content
Glama

Set a coaching observation disposition

set_coaching_disposition
Destructive

Record what the person decided about an observation itself. 'snoozed' goes quiet until a date. 'dismissed' goes quiet for 90 days and returns quoting their reason back. 'not_our_way' means this is genuinely not how this team works and the check never raises it for that seat again. 'acted_on' means they handled it. Use this whenever somebody says a suggestion is not relevant -- it is how Ollie learns to stop.

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": {
      "finding_id": "<finding_id>",
      "state": "<state>"
    },
    "name": "set_coaching_disposition"
  }
}

Input Schema

NameRequiredDescriptionDefault
stateYes
reasonNoRequired for 'dismissed' and 'not_our_way'
finding_idYes
snoozed_untilNoISO date; required for 'snoozed'

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.1/5.0
Behavior5/5

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

Annotations already flag this as destructive and non-read-only; the description goes further by disclosing the exact consequences: snooze lasts until a date, dismissal silences for 90 days and echoes the reason back, and 'not_our_way' permanently suppresses the check for that seat. That is precisely the effect information an agent needs before writing.

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 the core action, then one compact clause per state, ending with the motivating use case. Dense but almost every clause carries a distinct state's semantics; only the closing sentence is arguably promotional rather than operational.

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?

No output schema exists and the annotations carry the safety profile, so the description's job is to explain consequences and triggers, which it largely does. Gaps remain: the 'open' state and the meaning of finding_id are undocumented anywhere, which matters for a state-mutating tool.

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?

With 50% schema description coverage, the description partially compensates by explaining four of the five enum states in behavioral terms rather than restating the enum. It omits the 'open' state entirely and says nothing about finding_id or the content expectations for reason, so half the parameters remain unelaborated.

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 and resource: recording a decision about an observation, plus a concrete effect per state. However, it never distinguishes itself from the coaching siblings approve_coaching_action and decline_coaching_action, which an agent could plausibly confuse with this decision-recording tool.

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?

'Use this whenever somebody says a suggestion is not relevant' gives a clear trigger condition, and each state is described with the situation it applies to. No explicit when-not guidance or named alternatives (approve_coaching_action / decline_coaching_action) are offered, so the agent must infer boundaries.

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