Skip to main content
Glama
Frihet-io

Frihet MCP Server

Create Invoice

create_invoice

Generate invoices with client details and line items. Automatically assigns invoice numbers and supports tax rates, due dates, and status tracking.

Instructions

Create a new invoice. Requires client name and at least one line item. The invoice number is auto-generated. / Crea una nueva factura. Requiere nombre del cliente y al menos un concepto. El numero de factura se genera automaticamente.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
clientNameYesClient/customer name / Nombre del cliente
itemsYesLine items / Conceptos de la factura
statusNoInvoice status (default: draft) / Estado de la factura
dueDateNoDue date in ISO 8601 format (YYYY-MM-DD) / Fecha de vencimiento
notesNoAdditional notes / Notas adicionales
taxRateNoTax rate percentage (e.g. 21 for 21% IVA) / Porcentaje de impuesto
Behavior3/5

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

Annotations already indicate this is a non-readOnly, non-destructive operation (readOnlyHint: false, destructiveHint: false). The description adds useful context about auto-generated invoice numbers and required fields, which goes beyond annotations. However, it doesn't disclose other behavioral traits like error conditions, permissions needed, or rate limits that would be helpful for a creation tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is reasonably concise with two sentences (plus bilingual repetition). However, the bilingual format doubles the length without adding new information, and the structure could be improved by front-loading the most critical information more clearly. It's not wasteful but could be more efficient.

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?

For a creation tool with no output schema and comprehensive annotations, the description provides adequate context about what the tool does and basic requirements. However, it lacks information about return values, error handling, or system behavior that would help an agent understand the full context of using this tool.

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?

With 100% schema description coverage, the schema already documents all 6 parameters thoroughly. The description adds minimal value by mentioning client name and items as required, but doesn't provide additional semantic context beyond what's in the schema. This meets the baseline expectation when schema coverage is complete.

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 clearly states the tool creates a new invoice with specific requirements (client name and at least one line item). It distinguishes itself from siblings like update_invoice or delete_invoice by focusing on creation, but doesn't explicitly differentiate from create_quote or other creation tools. The bilingual format doesn't detract from clarity.

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 implies when to use it (when creating a new invoice) and mentions prerequisites (client name and items). However, it doesn't provide explicit guidance on when to choose this over alternatives like create_quote or when not to use it (e.g., for updating existing invoices). The guidance is present but incomplete.

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

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