Skip to main content
Glama
aweher

invoiceninja-mcp

by aweher

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
INVOICENINJA_URLYesURL raíz de la instancia (`https://invoicing.co` o tu self-hosted). Se tolera un `/api/v1` final.
INVOICENINJA_TIMEOUTNoTimeout HTTP en segundos.30
INVOICENINJA_API_TOKENYesToken de API de Invoice Ninja.
INVOICENINJA_VERIFY_SSLNo`false` para certificados autofirmados.true
INVOICENINJA_ENABLE_WRITESNo`true` registra las herramientas de escritura.false

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
invoiceninja_pingA

Check the connection and show which company and user the API token uses.

invoiceninja_get_staticsA

Look up static reference data (currencies, countries, payment types, languages, timezones, industries, sizes, date formats, gateways) to translate ids such as currency_id, country_id or type_id into names.

invoiceninja_searchA

Quickly find clients, client contacts, invoices and projects by name, email or number and get their ids. Start here when the user mentions a record by name.

invoiceninja_dashboard_totalsA

Totals per currency for a period: invoiced, paid, outstanding (with count) and expenses. Defaults to the instance's default period when dates are omitted.

invoiceninja_run_reportA

Run an Invoice Ninja report (invoices, payments, expenses, profit & loss, aged receivables, tax summaries, product sales, …) and return its rows. Best for aggregates over many records. Reports are generated asynchronously: if not ready within max_wait_seconds a report_id is returned for invoiceninja_get_report_result.

invoiceninja_get_report_resultA

Fetch the rows of a report started by invoiceninja_run_report.

invoiceninja_list_clientsA

List clients from Invoice Ninja with filtering, sorting and pagination. extra_filters keys: name, email, number, id_number, vat_number, balance ('gt:0', 'lt:100', operators lt/lte/gt/gte/eq), between_balance ('10:100'), group (group settings id), country_id, classification; created_between / updated_between ('YYYY-MM-DD,YYYY-MM-DD'), tag_ids (comma separated), assigned_user_ids. Use invoiceninja_get_client with an id from this list for the full record.

invoiceninja_get_clientA

Get one client by its hashed id, with all details.

invoiceninja_list_invoicesA

List invoices from Invoice Ninja with filtering, sorting and pagination. client_status values: all, draft, paid, unpaid, overdue, cancelled. extra_filters keys: date_range ('YYYY-MM-DD,YYYY-MM-DD' on the document date, or 'due_date,YYYY-MM-DD,YYYY-MM-DD' for another column), date (on/after YYYY-MM-DD), due_date (on/before YYYY-MM-DD), number, project_id, private_notes, payable (client_id); created_between / updated_between ('YYYY-MM-DD,YYYY-MM-DD'), tag_ids (comma separated), assigned_user_ids. Related names are resolved automatically (client_name). Use invoiceninja_get_invoice with an id from this list for the full record.

invoiceninja_get_invoiceA

Get one invoice by its hashed id, with all details (line items included).

invoiceninja_list_quotesA

List quotes from Invoice Ninja with filtering, sorting and pagination. client_status values: all, draft, sent, approved, expired, upcoming, converted. extra_filters keys: date_range ('YYYY-MM-DD,YYYY-MM-DD' on the document date, or 'due_date,YYYY-MM-DD,YYYY-MM-DD' for another column), date (on/after YYYY-MM-DD), due_date (on/before YYYY-MM-DD), number; created_between / updated_between ('YYYY-MM-DD,YYYY-MM-DD'), tag_ids (comma separated), assigned_user_ids. Related names are resolved automatically (client_name). Use invoiceninja_get_quote with an id from this list for the full record.

invoiceninja_get_quoteB

Get one quote by its hashed id, with all details (line items included).

invoiceninja_list_creditsA

List credits from Invoice Ninja with filtering, sorting and pagination. client_status values: all, draft, sent, partial, applied. extra_filters keys: date_range ('YYYY-MM-DD,YYYY-MM-DD' on the document date, or 'due_date,YYYY-MM-DD,YYYY-MM-DD' for another column), date (on/after YYYY-MM-DD), due_date (on/before YYYY-MM-DD), number, applicable (credits usable now); created_between / updated_between ('YYYY-MM-DD,YYYY-MM-DD'), tag_ids (comma separated), assigned_user_ids. Related names are resolved automatically (client_name). Use invoiceninja_get_credit with an id from this list for the full record.

invoiceninja_get_creditB

Get one credit by its hashed id, with all details (line items included).

invoiceninja_list_paymentsA

List payments from Invoice Ninja with filtering, sorting and pagination. client_status values: all, pending, cancelled, failed, completed, partially_refunded, refunded, partially_unapplied. extra_filters keys: number, date_range ('YYYY-MM-DD,YYYY-MM-DD'); created_between / updated_between ('YYYY-MM-DD,YYYY-MM-DD'), tag_ids (comma separated), assigned_user_ids. Related names are resolved automatically (client_name). Use invoiceninja_get_payment with an id from this list for the full record.

invoiceninja_get_paymentC

Get one payment by its hashed id, with all details.

invoiceninja_list_recurring_invoicesA

List recurring invoices from Invoice Ninja with filtering, sorting and pagination. client_status values: all, draft, active, paused, completed. extra_filters keys: number, product_key, frequency_id (1 daily … 5 monthly … 10 annually), next_send_between ('YYYY-MM-DD|YYYY-MM-DD'); created_between / updated_between ('YYYY-MM-DD,YYYY-MM-DD'), tag_ids (comma separated), assigned_user_ids. Related names are resolved automatically (client_name). Use invoiceninja_get_recurring_invoice with an id from this list for the full record.

