Skip to main content
Glama

Invoice Ninja MCP Server and API by Cotlet

Create invoice in Invoice Ninja

invoice_ninja_create_invoice
Read-onlyIdempotent

Create invoice in the user's own Invoice Ninja account from ChatGPT, Claude or any AI agent. Returns how to do it in Invoice Ninja step by step (screens, buttons, fields) and opens nothing by itself; then do it with the cotlet_browser_* tools in the user's Invoice Ninja Cloud Browser. Invoice Ninja's official API: Yes, Invoice Ninja has a full REST API (checked 14 Oct 2026): invoices, quotes, clients, payments, products and more, authenticated with an API token you create in Settings.

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "invoice_ninja_create_invoice"
  }
}

Input Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A3.9/5.0
Behavior4/5

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

The description discloses the key behavior the agent needs to know: 'opens nothing by itself', so it is a read-only guidance call that has no side effects. That is consistent with readOnlyHint: true, idempotentHint: true, and destructiveHint: false. It does not say anything further, such as result size or whether a browser session must already be open; that is a small gap given the annotations already cover safety.

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 first sentence and the 'opens nothing by itself' clause come first and carry the most important information. But the last sentence is an off-topic digression about Invoice Ninja's official REST API and an authentication token, which is irrelevant to a tool that returns UI instructions at zero parameters. Removing it would leave a tight, two-sentence definition.

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 tool with no parameters and no output schema, the description explains what will be returned: step-by-step screens, buttons, and fields. It also names the tools that will carry out the action. It does not say whether the Cloud Browser app must already be open or navigated to Invoice Ninja before the instructions arrive; stating that prerequisite would complete the picture.

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?

The tool defines no parameters, so the baseline is 4 by default. The description matches the schema coverage of 100%, and it does not need to explain any field.

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 makes the key distinction explicit: the tool does not create anything itself, it returns step-by-step instructions (screens, buttons, fields), which matters because the name and title say 'Create invoice'. It also distinguishes itself from the cotlet_browser_* tools that perform the action. The trailing paragraph about Invoice Ninja's REST API does not describe this tool's purpose and dilutes the clarity.

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?

It routes the agent clearly: use this tool to get the instructions, then use cotlet_browser_* tools in the user's Cloud Browser to carry them out. This tells the agent when to use the tool compared with its obvious alternative. It does not say when not to use it, or why to prefer this over cotlet_app_guide, which noisily claims a similar role.

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