npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

saldo-mcp

v0.1.9

Published

Saldo local connector — read-only MCP bridge between Nordic bank accounts and AI assistants.

Readme

saldo-mcp

npm

Ask your AI about your money — without your money data ever leaving your machine.

saldo-mcp is the open-source engine behind Saldo: a read-only MCP server that connects Swedish/Nordic bank accounts to Claude, ChatGPT, and any MCP-compatible assistant. It runs on your computer, fetches data directly from the bank via Enable Banking's open-banking API, and keeps an encrypted local cache — so your transaction history accumulates beyond the bank's ~90-day window, and nothing financial ever touches anyone else's servers. Including ours.

Principles

  • Read-only, always. Account-information consents only. Payment initiation isn't a disabled feature — it's a capability this codebase does not contain.
  • Privacy by architecture. The engine calls the bank API from your device. The optional managed broker (hosted by us, for the paid tiers) handles consent and short-lived keys only; it has no endpoint that can receive financial data.
  • Yours to run. Self-hosting with your own free Enable Banking application is free forever, no account with us required.

Quick start (self-host)

Requirements: Node 24+, a Swedish/Nordic bank account, and a free Enable Banking application (their Restricted Production tier: link your own accounts, real data, no contract).

No install needed to try it — state lives in ~/.saldo/, not in the package:

npx saldo-mcp init                    # wizard: managed or self-host (paste your EB app id + .pem path)
npx saldo-mcp institutions SE
npx saldo-mcp link "SE:Your Bank"     # BankID in the browser
npx saldo-mcp sync                    # pull history into the encrypted cache
npx saldo-mcp doctor                  # ✓/✗ health checks
npx saldo-mcp connect-claude          # register in Claude Desktop, restart Claude

connect-claude registers the server in Claude Desktop (writes its config) and in Claude Code (via claude mcp add, if the CLI is installed) — launched via npx, absolute path, pinned to the current version; re-run it after upgrades. Prefer a fixed install? npm install -g saldo-mcp gives you the saldo command and pins Claude to that install instead.

Prefer running from source? git clone https://github.com/pixby/saldo-mcp.git && cd saldo-mcp && npm install && npm run build, then use node dist/cli/index.js in place of saldo.

Then ask Claude: "What did I spend on groceries last month?"

(npm package coming: npx saldo-mcp init — after which the command is just saldo.)

Uninstall

Everything lives on your machine — removal is ordinary file deletion:

npx saldo-mcp disconnect-claude   # unregister from Claude Desktop + Claude Code
rm -rf ~/.saldo                   # config, encrypted cache + key
npm uninstall -g saldo-mcp        # if you installed globally

Bank consents live at your bank (revoke in Enable Banking's control panel; they also expire on their own after ~180 days).

MCP tools

Seven read-only tools, designed so assistants answer cheaply from pre-computed summaries instead of re-deriving totals from raw dumps:

list_accounts · get_balances · get_transactions (date + amount filters, one or all accounts) · search_transactions (full-text) · spending_by_category (own Nordic merchant categorizer, or by exact counterparty) · get_recurring_charges · compare_periods

Architecture notes

  • Provider-neutral core: everything above src/providers/provider.ts (BankProvider) speaks provider-neutral domain types — Enable Banking is the backend today; others can slot in without touching the engine or tools.
  • Cache: node:sqlite + AES-256-GCM at rest (no native deps). Only ids and booking dates are stored in the clear (for indexed range queries); amounts, names, and descriptions never hit disk unencrypted.
  • Transports: stdio (this repo's default — your MCP client launches it) and Streamable HTTP on 127.0.0.1 (used by the Saldo desktop app).
  • Money is integer minor units (öre) internally; formatting to kr happens only at presentation.
  • Tests: npm test — 54 integration/unit tests over a deterministic fake provider (no bank, no network, no secrets).

Relationship to Saldo

This repo is the engine. Saldo wraps it in a desktop app (macOS/Windows/Linux) with one-click assistant connections and a managed tier where you bring only your BankID. Self-hosting this engine is and stays free.

License

MIT © Pixby Media AB