invoiceninja_get_recurring_invoiceA

Get one recurring invoice by its hashed id, with all details (line items included).

invoiceninja_list_productsA

List products from Invoice Ninja with filtering, sorting and pagination. extra_filters keys: product_key; created_between / updated_between ('YYYY-MM-DD,YYYY-MM-DD'), tag_ids (comma separated), assigned_user_ids. Use invoiceninja_get_product with an id from this list for the full record.

invoiceninja_get_productB

Get one product by its hashed id, with all details.

invoiceninja_list_expensesA

List expenses from Invoice Ninja with filtering, sorting and pagination. client_status values: all, logged, pending, invoiced, uninvoiced, paid, unpaid, uncategorized. extra_filters keys: number, amount, categories (category ids, comma separated), vendor_ids, project_ids, payment_type, has_invoices, date_range ('YYYY-MM-DD,YYYY-MM-DD'); created_between / updated_between ('YYYY-MM-DD,YYYY-MM-DD'), tag_ids (comma separated), assigned_user_ids. Related names are resolved automatically (client_name, vendor_name). Use invoiceninja_get_expense with an id from this list for the full record.

invoiceninja_get_expenseB

Get one expense by its hashed id, with all details.

invoiceninja_list_recurring_expensesA

List recurring expenses from Invoice Ninja with filtering, sorting and pagination. client_status values: all, logged, pending, invoiced, paid, unpaid. extra_filters keys: number; created_between / updated_between ('YYYY-MM-DD,YYYY-MM-DD'), tag_ids (comma separated), assigned_user_ids. Related names are resolved automatically (client_name, vendor_name). Use invoiceninja_get_recurring_expense with an id from this list for the full record.

invoiceninja_get_recurring_expenseA

Get one recurring expense by its hashed id, with all details.

invoiceninja_list_vendorsA

List vendors from Invoice Ninja with filtering, sorting and pagination. extra_filters keys: number; created_between / updated_between ('YYYY-MM-DD,YYYY-MM-DD'), tag_ids (comma separated), assigned_user_ids. Use invoiceninja_get_vendor with an id from this list for the full record.

invoiceninja_get_vendorB

Get one vendor by its hashed id, with all details.

invoiceninja_list_projectsA

List projects from Invoice Ninja with filtering, sorting and pagination. extra_filters keys: number, assigned_user (user id); created_between / updated_between ('YYYY-MM-DD,YYYY-MM-DD'), tag_ids (comma separated), assigned_user_ids. Related names are resolved automatically (client_name). Use invoiceninja_get_project with an id from this list for the full record.

invoiceninja_get_projectC

Get one project by its hashed id, with all details.

invoiceninja_list_tasksA

List tasks from Invoice Ninja with filtering, sorting and pagination. client_status values: all, invoiced, uninvoiced, is_running, overdue. extra_filters keys: number, project_tasks (project id), project_ids, task_status (status ids), user_id, assigned_user, activity_dates; created_between / updated_between ('YYYY-MM-DD,YYYY-MM-DD'), tag_ids (comma separated), assigned_user_ids. Related names are resolved automatically (client_name, project_name, status_name). Use invoiceninja_get_task with an id from this list for the full record.

invoiceninja_get_taskB

Get one task by its hashed id, with all details.

invoiceninja_list_purchase_ordersA

List purchase orders from Invoice Ninja with filtering, sorting and pagination. client_status values: all, draft, sent, accepted, cancelled. extra_filters keys: date_range ('YYYY-MM-DD,YYYY-MM-DD' on the document date, or 'due_date,YYYY-MM-DD,YYYY-MM-DD' for another column), date (on/after YYYY-MM-DD), due_date (on/before YYYY-MM-DD), number, vendor_id; created_between / updated_between ('YYYY-MM-DD,YYYY-MM-DD'), tag_ids (comma separated), assigned_user_ids. Related names are resolved automatically (vendor_name). Use invoiceninja_get_purchase_order with an id from this list for the full record.

invoiceninja_get_purchase_orderA

Get one purchase order by its hashed id, with all details (line items included).

invoiceninja_list_recordsA

List reference/secondary records: tax_rates, payment_terms, expense_categories, task_statuses, group_settings, designs, documents, bank_transactions, activities, tags, locations, subscriptions, recurring_quotes, users. Use it to resolve ids found on other records (e.g. category_id, status ids, tax names) or to browse the activity log.

invoiceninja_get_recordA

Get one reference/secondary record by id. Entities: tax_rates, payment_terms, expense_categories, task_statuses, group_settings, designs, documents, bank_transactions, activities, tags, locations, subscriptions, recurring_quotes, users.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

B3.3/5.0

Scored across 34 tools

Disambiguation4/5

Most tools pair list_X and get_X for distinct entities, making selection clear. Minor overlap exists between search and filtered list tools, and between dashboard_totals and run_report; get_statics also has a slightly confusing name.

Naming Consistency4/5

All tool names use snake_case with the invoiceninja_ prefix and predominantly follow a list_/get_ verb_noun pattern. Exceptions like ping, search, dashboard_totals, and get_statics are readable but slightly inconsistent.

Tool Count2/5

At 34 tools, the surface is very large for a single MCP server and exceeds the typical well-scoped range. While each list/get pair targets a distinct resource, the count is high enough to burden tool selection.

Completeness2/5

The server provides extensive read/list/get and reporting coverage, but it lacks any create, update, delete, send, or payment-recording operations. These are core invoicing lifecycle actions, so common management tasks would fail.

Maintenance

ActivityMaintained
ResponsivenessNo issues