Skip to main content
Glama
mvicari

Wave MCP Server

wave_approve_invoice

Approve a draft invoice in Wave Accounting by providing its invoice ID and business ID. Converts the invoice from draft to approved status.

Instructions

Approve a draft invoice

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
invoiceIdYesInvoice ID
businessIdNoBusiness ID
Behavior2/5

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

With no annotations, the description carries the full burden of behavioral disclosure. It only states 'Approve a draft invoice' but does not describe side effects, state changes (e.g., invoice becomes approved), irreversibility, or required permissions. This is insufficient for a mutation tool.

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 extremely concise at four words, with no wasted text. It is front-loaded and to the point. However, the brevity borders on under-specification, as it lacks important context about the action.

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

Completeness3/5

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

Given the simple action (approving a draft invoice) and minimal parameter count, the description is minimally adequate. However, it lacks information about return values, error conditions, or expected state changes. With no output schema, more context would be beneficial for the agent.

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?

The input schema has 100% coverage with descriptions for both parameters ('Invoice ID' and 'Business ID'). The description adds no additional meaning beyond what the schema already provides. Baseline score of 3 applies since schema descriptions are adequate but the tool description does not enhance understanding.

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 uses a specific verb ('Approve') and a clear resource ('a draft invoice'), which clearly indicates the action and object. It distinguishes from siblings like wave_mark_invoice_sent by focusing on approval rather than marking as sent. However, it could be more explicit about what approving entails (e.g., finalizing, changing status) to avoid ambiguity.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool over alternatives such as wave_mark_invoice_sent or wave_update_invoice. There is no mention of prerequisites (e.g., invoice must be in draft state) or typical use cases. The agent must infer context from the tool name alone.

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/mvicari/wave-mcp-remote'

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