Skip to main content
Glama

Permit inspections

get_permit_inspections
Read-onlyIdempotent

List inspections linked to a permit UUID. Future scheduled inspections are excluded by default unless result=SCHEDULED or upcoming opts in. An empty list means no linked inspection is held. Coverage varies by source and place; an empty result does not establish that no record exists. Up to 25 results per call. total_capped marks a lower bound; total_unknown means the total is unknown. Pagination guidance is in _notes.

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": {
      "permit_id": "<permit_id>"
    },
    "name": "get_permit_inspections"
  }
}

Input Schema

NameRequiredDescriptionDefault
pageNoPage number, 1-based (default 1)
startNoInstead of page: 1-based position of the first result to return, e.g. start=24 continues after result 23 (as named in `_notes`)
resultNo
per_pageNoResults per page (default 25, max 25)
upcomingNoFuture-dated (still scheduled) inspections: exclude (the default, except with result=SCHEDULED), include, or only (soonest first).
permit_idYes
summariesNoexclude

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already establish read-only, idempotent, non-destructive, closed-world behavior, and the description adds substantive context on top: the default exclusion of future inspections, the meaning of an empty list, source/place coverage variance, a hard cap of 25 per call, and the semantics of total_capped (lower bound) and total_unknown. It stops short of explaining the pagination mechanics itself, deferring to _notes instead.

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?

The description is front-loaded with scope, then the default-exclusion rule, then caveats, which is the right order for an agent deciding whether to call it. Sentences are dense but each carries a distinct fact; the empty-list sentences are slightly repetitive but do distinguish 'no linked inspection held' from 'record may exist elsewhere.'

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 seven-parameter read tool with no output schema, the description covers the critical behavioral traps: silent exclusion of future inspections, the cap, and the two total_* markers that appear in responses. The remaining gaps are the undocumented summaries parameter and the pagination detail pushed into _notes, which an agent must fetch separately.

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 57%, and the description compensates for part of the gap by explaining the interaction between result=SCHEDULED and the upcoming default, plus the 25-result ceiling. It says nothing about the summaries parameter (exclude/include/only) or the meaning of the result enum values, leaving those to the bare 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 first sentence gives a specific verb and resource ('List inspections linked to a permit UUID'), which cleanly separates it from a cross-cutting search tool. It never names a sibling like search_inspections, so an agent must infer the boundary from the 'linked to a permit UUID' scoping rather than being told explicitly.

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?

The description gives real conditional guidance for one branch of use: future inspections are excluded by default 'unless result=SCHEDULED or upcoming opts in.' However, it offers no when-to-use-this-versus-another-tool guidance and no prerequisites, so the routing decision is only implied.

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