Skip to main content
Glama

Review before saying done

ihumane_review
Read-only

Call this BEFORE you tell your human the work is done. Pass the kind of work. Each module's own review: 'ux', 'graphics', 'front-end', 'code-review', 'qa'. 'ui': render it and look at it, six review lenses (free: the user and accessibility lenses; Pro adds designer, writer, product manager and engineer), and the browser checks. 'code': run it, the verify rules and the tidy check. 'product': walk it through as the person it's for. 'writing': the copy review (Pro). 'other' (any other task): check it against what they asked, then the report rules. Every kind ends with how to report honestly.

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "ihumane_review"
  }
}

Input Schema

NameRequiredDescriptionDefault
kindNoThe kind of work you're about to call done. A page with new code: 'ui' (it covers the screen; also run the tidy check). A flow across screens: 'ux'. Images: 'graphics'. Front-end code: 'front-end'. Reviewing someone's change: 'code-review'. Testing before release: 'qa'.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • changedInput schema / properties / kind / description
      Previous value: -"The kind of work you're about to call done. A page with new code: 'ui' (it covers the screen; also run the tidy check)."New value: +"The kind of work you're about to call done. A page with new code: 'ui' (it covers the screen; also run the tidy check). A flow across screens: 'ux'. Images: 'graphics'. Front-end code: 'front-end'. Reviewing someone's change: 'code-review'. Testing before release: 'qa'."
    • changedInput schema / properties / kind / enum
      Previous value: -[
      -  "ui",
      -  "code",
      -  "product",
      -  "writing",
      -  "other"
      -]New value: +[
      +  "ui",
      +  "ux",
      +  "graphics",
      +  "front-end",
      +  "code-review",
      +  "qa",
      +  "code",
      +  "product",
      +  "writing",
      +  "other"
      +]
  2. Changed1 schema field changed
    • addedInput schema / properties / kind
      Added value: +{
      +  "description": "The kind of work you're about to call done. A page with new code: 'ui' (it covers the screen; also run the tidy check).",
      +  "enum": [
      +    "ui",
      +    "code",
      +    "product",
      +    "writing",
      +    "other"
      +  ],
      +  "type": "string"
      +}
  3. First observed

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and openWorldHint=false, but the description adds real behavioural detail the annotations do not: per-kind side effects (render the UI, run the code, execute browser checks), free-vs-Pro tier gating on specific lenses, and the fact that every kind ends with reporting rules. There is mild tension between 'run it' and the read-only hint, though it reads as inspection rather than mutation, so it is not a contradiction.

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 most important instruction is front-loaded, which is good, but the remainder is a dense semicolon-and-parenthesis run-on that mixes kind semantics, tier gating and per-kind steps without clear ordering. Sentences do carry information, yet the compression into jargon makes it harder to parse than a short structured list would be.

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 one-parameter, annotation-covered tool with no output schema, the description covers the trigger, the per-kind meaning, tier restrictions and the rough shape of the result ('how to report honestly'). It stops short of saying whether the tool returns a pass/fail gate, a checklist, or a report, which is the main remaining ambiguity an agent would face before calling.

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?

Schema coverage is 100% and the enum already documents which kind to pick for each scenario, so the baseline is 3. The description does add complementary meaning — what each kind actually performs (render and lenses for 'ui', run and tidy check for 'code', persona walkthrough for 'product') — but several kinds are grouped opaquely under 'Each module's own review' with no explanation of what that means.

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 states a specific action and timing: 'Call this BEFORE you tell your human the work is done,' making it a pre-completion review gate, and it enumerates the review kinds it dispatches. What it never does is name a sibling (e.g. ihumane_module, ihumane_get_check) or explain why this gate differs from those, so an agent still has to infer the division of labour from the names alone.

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?

Timing guidance is explicit and prominent ('BEFORE you tell your human the work is done'), and the body gives concrete selection heuristics per kind: a page with new code is 'ui', a flow across screens is 'ux', images are 'graphics'. There is no when-not-to-use guidance and no relation to the sibling tools, so the agent gets a clear trigger but not a full routing map.

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