Skip to main content
Glama

CleanApp

Preview a problem report

cleanapp_prepare_report
Read-onlyIdempotent

Use this when the user wants to report an observed physical or digital problem: a pothole, dumped waste, unsafe infrastructure, accessibility barrier, pollution, software bug, suspected scam or service failure. Prepare a factual preview from user-provided details. No submission occurs. Ask for the affected place or product if missing; never infer precise location. Do not use for general discussion or emergency dispatch.

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": {
      "domain": "<domain>",
      "problem_type": "<problem_type>",
      "title": "<title>",
      "description": "<description>"
    },
    "name": "cleanapp_prepare_report"
  }
}

Input Schema

NameRequiredDescriptionDefault
titleYesA factual short title, without personal identifiers.
domainYesPhysical place/infrastructure/environment issue, or digital product/service issue.
languageNoLanguage of the report; preserve the user’s language.en
latitudeNoOptional coordinates explicitly supplied or approved by the user.
longitudeNo
descriptionYesWhat the user observed, when and impact. Do not include secrets, private contact details or unrelated chat.
problem_typeYesThe observed problem category.
location_textNoUser-provided place, street, landmark, or area for a physical issue. Do not infer user location.
product_or_siteNoName of the affected product, app, website, or service for a digital issue.

Output Schema

NameRequiredDescriptionDefault
viewYes
messageYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare readOnlyHint and destructiveHint=false, and the description reinforces this with 'No submission occurs', which is the crucial behavioral fact for an agent deciding whether a user commitment is required. It also adds data-sourcing constraints ('never infer precise location', 'ask for the affected place or product if missing') that annotations cannot express. It stops short of describing the returned preview or any auth/rate-limit context.

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?

Three compact sentences, front-loaded with the trigger condition, followed by the behavioral constraint and the exclusion. The problem-type enumeration is slightly long, but it doubles as scope definition and earns its space.

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

Completeness5/5

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

With an output schema present and rich annotations, the description only needs to cover scope, non-mutation, and required inputs — all of which it does. For a 9-parameter preview tool with high schema coverage, nothing an agent needs in order to call it correctly is missing.

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 description coverage is 89%, so fields like title, domain, description and location_text are already well documented, including the 'do not infer user location' note on location_text. The description's contribution ('ask for the affected place or product if missing') is genuine interaction guidance but largely restates what the schema already says, so baseline 3 applies.

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 names a specific operation ('prepare a factual preview') on a specific artifact (a problem report) and enumerates the covered problem classes (pothole, dumped waste, accessibility barrier, software bug, scam). The line 'No submission occurs' separates it from a submit sibling without the agent needing to open the other schema.

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 gives an explicit trigger ('when the user wants to report an observed physical or digital problem') plus explicit exclusions ('Do not use for general discussion or emergency dispatch'). What it lacks is a named alternative for the actual submission step — the agent must infer that cleanapp_submit_report is the follow-up when the user wants to file.

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