Onexur Manager MCP
PYPI · MCP-MANAGER.IO
MCP server for Manager.io bookkeeping: read-first with opt-in scoped task and write tools
Available components
Last scanned (21 hours ago)
Scores higher than 69% of PyPI servers
Category Finance and Payments
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 → Why this is hard to score →
Supply Chain Security50
- Malware scan not yet available for this package.Unverified
- No known CVEs affecting this package version or its production dependencies.Pass
- Runs hatchling.build at install time, a recognised build step with no custom scripting around it. View diagnostics → Pass
- 1 of 22 dependencies flagged as unhealthy. View diagnostics → Partial
Provenance & Transparency100
- Source repository is publicly reachable at the declared URL. View diagnostics → Pass
- Cryptographically verified build provenance (signed, bound to onexurOSS/mcp-manager.io). View diagnostics → Pass
- Clear OSI-approved license (AGPL-3.0-or-later).Pass
- Actively maintained (last published 36 days ago).Pass
- Publishes a security disclosure policy (SECURITY.md).Pass
Schema Quality & AI Usability73
- AI-judged instruction clarity (good).Pass
- Tool/resource definitions use about 2160 tokens (~72/item across 30 items; 30 tools + 0 resources), lean.Pass
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management67
- Stability observed for 20 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage71
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 0% of tool parameters carry a description.Fail
- Structured output schemas are declared (100% of tools); any adoption earns full credit.Pass
Tool Safety100
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- We read all 30 captured tool definition(s), and no name or description among them implies an irreversible operation.Pass
- An AI judge read all 30 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
- Implements a current MCP spec version (2026-07-28).Pass
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 Nov 26 −5
- Stability: pass → 0.63 functional
- 29 Oct 26 −15
- Malware scan: pass → unverified ▼ security
- 27 Oct 26 +1
- Stability: 0.97 → pass security
- 25 Oct 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 90 to 93. That category is still filling its 30-day observation window: 27 days of observed history at the previous scan, 28 at this one. The score rises as the window fills, whether or not the server changes.
- 23 Oct 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 83 to 87. That category is still filling its 30-day observation window: 25 days of observed history at the previous scan, 26 at this one. The score rises as the window fills, whether or not the server changes.
- 20 Oct 26 +16
- Malware scan: unverified → pass ▲ security
- 19 Oct 26 −15
- Malware scan: pass → unverified ▼ security
- 18 Oct 26 +16
- Malware scan: unverified → pass ▲ security
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 4 Nov 2026 · Analysed pypi/mcp-manager.io@1.1.0
Provenance Verified
A signed build attestation was found and verified, binding this exact artifact to the source repository it claims to come from.
| Result | Verified |
|---|---|
| Ecosystem | pypi |
| Reason | Verified |
| Discovered via | Registry attestation endpoint |
| Source repo | onexurOSS/mcp-manager.io |
| Certificate issuer | https://token.actions.githubusercontent.com |
| Certificate SAN | https://github.com/onexurOSS/mcp-manager.io/.github/workflows/publish.yml@refs/tags/v1.1.0 |
| Rekor log index | 2982337616 |
| Predicate type | PyPI publish attestation https://docs.pypi.org/attestations/publish/v1 |
| Subject digest | sha256:a0ca622b8eadf02e4f98441066afe7d63f9cfda9098c31766751268432f76ee7 |
Background: How many MCP packages publish verified provenance →
Install scripts 1 script
| Hook | Tier | Command |
|---|---|---|
| build_backend | allowlisted | hatchling.build |
Background: Why install scripts are a supply-chain risk →
Dependencies 22 packages
| Packages resolved | 22 |
|---|---|
| Stale | 1 |
| Tree resolution | Complete |
Background: SBOMs and build attestations, explained →
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. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →
account_ledger Account Ledger ~68
Every structured Lines[] entry across all transaction types whose Account matches the given chart-of-accounts key -- the closest available view to a per-account general ledger (Manager exposes no native GL-by-account endpoint).
| Name | Type | Req | Description |
|---|---|---|---|
| account | string | yes | – |
| from_date | – | – | – |
| to_date | – | – | – |
Structured output declared, but exposes no named fields.
No examples provided.
aged_payables Aged Payables ~60
CURRENT supplier balances only (read-only). Not an aged report and not as at any past date; rejects from_date/to_date. For a labelled as-at reconstruction use reconstructed_aged_payables.
| Name | Type | Req | Description |
|---|---|---|---|
| from_date | – | – | – |
| to_date | – | – | – |
Structured output declared, but exposes no named fields.
No examples provided.
aged_receivables Aged Receivables ~62
CURRENT customer balances only (read-only). Not an aged report and not as at any past date; rejects from_date/to_date. For a labelled as-at reconstruction use reconstructed_aged_receivables.
| Name | Type | Req | Description |
|---|---|---|---|
| from_date | – | – | – |
| to_date | – | – | – |
Structured output declared, but exposes no named fields.
No examples provided.
balance_sheet Balance Sheet ~47
Raw /balance-sheet-transactions rows (read-only). NOT Manager's Balance Sheet and no account per row; see reconstructed_trial_balance.
| Name | Type | Req | Description |
|---|---|---|---|
| from_date | – | – | – |
| to_date | – | – | – |
Structured output declared, but exposes no named fields.
No examples provided.
bank_activity Bank Activity ~69
Money-in/out for one bank/cash account, assembled from receipts (ReceivedIn), payments (PaidFrom) and transfers referencing it. Manager has no separate 'bank transaction' entity to read directly.
| Name | Type | Req | Description |
|---|---|---|---|
| bank_account_key | string | yes | – |
| from_date | – | – | – |
| to_date | – | – | – |
Structured output declared, but exposes no named fields.
No examples provided.
bank_balances Bank Balances ~51
CURRENT bank/cash balances only (read-only; rejects dates). For search/drill-in of individual accounts use list_records/get_record on bank_accounts.
| Name | Type | Req | Description |
|---|---|---|---|
| from_date | – | – | – |
| to_date | – | – | – |
Structured output declared, but exposes no named fields.
No examples provided.
find_broken_invoice_references Find Broken Invoice References ~92
Payments/receipts whose structured AR/AP invoice-Key line reference does not resolve to any current invoice -- the general form of a 'missing invoice' (e.g. a supplier payment structurally allocated to a Purchase Invoice Key that doesn't exist yet). Never uses the transaction's free-text description to decide this.
| Name | Type | Req | Description |
|---|---|---|---|
| from_date | – | – | – |
| resource | string | yes | – |
| to_date | – | – | – |
Structured output declared, but exposes no named fields.
No examples provided.
find_duplicate_transactions Find Duplicate Transactions ~61
Exact-match duplicate detector: Customer/Supplier + Reference + Date + total + line signature must ALL match. Partial matches are returned as unresolved, never flagged as duplicates.
| Name | Type | Req | Description |
|---|---|---|---|
| from_date | – | – | – |
| resource | string | yes | – |
| to_date | – | – | – |
Structured output declared, but exposes no named fields.
No examples provided.
find_records Find Records ~84
Exact-match structured filter over a collection (client-side; Manager's own query API has no field-value filter, only term/sort/paging). filters is {field_name: expected_value}; every field must match exactly. Never does fuzzy/partial/amount-only matching.
| Name | Type | Req | Description |
|---|---|---|---|
| filters | object | yes | – |
| max_pages | integer | – | – |
| resource | string | yes | – |
Structured output declared, but exposes no named fields.
No examples provided.
find_suspense_candidate_accounts Find Suspense Candidate Accounts ~63
Chart-of-accounts rows whose structured Name matches common placeholder-account naming (suspense, uncategorised, clearing, ...). Candidates for human confirmation only -- never treated as the suspense account automatically, and never based on any transaction's free-text description.
Input schema present but exposes no named parameters.
Structured output declared, but exposes no named fields.
No examples provided.
find_unallocated_transactions Find Unallocated Transactions ~43
Receipts/payments with no AR/AP invoice allocation on any line.
| Name | Type | Req | Description |
|---|---|---|---|
| from_date | – | – | – |
| resource | string | yes | – |
| to_date | – | – | – |
Structured output declared, but exposes no named fields.
No examples provided.
general_ledger_summary General Ledger Summary ~68
Single-pass general-ledger consistency check: sums every Lines[] Amount (or Debit-Credit) grouped by Account across all transaction types. overall_net should be ~0 in a balanced ledger; per_account_net surfaces accounts worth investigating.
| Name | Type | Req | Description |
|---|---|---|---|
| from_date | – | – | – |
| to_date | – | – | – |
Structured output declared, but exposes no named fields.
No examples provided.
get_fixed_asset Get Fixed Asset ~29
Fetch one Fixed Asset form by key (read-only).
| Name | Type | Req | Description |
|---|---|---|---|
| fixed_asset_key | string | yes | – |
Structured output declared, but exposes no named fields.
No examples provided.
get_record Get Record ~67
Fetch one collection record by GUID via Manager form endpoint (e.g. /customer-form/{key}). chart_of_accounts has no single form. For bank/cash account detail use resource=bank_accounts (not bank_balances).
| Name | Type | Req | Description |
|---|---|---|---|
| key | string | yes | – |
| resource | string | yes | – |
Structured output declared, but exposes no named fields.
No examples provided.
get_report_definition Get Report Definition ~92
Read-only GET of a stored Manager report definition (settings only, never calculated rows). report_type is e.g. 'aged-receivables' or 'trial-balance' (without '-form'); key is the definition GUID. Manager has no list endpoint for definitions, so the key must be known. Never creates or edits definitions.
| Name | Type | Req | Description |
|---|---|---|---|
| key | string | yes | – |
| report_type | string | yes | – |
Structured output declared, but exposes no named fields.
No examples provided.
get_server_info Get Server Info ~104
Identify exactly which manager-mcp process you're connected to: package version, local source path, git commit (+ dirty flag), pid, process start time, registered tool count/names, transport, and effective scopes. Read-only, no Manager API call. Run this after any source edit + reload to confirm the new code is actually live -- pid and process_started_at change on a real restart even when git_sha does not (uncommitted edits), which is the reliable signal.
Input schema present but exposes no named parameters.
Structured output declared, but exposes no named fields.
No examples provided.
ledger_transactions Ledger Transactions ~171
Historical transaction data from Manager's account-level /transactions ledger (GET only). Every row names its account, type, counterparty, tax fields, debit, credit and signed amount (debit positive). Manager ignores dates on this endpoint, so from_date/to_date (YYYY-MM-DD) are filtered here; the full ledger is fetched and completeness reported. Results page with skip/limit (default 500, max 5000). Not a finished report; not an as-at balance.
| Name | Type | Req | Description |
|---|---|---|---|
| account | – | – | – |
| bank_account | – | – | – |
| customer | – | – | – |
| from_date | – | – | – |
| limit | integer | – | – |
| reference | – | – | – |
| skip | integer | – | – |
| supplier | – | – | – |
| tax_only | boolean | – | – |
| to_date | – | – | – |
| transaction_type | – | – | – |
Structured output declared, but exposes no named fields.
No examples provided.
list_incomplete_reconstructions List Incomplete Reconstructions ~91
Invoice-reconstruction attempts (propose_*_invoice_reconstruction / apply_*_invoice_reconstruction) that started but have not completed: the created invoice's key if one exists, which cited transactions have been repointed, and which remain. Calling apply again with the same proposal_token resumes from exactly this state rather than starting over. Reads only the local audit log; makes no Manager API call.
Input schema present but exposes no named parameters.
Structured output declared, but exposes no named fields.
No examples provided.
list_records List Records ~108
Search/page a curated collection. Core: customers, suppliers, sales_invoices, purchase_invoices, chart_of_accounts, bank_accounts. Also writable domains when present in discovery (e.g. receipts, payments, sales_quotes). bank_accounts is the searchable collection; use bank_balances for snapshot balances.
| Name | Type | Req | Description |
|---|---|---|---|
| page_size | integer | – | – |
| resource | string | yes | – |
| skip | integer | – | – |
| sort_by | – | – | – |
| sort_by_desc | – | – | – |
| term | – | – | – |
Structured output declared, but exposes no named fields.
No examples provided.
list_resources List Resources ~40
List curated Manager.io capabilities. Default is read-only (30 tools). Task tools register when write scopes match; CRUD tools are deprecated unless raw scope is set.
Input schema present but exposes no named parameters.
Structured output declared, but exposes no named fields.
No examples provided.
manager_report_catalogue Manager Report Catalogue ~66
Read-only catalogue of Manager report types: which API representation exists (settings only, raw feed, current state), which date parameters exist, which views are application-only, and which MCP tool covers each. Also classifies the legacy report tools (current state vs raw feed vs reconstruction).
Input schema present but exposes no named parameters.
Structured output declared, but exposes no named fields.
No examples provided.
profit_and_loss Profit And Loss ~49
Raw /profit-and-loss-statement-transactions rows (read-only). NOT Manager's Profit and Loss Statement; see reconstructed_profit_and_loss.
| Name | Type | Req | Description |
|---|---|---|---|
| from_date | – | – | – |
| to_date | – | – | – |
Structured output declared, but exposes no named fields.
No examples provided.
reconcile_period Reconcile Period ~80
Read-only PERIOD reconciliation report composed entirely from Manager's own transaction data (no external system is consulted). Every exception carries exact Manager Keys. P&L/Balance Sheet/VAT sections surface raw transaction feeds with an explicit notice where Manager API2 does not expose computed report totals -- never a fabricated total.
| Name | Type | Req | Description |
|---|---|---|---|
| from_date | – | – | – |
| to_date | – | – | – |
Structured output declared, but exposes no named fields.
No examples provided.
reconstructed_aged_payables Reconstructed Aged Payables ~71
RECONSTRUCTED aged payables as at a date from the /transactions ledger (authoritative: false; NOT Manager's Aged Payables report). Same method and caveats as reconstructed_aged_receivables.
| Name | Type | Req | Description |
|---|---|---|---|
| as_at | string | yes | – |
| include_zero | boolean | – | – |
Structured output declared, but exposes no named fields.
No examples provided.
reconstructed_aged_receivables Reconstructed Aged Receivables ~88
RECONSTRUCTED aged receivables as at a date from the /transactions ledger (authoritative: false; NOT Manager's Aged Receivables report). Ages by transaction date with oldest-first allocation; returns the control account total and whether party balances sum to it. Never treat as official.
| Name | Type | Req | Description |
|---|---|---|---|
| as_at | string | yes | – |
| include_zero | boolean | – | – |
Structured output declared, but exposes no named fields.
No examples provided.
reconstructed_profit_and_loss Reconstructed Profit And Loss ~61
RECONSTRUCTED profit and loss by account for a period from the /transactions ledger (authoritative: false; not Manager's Profit and Loss Statement, no group layout).
| Name | Type | Req | Description |
|---|---|---|---|
| from_date | string | yes | – |
| to_date | string | yes | – |
Structured output declared, but exposes no named fields.
No examples provided.
reconstructed_trial_balance Reconstructed Trial Balance ~101
RECONSTRUCTED trial balance from the /transactions ledger as at a date (authoritative: false; not Manager's Trial Balance). Balance sheet accounts are cumulative to as_at; P&L accounts cover period_start..as_at (default 1 Jan of the as_at year, an assumption); earlier P&L is one prior-periods line. Reports whether debits equal credits.
| Name | Type | Req | Description |
|---|---|---|---|
| as_at | string | yes | – |
| period_start | – | – | – |
Structured output declared, but exposes no named fields.
No examples provided.
tax_summary Tax Summary ~52
Raw /tax-summary-transactions rows (read-only). No date support and not a VAT return; for dated tax rows use ledger_transactions with tax_only=true.
| Name | Type | Req | Description |
|---|---|---|---|
| from_date | – | – | – |
| to_date | – | – | – |
Structured output declared, but exposes no named fields.
No examples provided.
trial_balance Trial Balance ~49
Raw /trial-balance-transactions rows (read-only). NOT Manager's Trial Balance report and no account per row; see reconstructed_trial_balance.
| Name | Type | Req | Description |
|---|---|---|---|
| from_date | – | – | – |
| to_date | – | – | – |
Structured output declared, but exposes no named fields.
No examples provided.
verify_invoice_balance Verify Invoice Balance ~73
Self-computed invoice balance: invoice total (its own Lines) vs. the sum of every receipt/payment line that structurally allocates to it. Does not trust any computed 'balance' field Manager may or may not expose on the form response.
| Name | Type | Req | Description |
|---|---|---|---|
| key | string | yes | – |
| resource | string | yes | – |
Structured output declared, but exposes no named fields.
No examples provided.
How do I install the Onexur Manager MCP server?
Onexur Manager MCP runs locally as a PyPI package, launched with uvx mcp-manager.io. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.
pypi · mcp-manager.io
claude mcp add onexuross-manager-mcp -- uvx mcp-manager.io
What is the Onexur Manager MCP server?
Onexur Manager MCP is listed in the public MCP registry as io.github.onexurOSS/manager-mcp. MCP server for Manager.io bookkeeping: read-first with opt-in scoped task and write tools. This page covers its PyPI package (mcp-manager.io).
Is the Onexur Manager MCP server safe to use?
Onexur Manager MCP scores 73 out of 100 on VerifyMCP. We found no known CVEs affecting it as of 4 November 2026. Its build provenance is signed and verified. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.
What tools does the Onexur Manager MCP server expose?
Onexur Manager MCP exposes 30 tools: list_resources, get_server_info, list_records, get_record, get_fixed_asset, and 25 more. Their descriptions and schemas cost roughly 2,160 tokens of context every time the server is loaded.
Is the Onexur Manager MCP server still maintained?
Onexur Manager MCP is still listed as active in the MCP registry. We last reached this channel on 4 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.
What licence is the Onexur Manager MCP server under?
Onexur Manager MCP declares the AGPL-3.0-or-later licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.