Skip to main content
Glama

Chargebee: Create credit note

chargebee_create_credit_note

Chargebee: Credit all or part of an invoice with a refundable or adjustment credit note. Creates a credit note on an invoice and returns it with the updated invoice. The invoice status decides the type: a paid invoice takes only refundable, a payment_due or not_paid invoice only adjustment, a partially paid one either. Pass total or line_items, not both; amounts are in the smallest currency unit, so 5000 is $50.00. A refundable credit note starts with refund due and moves no money until someone refunds it. The comment stays inside Chargebee; customer_notes print on the credit note PDF. This changes what a customer owes or is owed, so by default you confirm each call; you can switch that off for this tool. Reaches other people: confirm with the user before each call. Needs the user's Cotlet API key with access to this app.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
typeYesrefundable or adjustment, as the invoice status allows.
totalNoCredit amount in the smallest currency unit. Use this or line_items.
commentNoInternal note, 300 characters at most. Not shown to the customer.
line_itemsNoInvoice lines to credit, with an amount each. Use this or total.
reason_codeNoA reason code configured in Chargebee, case-sensitive. Required if your site makes reason codes mandatory.
customer_notesNoText printed on the credit note PDF, 2000 characters at most.
reference_invoice_idYesInvoice to credit, from list_invoices.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.2/5.0
Behavior5/5

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

Goes well beyond the annotations: it explains that a refundable credit note starts with refund due and moves no money until refunded, that the comment is internal while customer_notes print on the PDF, that it changes what a customer owes/is owed, that each call is confirmed by default (switchable off), and that the user's Cotlet API key with app access is required. This is exactly the safety/auth/side-effect context annotations cannot carry.

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-loads the core operation and type logic before moving to the type-selection rules, parameter constraints, and confirmation/auth caveats. The prose is dense with several chained clauses, but nearly every sentence carries non-redundant information, so only minor tightening is possible.

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 mutation tool with no output schema, it covers the return ('returns it with the updated invoice'), the type logic, parameter units and exclusivity, confirmation behavior, and auth needs. Only edge cases such as failure modes or reason_code mandatory-site behavior are left thin.

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 100%, so the baseline is 3, but the description adds genuine meaning: mutual exclusivity of total vs line_items, an amount-unit example (5000 = $50.00), and the mapping from invoice status to valid type values. That value over the schema justifies a 4.

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?

States a specific verb and resource ('Creates a credit note on an invoice and returns it with the updated invoice') and adds scope detail (all or part of an invoice). The operation is unambiguous, though it never names or contrasts with any sibling such as list_credit_notes to route the agent explicitly.

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 concrete selection rules: the invoice status dictates the type (paid takes only refundable, payment_due/not_paid only adjustment, partially paid either), and it warns to pass total or line_items but not both. No explicit 'when not to use' or alternative-tool comparison, so it stops short of a 5.

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.

Resources