Skip to main content
Glama
pete-life

Billy MCP

by pete-life

billy_period_overview

Read-onlyIdempotent

Inventory a period's unreconciled bank lines, postings, bills, and receipts to surface candidate matches for reconciliation.

Instructions

Inventory unreconciled bank lines, existing postings, bills and collected receipts for a period. Candidate matches are suggestions, not an accounting verdict.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
endYes
startYes
verboseNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv0.2.1
    • addedInput schema / properties / verbose
      Added value: +{
      +  "default": false,
      +  "type": "boolean"
      +}
  2. First observedv0.1.0

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already cover read-only, idempotent, and non-destructive behavior, so the description does not need to restate that. It adds the important behavioral caveat that candidate matches are suggestions, not an accounting verdict, which is meaningful context beyond the annotations. This helps the agent interpret results correctly without overstepping.

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?

Two sentences with no fluff or restatement. The first sentence front-loads the action and scope, and the second quickly delivers the key interpretive caveat. Every word earns its place.

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 read-only, idempotent tool with a simple three-parameter schema, the description communicates what is inventoried and how to interpret the output. The absence of an output schema makes the item enumeration and 'not an accounting verdict' caveat valuable. It does not specify exact output structure or period inclusivity, but the annotations and simple schema reduce the need for more.

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 0%, so the description must compensate for parameter meaning. It partially does by clarifying that start and end define a period and that the output includes specific record types, but it does not explain the optional verbose flag or date-boundary behavior. The schema provides patterns and defaults, and the parameter names are fairly intuitive, making this adequate though not thorough.

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 names a concrete action ('Inventory') and specifies the resource scope: unreconciled bank lines, postings, bills, and collected receipts over a period. This clearly distinguishes it from more generic sibling tools like billy_list or billy_get, though it does not explicitly call them out. The caveat about candidate matches further sharpens its purpose.

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 phrase 'for a period' implies this tool is intended for period-scoped overviews of reconciliation-related entities, and the listed item types suggest when it would apply. However, there is no explicit guidance on when not to use it or which sibling tool to prefer for different needs, such as billy_outstanding or billy_get. This is adequate but relies on the agent to infer usage.

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