Skip to main content
Glama

self_test

Runs read tools for a service, compares response structures to saved baselines, and saves a baseline when missing; set update_baseline to accept current structure.

Instructions

Run the read tools of a service and compare the structure of each answer with the structure saved when the tool was verified. Saves a baseline for tools that have none. Write and file tools are not run. Set update_baseline to accept the current structure as the new baseline.

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": {
      "service": "<service>"
    },
    "name": "self_test"
  }
}

Input Schema

NameRequiredDescriptionDefault
profileNo
serviceYes
update_baselineNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.9.7

TDQS

B3.4/5.0
Behavior4/5

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

Adds real context beyond the annotations: the call executes other tools (openWorld-ish side effects), persists a baseline when none exists, and deliberately excludes write/file tools. The description's 'Saves a baseline' explains why readOnlyHint is false despite the read-only framing, which is exactly the kind of disclosure annotations can't convey alone.

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?

Four short sentences, front-loaded with the core action, followed by scope and the baseline override. No filler; the first sentence is slightly dense but every sentence carries a distinct fact.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a meta-tool with no output schema, the definition covers intent, scope, and the baseline write, but leaves two gaps: what `profile` selects and, critically, what the comparison returns (pass/fail, diff detail, per-tool results) an agent needs to interpret the outcome.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description carries the full burden, and it only explains one of three parameters ('Set update_baseline to accept the current structure as the new baseline'). The required `service` and especially `profile` are left entirely undefined in both schema and description.

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: run a service's read tools and compare each answer's structure against a saved baseline, plus save baselines where none exist. The verb+resource is concrete and unlike anything the siblings (list_services, forget_session, logout) do, though it never names or contrasts those siblings directly.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is implied rather than stated: this is a verification/regression-check tool, and the sentence 'Write and file tools are not run' scopes it to read paths. It also implies the update_baseline flow, but there is no explicit 'use this when…' or guidance on when to self-test vs. just calling the tools directly.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Deploy Server

Other Tools