io.github.enzoemir1/invoiceflow-mcp
NPM · INVOICEFLOW-MCP-SERVER · SCANNED AUG 3
AI-powered invoice automation. Create invoices, track payments, and manage cash flow.
Available components
How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score →
Supply Chain Security87
- No malware found by supply-chain analysis.Pass
- Only part of the dependency tree could be resolved (100 of 104), so this covers what we could see, not the whole tree.Partial
- No install/post-install scripts declared.Pass
- Only part of the dependency tree could be resolved (100 of 104), so this covers what we could see, not the whole tree. View diagnostics → Partial
Provenance & Transparency45
- Source repository is publicly reachable at the declared URL. View diagnostics → Pass
- Provenance check failed: no build-provenance attestation is published. See how to fix → View diagnostics → Fail
- Clear OSI-approved license (MIT).Pass
- Actively maintained (last published 99 days ago).Pass
- Disclosure check failed: no security disclosure policy was found in the source repository. See how to fix → Fail
Schema Quality & AI Usability87
- 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
- AI-judged instruction clarity (excellent).Pass
- Context-footprint check failed: tool/resource definitions use about 1623 tokens (~115/item across 14 items; 10 tools + 4 resources), over budget; trim descriptions and params. See how to fix → Fail
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management27
- Stability observed for 8 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage77
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 32% of tool parameters carry a description.Partial
Capabilities100
- Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Add this component to your MCP client. Where a client-specific snippet is available, pick your client below and copy it straight into your config; otherwise use the connection detail shown.
npm · invoiceflow-mcp-server
claude mcp add enzoemir1-invoiceflow-mcp -- npx -y invoiceflow-mcp-server
codex mcp add enzoemir1-invoiceflow-mcp -- npx -y invoiceflow-mcp-server
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"enzoemir1-invoiceflow-mcp": {
"type": "local",
"command": [
"npx",
"-y",
"invoiceflow-mcp-server"
],
"enabled": true
}
}
} openclaw mcp add enzoemir1-invoiceflow-mcp --command npx --arg -y --arg invoiceflow-mcp-server
mcp_servers:
enzoemir1-invoiceflow-mcp:
command: "npx"
args: ["-y", "invoiceflow-mcp-server"] {
"mcpServers": {
"enzoemir1-invoiceflow-mcp": {
"command": "npx",
"args": [
"-y",
"invoiceflow-mcp-server"
]
}
}
} Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 3 Aug 26 +4
- Stability: unverified → 0.27 ▲ functional
- 2 Aug 26 +41
- Provenance: unverified → fail ▼ security
- Install scripts: unverified → pass ▲ security
- Known CVEs: unverified → partial ▲ security
- Malware scan: unverified → pass ▲ security
- Stability: Stability not yet verified: not enough scan history yet (needs a 30-day window). security
- Security disclosure: fail → unverified ▼ functional
- Tool coverage: 100 → unverified ▼ functional
- Schema quality: 100 → unverified ▼ functional
- MCP protocol: unverified → pass ▲ functional
- Maintenance: unverified → pass ▲ functional
- Dependency health: unverified → partial ▲ functional
- License: unverified → pass ▲ functional
- Schema quality: unverified → excellent ▲ functional
- Licence: MIT functional
- 1 Aug 26 +18
- Dependency health: partial → unverified ▼ functional
- Schema quality: unverified → 100 ▲ functional
- Tool coverage: unverified → 100 ▲ functional
- 31 Jul 26 −18
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 30 Jul 26 −25
- Tool coverage: 100 → unverified ▼ functional
- Schema quality: 100 → unverified ▼ functional
- 27 Jul 26 49
First indexed and scored.
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 3 Aug 2026 · Analysed npm/[email protected]
Provenance none
Ecosystem: npm · Outcome: none
Dependencies 100 packages
100 packages in the resolved dependency tree · 100 deprecated · 32 stale.
The dependency tree was only partially resolved, so these counts may be incomplete.
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability.
cashflow_report Cash Flow Report ~101
Generate a portfolio-wide cash flow summary across all invoices. Returns {period, total_invoiced, total_collected, total_outstanding, total_overdue, collection_rate (percent), avg_days_to_payment (or null if no paid history), projected_income_30d (forecast based on due dates and historical pay rate), breakdown_by_status, breakdown_by_client}. Takes no input — always reports on the current full dataset. Ideal for dashboards and monthly close.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
client_manage Manage Client ~175
Create or upsert a client record used by invoice_create. Accepts name, email, company, address, city, country, tax_id, phone, default_currency ("USD"|"EUR"|"GBP"|...) and notes. Returns the stored client object including the generated id (UUID), an empty payment_history (populated as invoices are paid), and timestamps. Safe to call repeatedly: if a client with the same email already exists, the existing record is returned unchanged.
| Name | Type | Req | Description |
|---|---|---|---|
| address | string | — | — |
| city | string | — | — |
| company | string | — | — |
| country | string | — | — |
| default_currency | string | — | — |
| string | yes | — | |
| name | string | yes | — |
| notes | string | — | — |
| phone | string | — | — |
| tax_id | string | — | — |
No output schema declared.
No examples provided.
invoice_create Create Invoice ~199
Create a new invoice for an existing client. Required: client_id (UUID) and line_items (non-empty array of {description, quantity, unit_price, tax_rate?, discount_percent?} — tax and discount are per-line). Optional: currency (defaults to the client's default_currency then USD), issue_date (YYYY-MM-DD or full ISO, defaults to today), due_date (same format, defaults to issue_date + 30 days), notes, and terms. Auto-calculates subtotal, discount_total, tax_total, and total; generates a sequential invoice_number in format INV-YYYY-NNNN; sets status="draft". Returns the full invoice object ready for invoice_send.
| Name | Type | Req | Description |
|---|---|---|---|
| client_id | string | yes | — |
| currency | string | — | — |
| due_date | string | — | — |
| issue_date | string | — | — |
| line_items | array | yes | — |
| notes | string | — | — |
| terms | string | — | — |
No output schema declared.
No examples provided.
invoice_demo_seed Seed Demo Data ~160
Populate the store with a realistic demo dataset: 8 clients across 5 archetypes (on-time, late-payer, high-value, new, chronic-late) and 25-45 invoices spanning the last 6 months (paid, sent, and overdue). Every invoice has line items, tax, payment history, and reminder metadata. Use this to evaluate InvoiceFlow via MCP Inspector without real Stripe, SendGrid, or PayPal credentials — invoice_list, cashflow_report, invoice_risk, and payment_reconcile all return meaningful results against the returned ids. Safe to call multiple times; each call appends a fresh batch with unique UUIDs. Returns counts plus sample_invoice_ids you can feed straight into invoice_risk or invoice_mark_paid.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
invoice_list List Invoices ~181
Search and filter invoices. Optional filters: status ("draft"|"sent"|"viewed"|"paid"|"overdue"|"cancelled"|"refunded"), client_id, min_amount, max_amount, date_from/date_to (ISO dates), overdue_only (boolean). Pagination via limit (default 50, max 200) and offset. Returns {total, invoices[]} where each invoice includes full line_items and payment state. Use this to build dashboards or drive invoice_remind/invoice_risk workflows.
| Name | Type | Req | Description |
|---|---|---|---|
| client_id | string | — | — |
| from_date | string | — | — |
| limit | integer | — | — |
| max_amount | number | — | — |
| min_amount | number | — | — |
| offset | integer | — | — |
| overdue_only | boolean | — | — |
| status | string | — | — |
| to_date | string | — | — |
No output schema declared.
No examples provided.
invoice_mark_paid Mark Invoice Paid ~157
Record a full or partial payment against an invoice. Updates amount_paid and amount_due; sets status="paid" only when the outstanding balance reaches zero. As a side effect, a fully-paid invoice updates the client payment_history (total_revenue, paid_invoices, avg_days_to_payment, late_payment_count) which invoice_risk then uses for future predictions. Returns a confirmation with the paid amount and remaining balance.
| Name | Type | Req | Description |
|---|---|---|---|
| amount | number | — | Amount paid in invoice currency; omit to settle the full remaining balance |
| invoice_id | string | yes | UUID of the invoice to update |
| payment_method | string | — | How the payment was received (stripe|paypal|bank_transfer|credit_card|cash|check|crypto|other) |
No output schema declared.
No examples provided.
invoice_remind Record Payment Reminder ~124
Record that a payment reminder has been issued for an unpaid invoice. Increments reminder_count, sets last_reminder_at, and advances draft → sent. Returns the generated reminder message (custom or default) so the caller can relay it through their preferred channel — this tool itself does not send email; use invoice_send for actual delivery. Safely refuses to remind on already-paid invoices.
| Name | Type | Req | Description |
|---|---|---|---|
| invoice_id | string | yes | UUID of the invoice to remind |
| message | string | — | Custom reminder body; default is a friendly message referencing invoice number, amount, and due date |
No output schema declared.
No examples provided.
invoice_risk Assess Payment Risk ~135
Predict late-payment risk for a specific invoice on a 0-100 scale. The model combines invoice amount (relative to client average), client payment history (avg_days_to_payment, late_payment_count), days remaining until due date, and prior reminder_count. Returns {risk_score (0-100), risk_level ("low"|"medium"|"high"|"critical"), factors (array of {factor, impact, detail}), recommended_action (string), next_reminder_date (ISO string or null)}. Use for prioritizing collection effort on high-value invoices.
| Name | Type | Req | Description |
|---|---|---|---|
| invoice_id | string | yes | UUID of the invoice to assess |
No output schema declared.
No examples provided.
invoice_send Send Invoice ~124
Generate the invoice PDF and deliver it to the client. Always generates the PDF and marks the invoice status="sent". Email delivery via SendGrid is attempted automatically when the SENDGRID_API_KEY environment variable is set; without it the PDF is still generated and the status still advances so the caller can handle delivery out-of-band. Returns a confirmation message with the PDF size.
| Name | Type | Req | Description |
|---|---|---|---|
| invoice_id | string | yes | UUID of an existing invoice (from invoice_create or invoice_list) |
| message | string | — | Custom body text for the email (default is a summary of amount and due date) |
No output schema declared.
No examples provided.
payment_reconcile Reconcile Payment ~199
Match an incoming external payment (e.g. Stripe webhook, PayPal IPN, bank transfer) to an open invoice. Matching rule: the payer_email must equal the invoice client_email (case-insensitive) AND the payment_amount must equal the invoice amount_due within one cent. On match the invoice is marked paid, amount_paid/amount_due are updated, and client payment_history is recomputed exactly like invoice_mark_paid. Returns a reconciliation message on match or a "no match" message otherwise (no error). If multiple invoices match, the first one is reconciled.
| Name | Type | Req | Description |
|---|---|---|---|
| payer_email | string | yes | Email of the payer (matched against invoice client_email, case-insensitive) |
| payment_amount | number | yes | Amount received from the payer, in the invoice currency |
| payment_method | string | — | Payment channel (stripe|paypal|bank_transfer|etc.) |
| reference | string | — | External payment reference or transaction ID for your records |
No output schema declared.
No examples provided.