Skip to main content
Glama
ninetails-io

gnucash-mcp

list_customers

Fetch customers from GnuCash with pagination, active-only filter, and optional full JSON details. Use limit=0 for a count-only result.

Instructions

List all customers.

Leads with a Showing X-Y of Z customers line, then a compact one-line-per-customer format by default. Page with offset; limit=0 returns the count only. Use verbose=true for full JSON with guid, address, notes, etc.

Args: active_only: If True, only show active customers. Default True. verbose: If true, return full JSON details for each customer. limit: Page size (default 50, max 250). 0 = count only. offset: 0-indexed first row to return (default 0).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
limitNo
offsetNo
verboseNo
active_onlyNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes
Behavior4/5

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

No annotations are provided, so the description carries full disclosure burden. It reasonably discloses: the lead summary line format, default compact output vs verbose full JSON, pagination behavior, and the active_only default filtering. It doesn't mention sort order or total result limits beyond the max 250 page size, but overall provides solid behavioral 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?

The description is well-structured with an intro paragraph explaining output format, then a clean args list. Every sentence adds value. Slightly verbose in the intro but each sentence covers distinct behaviors (summary line, default format, pagination, count-only, verbose mode). Efficient overall.

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 list tool, this covers the key operational details: output format, pagination, defaults, and filtering. An output schema exists, so return value details are covered. Slight gaps: no mention of sort order, timezone behavior, or relationship with other customer-related tools, but these are minor for a listing operation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must fully compensate. It does: each of the 4 params (active_only, verbose, limit, offset) is explained with defaults and special behavior (limit=0 count-only, max 250). This exceeds what the bare schema provides. Minor gap: doesn't state what 'active' means, but full defaults and ranges are provided.

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 clearly states 'List all customers' with a specific verb and resource. Among siblings, list_customers is distinguished from get_customer (single vs bulk) and create_customer, though it doesn't explicitly name these alternatives. The first line is clear and unambiguous.

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?

The description provides clear usage context: the default one-line-per-customer format, how to paginate with offset, that limit=0 returns count only, and when to use verbose=true for full JSON. It explains the alternative output modes well, though it doesn't explicitly say when to prefer this over get_customer.

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

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/ninetails-io/gnucash-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server