Skip to main content
Glama

io_list_maintenance_requests

Read-only

List iOffice maintenance requests, filtered by status, space, or building, to find and review facility work orders.

Instructions

List iOffice maintenance requests. Supports filtering by status, space, or building.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
viewNoResponse shape: "compact" (default) drops fields the response already carries elsewhere; "full" returns every field this server understands. compact strips image/avatar URLs from the response; "full" returns iOffice's payload untouched. No field projection: this server has no verified record of which iOffice fields matter, and inventing one would risk dropping a field a caller needs.
limitNoMax results (default 50, max 100)
searchNoFilter by title or description
statusNoFilter by status (e.g. pending, accepted, started, completed, archived)
orderByNoProperty to sort by (default: id)
spaceIdNoFilter by space/room ID
startAtNoPagination offset (default 0)
buildingIdNoFilter by building ID
orderByTypeNoSort direction (default: asc)
assignedUserIdNoFilter by assigned technician user ID

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed15 schema fields changedv3.2.6
    • addedInput schema / properties / assignedUserId / exclusiveMinimum
      Added value: +0
    • addedInput schema / properties / assignedUserId / maximum
      Added value: +9007199254740991
    • changedInput schema / properties / assignedUserId / type
      Previous value: -"number"New value: +"integer"
    • addedInput schema / properties / buildingId / exclusiveMinimum
      Added value: +0
    • addedInput schema / properties / buildingId / maximum
      Added value: +9007199254740991
    • changedInput schema / properties / buildingId / type
      Previous value: -"number"New value: +"integer"
    • addedInput schema / properties / limit / maximum
      Added value: +100
    • addedInput schema / properties / limit / minimum
      Added value: +1
    • changedInput schema / properties / limit / type
      Previous value: -"number"New value: +"integer"
    • addedInput schema / properties / spaceId / exclusiveMinimum
      Added value: +0
    • addedInput schema / properties / spaceId / maximum
      Added value: +9007199254740991
    • changedInput schema / properties / spaceId / type
      Previous value: -"number"New value: +"integer"
    • addedInput schema / properties / startAt / maximum
      Added value: +9007199254740991
    • addedInput schema / properties / startAt / minimum
      Added value: +0
    • changedInput schema / properties / startAt / type
      Previous value: -"number"New value: +"integer"
  2. First observedv3.2.1

TDQS

B3.2/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true and openWorldHint=true, so the safety profile is fully covered. The description contributes no behavioral context beyond that—it never mentions pagination behavior, default page size, the compact vs full response modes, or any result limits, even though these materially affect how a caller consumes results.

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?

Two short sentences, front-loaded with the action and resource, with zero filler. It is tight but also thin—the brevity comes at the cost of omitting behaviorally relevant details rather than from efficient selection of the right ones.

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 10-parameter list tool with no output schema, the description feels under-specified: it omits any mention of pagination (startAt/limit), response shape (view), sorting, or the search and assignedUserId filters. The schema and annotations carry the load, so an agent can still call it correctly, but the description itself is only minimally complete.

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 100%, so all ten parameters (including view, limit, search, orderBy, assignedUserId) are already documented in the schema. The description only restates three of the filters (status, space, building) that the schema covers in more detail, adding no new parameter meaning.

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 verb+resource ('List iOffice maintenance requests'), which is clearly distinguishable from the singular sibling io_get_maintenance_request. However, it does not explicitly name that sibling or otherwise contrast itself against the many other io_list_* tools in the family.

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?

It notes the tool supports filtering by status, space, or building, which implies a browsing/query use case, but gives no explicit when-to-use guidance or exclusions (e.g., use io_get_maintenance_request when you have a known ID). Usage is inferable but not spelled out.

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