Skip to main content
Glama
berthelius

Frihet MCP Server

Apply Late Fee

apply_late_fee

Apply late payment interest to overdue invoices. Calculates fees per EU directive or auto-calculates based on days overdue, then creates a debit note.

Instructions

Apply late payment interest to an overdue invoice. Calculates interest based on EU Late Payment Directive (8% default) or auto-calculates from days overdue. Creates a debit note linked to the original invoice. / Aplica intereses de demora a una factura vencida. Calcula intereses segun la Directiva Europea de Morosidad (8% por defecto) o los calcula automaticamente a partir de los dias de retraso. Crea una nota de debito vinculada a la factura original.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
amountNoOverride fee amount. If omitted, auto-calculated from days overdue and legal rate. / Importe de la comision. Si se omite, se calcula automaticamente.
invoiceIdYesID of the overdue invoice / ID de la factura vencida
daysOverdueNoOverride days overdue count. If omitted, calculated from due date. / Dias de retraso. Si se omite, se calcula a partir de la fecha de vencimiento.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
idYes
messageNo
successYes
Behavior4/5

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

Annotations are minimal (all false). The description adds key behavioral context: it creates a debit note linked to the original invoice, supports auto-calculation based on days overdue or EU directive, and allows override of amount and days. No contradiction with annotations.

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 bilingual, which increases length but remains clear and well-structured. It contains two informative sentences per language without extraneous detail. Could be slightly more concise, but no significant waste.

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 tool's complexity (auto-calculation, legal reference, debit note creation), the description covers the main flow but omits potential error scenarios or prerequisites. An output schema exists, so return values are documented elsewhere, but edge cases like invalid invoice status or missing due date are not addressed.

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

Parameters5/5

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

Schema covers 100% of parameters, but the description adds significant meaning: explains that omitting amount triggers auto-calculation, and omitting daysOverdue calculates from due date. It also references the EU Late Payment Directive, adding legal context beyond the schema.

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 explicitly states it applies late payment interest to an overdue invoice, calculates interest based on EU Late Payment Directive or auto-calculates from days overdue, and creates a debit note. This clearly distinguishes it from sibling tools like mark_invoice_paid or send_invoice.

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 indicates use for overdue invoices but does not explicitly state when not to use it or mention alternative tools. It provides implied usage context but lacks exclusion criteria or comparison to similar operations.

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/berthelius/frihet-mcp'

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