Skip to main content
Glama
Cimalys

billy-mcp

by Cimalys

billy_approve_bill

Approve a draft bill in your Billy accounting system. Requires explicit confirmation to prevent accidental approval.

Instructions

Approve a draft bill. WRITE — requires confirm:true.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
idYes
confirmNoREQUIRED to execute. Pass true to actually run the mutation. Without it, this tool returns a dry-run preview of what would happen — explicit second call with confirm:true is needed to write.
Behavior3/5

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

No annotations are provided, so the description carries the burden. It discloses 'WRITE' and the confirm requirement, but does not elaborate on consequences (e.g., irreversibility, permission needs, status changes). The input schema partially compensates by documenting the confirm parameter's dry-run behavior, but the description adds little beyond that.

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?

The description is extremely concise at 7 words, with no fluff. Every part serves a purpose: naming the action, specifying the resource, flagging the write operation, and noting the required parameter.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite the tool's simplicity, the description lacks necessary context: it does not mention prerequisites (e.g., bill must be in draft state), effects (e.g., status change), or return value. With no output schema, the agent is left guessing about the result of the operation.

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 50% (only 'confirm' has a description). The description only restates that confirm:true is required, adding no new meaning for 'id' (which lacks a schema description). The basic purpose of 'id' is implied by context, but the description does not compensate for the undocumented parameter.

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?

The description 'Approve a draft bill. WRITE — requires confirm:true' clearly specifies the verb (approve), the resource (draft bill), and the write nature. It distinguishes from siblings like billy_approve_invoice and billy_delete_bill by targeting a specific stage (draft) and action (approval).

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 description states the tool's purpose ('Approve a draft bill') but provides no guidance on when to use it versus alternatives (e.g., billy_create_bill for new bills, billy_update_bill for editing). No exclusions or context for when not to use it are given.

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/Cimalys/billy-mcp'

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