Skip to main content
Glama

Nopaque TotalPath

List Invoices

listWorkspaceInvoices
Read-onlyIdempotent

The latest invoices, newest first, at most 12: period, status, total in cents with display as the amount to quote, currency, and whether it is the current draft. The current draft invoice has isDraft true; it is the only answer to "what will we be billed", and it is a draft that can still change. There is no forecast. Quote each total by its display; never add up or convert amounts. No PDF links. Use when: someone asks about invoices, spend or the next bill. Owner or billing admin only; other roles get 403. Only a person signed in to the nopaque web app can call this; an API key is refused.

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": {
      "workspaceId": "<workspaceId>"
    },
    "name": "listWorkspaceInvoices"
  }
}

Input Schema

NameRequiredDescriptionDefault
workspaceIdYesWorkspace identifier. Must be the caller's current workspace.

Output Schema

NameRequiredDescriptionDefault
invoicesYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.4/5.0
Behavior5/5

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

Goes well past the readOnly/idempotent annotations: it discloses authorization roles (owner or billing admin, others 403), an authentication constraint (signed-in web app user only, API key refused), the result cap of 12, ordering, and that draft invoices can still change. These are the failure modes an agent actually hits.

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?

Front-loaded with what is returned, then draft semantics, then quoting rules, then access constraints—each sentence carries distinct information. A couple of clauses ('never add up or convert amounts', 'No PDF links') are defensive but still earn their place for an agent that might otherwise sum totals.

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?

An output schema exists, so return shape need not be restated, yet the description still flags how to quote amounts and that isDraft marks the current bill. Auth, scope, cap, and interpretation rules cover everything needed for correct invocation.

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% with a single workspaceId parameter that already documents the 'current workspace' requirement, so the description adds no parameter meaning. Baseline 3 applies when the schema carries the full burden.

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?

States a specific resource (invoices), ordering (newest first), cap (at most 12), and enumerates the returned fields. It also marks scope boundaries ('There is no forecast', 'No PDF links'), which lets an agent separate it from plan/usage tools without opening a 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?

Gives an explicit trigger ('Use when: someone asks about invoices, spend or the next bill') and rules out forecast questions, which is the main alternative intent in this family. It stops short of naming a sibling tool to route forecast/plan questions to, so the agent must infer it from names.

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.