Skip to main content
Glama

Arthur Online MCP by usefulapi

List invoices

arthur_list_invoices
Read-only

Read contractor invoices, amounts, outstanding balances and payment status; never pays or changes an invoice. GET /v2/invoices. Returns data plus the vendor pagination; this is one page, not the whole portfolio.

Input Schema

NameRequiredDescriptionDefault
pageNoResults page (default 1). Read pagination.pageCount before requesting the next page.
sortNoVendor field to sort by, for example id or created.
limitNoRecords per page, 1–100 (default 20).
statusNo
directionNoSort direction (default ASC when sorting).
paid_dateNoCalendar date in YYYY-MM-DD format.
submittedNo
workorder_idNoArthur numeric record id, from the corresponding list tool.
completed_dateNoCalendar date in YYYY-MM-DD format.

Schema Changelog

Changes observed during successful MCP inspections.

  1. 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`; the description adds useful context by stating it never pays or changes an invoice, naming the HTTP endpoint, and warning that results are one page with vendor pagination. It does not cover auth, rate limits, or detailed return shape, so it stops short of a 5.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three tight sentences with the read-only constraint and pagination caveat front-loaded. Every sentence contributes distinct information and there is no repetition or filler.

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 9-parameter list tool with no output schema, the description covers the key agent-facing facts: read-only behavior, endpoint, returned data categories, and one-page pagination. The schema documents most parameters, though undocumented enum fields like `status` and `submitted` could use brief filter semantics in the description.

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 78%, so most parameters are already documented in the schema. The description mentions payment status and pagination but adds no specific meaning for filters such as `status`, `submitted`, `paid_date`, `workorder_id`, or sorting behavior. Baseline 3 is appropriate given the high coverage.

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 ('Read contractor invoices') and names the content fields returned (amounts, outstanding balances, payment status). It also clarifies that this is a page-level list rather than the whole portfolio, though it does not explicitly distinguish itself from the sibling `arthur_get_invoice`.

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 by the purpose and the pagination note ('this is one page, not the whole portfolio'), but there is no explicit when-to-use guidance or named alternative. It does not say to use `arthur_get_invoice` for a single invoice or explain which filters to prefer.

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.