Agent-native double-entry accounting ledger with x402 micropayments
Inferred from the transports this listing declares (streamable-http). A client not listed here hasn’t been ruled out — it just isn’t something Forge can confirm.
Verification confirms publisher identity (repo ownership), not code safety. The security scan covers known CVEs and suspicious install scripts.
Read from a real MCP initialize → tools/list handshake against the declared endpoint. No tool was ever invoked — tools/list is the read-only introspection call the protocol defines for this. It reflects what the server advertised at that moment; a hosted endpoint is not pinned to any version and can change without notice.
https://journalize.dev/mcp11 tools · 1322mssubmit_directiveSubmit one Beancount directive (open, transaction, close, balance,
price, note, document — any type). Paid, except your first 20
accepted writes per registered key, which are free (this specific
tool only — submit_batch is always paid, even for your first call).
Call with no payment_header firs…Submit one Beancount directive (open, transaction, close, balance, price, note, document — any type). Paid, except your first 20 accepted writes per registered key, which are free (this specific tool only — submit_batch is always paid, even for your first call). Call with no payment_header firs…
| Parameter | Type | Description |
|---|---|---|
| text* | string | — |
| public_key* | string | — |
| nonce* | string | — |
| timestamp* | string | — |
| signature* | string | — |
| payment_header | — | — |
validate_directiveFree dry-run: parse+book text against your full history without
persisting or charging anything. Still requires a valid signature
(identity/replay protection is not a billing concern).Free dry-run: parse+book text against your full history without persisting or charging anything. Still requires a valid signature (identity/replay protection is not a billing concern).
| Parameter | Type | Description |
|---|---|---|
| text* | string | — |
| public_key* | string | — |
| nonce* | string | — |
| timestamp* | string | — |
| signature* | string | — |
submit_batchSubmit up to 1000 directives atomically — all persist together or
none do. Priced 10x a single write, regardless of batch size within
the cap. Always paid — the free-trial allowance (see
submit_directive) applies to single writes only, never to batches,
even if you haven't used any free writes…Submit up to 1000 directives atomically — all persist together or none do. Priced 10x a single write, regardless of batch size within the cap. Always paid — the free-trial allowance (see submit_directive) applies to single writes only, never to batches, even if you haven't used any free writes…
| Parameter | Type | Description |
|---|---|---|
| directives* | array | — |
| public_key* | string | — |
| nonce* | string | — |
| timestamp* | string | — |
| signature* | string | — |
| payment_header | — | — |
list_directivesList raw directives (optionally filtered by account/date range). No
booking involved — cheapest paid tool. `since`/`until` are ISO date
strings (YYYY-MM-DD). Your first 2 calls per registered key are free
(independent of the write/accounts/report allowances — see
list_accounts, get_balance_shee…List raw directives (optionally filtered by account/date range). No booking involved — cheapest paid tool. `since`/`until` are ISO date strings (YYYY-MM-DD). Your first 2 calls per registered key are free (independent of the write/accounts/report allowances — see list_accounts, get_balance_shee…
| Parameter | Type | Description |
|---|---|---|
| public_key* | string | — |
| nonce* | string | — |
| timestamp* | string | — |
| signature* | string | — |
| account | — | — |
| since | — | — |
| until | — | — |
| limit | integer | — |
| payment_header | — | — |
list_accountsList all opened accounts with their currency constraints and
booking method. No booking pass involved. Your first 2 calls per
registered key are free (a separate allowance from list_directives'
and the report tier's — see those tools).List all opened accounts with their currency constraints and booking method. No booking pass involved. Your first 2 calls per registered key are free (a separate allowance from list_directives' and the report tier's — see those tools).
| Parameter | Type | Description |
|---|---|---|
| public_key* | string | — |
| nonce* | string | — |
| timestamp* | string | — |
| signature* | string | — |
| payment_header | — | — |
get_account_balanceBalance of a single account. Settles at the same fixed price
whether the account exists or not — an "unknown account" answer is
still a valid, billable response (no per-error pricing discount). No
free-trial allowance for this specific tool, unlike list_directives
(same price, but list_directiv…Balance of a single account. Settles at the same fixed price whether the account exists or not — an "unknown account" answer is still a valid, billable response (no per-error pricing discount). No free-trial allowance for this specific tool, unlike list_directives (same price, but list_directiv…
| Parameter | Type | Description |
|---|---|---|
| account* | string | — |
| public_key* | string | — |
| nonce* | string | — |
| timestamp* | string | — |
| signature* | string | — |
| payment_header | — | — |
export_ledgerExport the full ledger as literal Beancount text — a portable
snapshot for fava/bean-report/etc., not the live store. Shares a
combined free allowance of 2 with get_balance_sheet,
get_income_statement, and get_trial_balance (the "report tier") — not
2 free calls for each of those four separatel…Export the full ledger as literal Beancount text — a portable snapshot for fava/bean-report/etc., not the live store. Shares a combined free allowance of 2 with get_balance_sheet, get_income_statement, and get_trial_balance (the "report tier") — not 2 free calls for each of those four separatel…
| Parameter | Type | Description |
|---|---|---|
| public_key* | string | — |
| nonce* | string | — |
| timestamp* | string | — |
| signature* | string | — |
| payment_header | — | — |
get_balance_sheetFull realize() balance sheet — often served from cache. Settles at
the same fixed price regardless of cache hit/miss. Shares a combined
free allowance of 2 with export_ledger, get_income_statement, and
get_trial_balance (the "report tier") — not 2 free calls each.Full realize() balance sheet — often served from cache. Settles at the same fixed price regardless of cache hit/miss. Shares a combined free allowance of 2 with export_ledger, get_income_statement, and get_trial_balance (the "report tier") — not 2 free calls each.
| Parameter | Type | Description |
|---|---|---|
| public_key* | string | — |
| nonce* | string | — |
| timestamp* | string | — |
| signature* | string | — |
| payment_header | — | — |
get_income_statementIncome statement, period-scoped by since/until (ISO date strings,
both optional — omitted means whole history). Always books full
history first, then clamps the output to the requested period (never
filters input dates — see reports.py for why). Shares a combined free
allowance of 2 with export…Income statement, period-scoped by since/until (ISO date strings, both optional — omitted means whole history). Always books full history first, then clamps the output to the requested period (never filters input dates — see reports.py for why). Shares a combined free allowance of 2 with export…
| Parameter | Type | Description |
|---|---|---|
| public_key* | string | — |
| nonce* | string | — |
| timestamp* | string | — |
| signature* | string | — |
| since | — | — |
| until | — | — |
| payment_header | — | — |
get_trial_balanceTrial balance, period-scoped same as income statement — same
underlying compute, priced and audited as its own resource. Shares a
combined free allowance of 2 with export_ledger, get_balance_sheet,
and get_income_statement (the "report tier") — not 2 free calls
each.Trial balance, period-scoped same as income statement — same underlying compute, priced and audited as its own resource. Shares a combined free allowance of 2 with export_ledger, get_balance_sheet, and get_income_statement (the "report tier") — not 2 free calls each.
| Parameter | Type | Description |
|---|---|---|
| public_key* | string | — |
| nonce* | string | — |
| timestamp* | string | — |
| signature* | string | — |
| since | — | — |
| until | — | — |
| payment_header | — | — |
registerGenerate a new Ed25519 keypair for ledger identity. Returns the
private key exactly once — it is never stored server-side and cannot
be recovered if lost. This is a SEPARATE keypair from whatever wallet
you use to authorize x402 payments (payment auth and ledger identity
are two independent sig…Generate a new Ed25519 keypair for ledger identity. Returns the private key exactly once — it is never stored server-side and cannot be recovered if lost. This is a SEPARATE keypair from whatever wallet you use to authorize x402 payments (payment auth and ledger identity are two independent sig…
No input schema was published for this tool.
11 of 11 tools published a description.
Tool names and descriptions are written by the publisher and shown verbatim as inert text. They are the strings an MCP client passes to a model, so Forge scans them for prompt-injection patterns — any finding appears with the security scan above. “Privileged” is a keyword match on the tool name, not an audit of what the tool does: a benign-sounding name can still do anything.
Agent-native double-entry accounting ledger with x402 micropayments
Linked names open Forge’s index of every entry observed exposing that tool. Browse all indexed tools.
This entry publishes no npm package, so Forge has no dependency tree for it. That is a gap in coverage — not a statement that it has no dependencies.