Guides · Updated 9 November 2026; comparison checked 9 November 2026

A portfolio tracker that works with a local AI model

If you want to ask an AI about your portfolio without sending the portfolio to an AI company, you need two things on your own computer: the tracker's data and the model. Fortunest's desktop app keeps the portfolio in a database on your disk and runs its whole assistant on Ollama or LM Studio. Wealthfolio does the same in open source, with a Linux build. This guide shows the setup, what still needs the internet, and four alternatives checked on their own pages.

Quick answer

Yes: the Fortunest desktop app, which we build, keeps the portfolio in a database on your own computer and runs its whole assistant on a local model through Ollama or LM Studio, so that conversation stays on the machine. On Pro, a synchronized hosted copy can also reach external agents over MCP, including a nine-tool read-only edition sized for on-device models. Wealthfolio is the best open-source alternative, with Ollama, LM Studio and a Linux build, and Ghostfolio is best if you already run a home server. MCPFolio and Portfolixir are early open-source projects for people comfortable running code from GitHub.

The short answer

Step one: the portfolio on your own disk

A local model only keeps your portfolio private if the portfolio is local as well. In the hosted web app the portfolio lives on Fortunest's server, and pointing that app at a model on your laptop needs a public tunnel, which the manual treats as an advanced, at-your-own-risk setup. The desktop app removes that problem: it runs the portfolio engine on your computer and keeps transactions, sources, settings and the encryption key for any API keys in a SQLite database in its own data folder — ~/Library/Application Support/Fortunest on a Mac, %APPDATA%\Fortunest on Windows. Back that folder up and you have backed up the app. The privacy manual lists exactly what is in it.

The Mac app (Apple Silicon, macOS 26 or newer) is signed and notarised and needs no account. The Windows build is not code-signed yet, so SmartScreen warns on first run, and it fetches prices only after you sign in with a free Fortunest account. There is no Linux build. Both are on the download page.

Step two: pair the assistant with Ollama or LM Studio

On desktop the assistant starts on a local model, because there is no hosted free AI budget there. Both servers are free, and the app looks for them on localhost by default, so on the same computer there is nothing to type in. These are the steps from the local-model manual:

LM Studio

  1. Install LM Studio from lmstudio.ai and download a model from its search tab — openai/gpt-oss-20b on a 16 GB+ machine, or an 8B-class Llama or Qwen model on 8–16 GB.
  2. When loading the model, raise Context Length to at least about 32,000 tokens, ideally 50,000 or more. It is a per-load setting: reloading the model applies it.
  3. Start the server on the Developer tab. Its default address, http://127.0.0.1:1234, is where Fortunest looks.
  4. In Fortunest, open ⚙ Settings → Assistant → LM Studio. The loaded model appears in the dropdowns; pick the conversation and fast models and press Save.

Ollama

  1. Install Ollama from ollama.com. It runs in the background at http://localhost:11434, the address the app probes.
  2. Get a model from ⚙ Settings → Assistant → Ollama, which offers a curated list with disk sizes and downloads it with a progress bar, or run ollama pull llama3.1:8b.
  3. The context window is handled for you: Fortunest requests 32,768 tokens on every Ollama call. Your machine still needs the memory to serve it.
  4. Pick the models in ⚙ Settings → Assistant and press Save.
Ollama configuration with not detected status and the default localhost server address
The Ollama provider fields with the default http://localhost:11434, captured 9 September 2026 with no model connected — a configuration example, not a test of local inference.

Detection is live: while the Assistant settings are open, the app re-checks the server every few seconds, so a model you load in LM Studio appears without reopening anything. Ollama and LM Studio also report whether a model can call tools. A model that can fetches the portfolio data a question needs; one that cannot is sent the portfolio context with every message instead. The context: figure in the chat header shows how much of the model's window a message uses, and a message the model cannot hold is refused with a line that says what to change, rather than sent.

A hardware reality check: the model and its context have to fit in RAM or GPU memory. As a rough guide for quantised models, an 8B model wants about 6–8 GB free, a 20B-class model about 13–16 GB. A connection that works says nothing yet about answer quality or speed; try a smaller model before a smaller window. Screenshots need a model with vision support, and the desktop app's AI import reads PDFs with a text layer only.

The MCP mini edition for on-device models

The built-in assistant is one way to talk to the portfolio; an external agent is the other. Fortunest's MCP server has a small edition at https://app.fortunest.ai/mcp/mini, made for on-device models — Apple Intelligence behind Siri in the MCP Agent iPhone app — whose context windows are too small for the full catalogue. It offers nine read-only tools (summary, top holdings, one holding, trade plan, allocation, risk, upcoming events, recent trades, watchlist) and answers in a few spoken sentences of at most 700 characters. Sign-in and permissions are the same as for the full /mcp endpoint; the MCP reference has the details.

Two honest limits. MCP connections are a Pro feature (every new account gets a 14-day Pro trial). And the endpoint serves the hosted portfolio: a desktop user turns on Pro synchronization in the Mac app first (the Windows build has no sync), which copies portfolio inputs, not provider keys or login credentials, to the hosted account. The model can run on your device; the portfolio it reads is then also on Fortunest's server. If you want nothing hosted, use the built-in assistant on the desktop app instead.

Offline mode

The Mac app (since 0.2.6) has an Online / Offline switch at the left of the top bar. Offline mode blocks every outside service the app contacts on its own, and any other internet host, before the connection is made. Two things are always allowed: this computer, which includes a local model on Ollama or LM Studio, and the exact address you set for that model when it is on your local network. With the switch on, the portfolio, charts and history keep working from the data on the computer, prices freeze at their last cached values, and the assistant answers on the local model. Per-service switches can instead block, say, logos, SEC filings, FRED and cloud AI while prices keep updating. The assistant can add blocks when you ask; going back online is always your own click. The Windows build has an earlier, narrower Offline checkbox. All of it is in the Offline mode section.

What still needs the internet

A local model decides where the AI request runs. It does not switch the other services off — Offline mode or its per-service switches do that.

The comparison

Each cell is what the vendor's own pages say, checked on 9 November 2026. Not described means the pages we read do not mention it; not checked means we did not look.

Fortunest desktop1 Wealthfolio2 Ghostfolio3 MCPFolio4 Portfolixir5
What it is
  • Desktop app: macOS (Apple Silicon, macOS 26+) & Windows x64
  • Browser app too
  • Apps for macOS, Windows, Linux, iPhone, iPad, Android
  • Self-hosted Docker
  • Self-hosted web app in Docker
  • Also a hosted cloud service
  • A local web app run from source (FastAPI, conda)
  • Self-hosted Elixir/Phoenix app with PostgreSQL
Where the data sits
  • SQLite on your disk
  • Optional Pro sync copies it to the hosted account
  • Local SQLite database
  • Optional paid Connect sync
  • Your own server
  • Encrypted files in a local folder, password-derived key
  • "one dataset, one instance, one operator"
Built-in assistant on a local model
  • Ollama or LM Studio, auto-detected on localhost
  • The default on desktop
  • Reads holdings and the screen, drives the dashboard
  • Ollama, LM Studio or any OpenAI-compatible server
  • Needs a model with tool calling
  • No built-in assistant described
  • Ollama only — default llama3.2:3b
  • None — it "never calls an LLM itself"
MCP for external agents
  • Pro: /mcp, and /mcp/mini with nine read-only tools for on-device models
  • Serves the hosted portfolio; the desktop bridge needs Pro sync
  • In the app; on desktop binds to 127.0.0.1
  • Scoped, expiring tokens; LM Studio and Jan among its clients
  • Experimental, off by default
  • Reads, imports activities, updates cash
  • MCP is its market-data layer (eight tools, Yahoo Finance)
  • Not a door for other agents into your portfolio
  • MCP companion over stdio or HTTP
  • Profiles: read, book, full
Offline
  • Cached analysis and the local model work offline
  • An Offline switch blocks every outside service (Mac)
  • Local database; its FAQ names market data and the updater as the outside calls
  • Not described
  • Not described; market data from Yahoo Finance
  • Binds to loopback by default; offline use not described
Getting data in
  • 29 broker CSV exports
  • 6 direct exchange & broker connections (Mac)
  • 22 brokers via SnapTrade in the web app
  • CSV and manual entry
  • Broker imports in paid Connect
  • CSV & JSON, REST API
  • No broker connections
  • Manual: ticker, shares, cost basis
  • Portfolio Performance CSV/JSON
  • No broker sync
Taxes
  • Pro: tax lots, the Czech time test and 100 000 CZK limit by default, settings for similar rules
  • Computed online
  • Not checked
  • Not checked
  • Not described
  • Not described
Backtest on your real trades
  • Free: replays a trade plan over your dated transactions and cash flows
  • Not checked
  • Not checked
  • Not described
  • Not described
Open source
  • No
  • Yes — AGPL-3.0
  • Yes — AGPL-3.0
  • Yes — BSD 3-Clause
  • Yes — MIT
Linux
  • No Linux build
  • Yes
  • Docker images for Linux
  • Not stated
  • Docker Compose
Maturity
  • Packaged releases; neither build updates itself
  • Packaged releases
  • Official Docker images
  • Labelled educational
  • "no claim of production readiness"
Price
  • Free plan · Pro €6.99/mo or €69/yr
  • Core app free · Connect from $2.99/mo
  • Self-hosting free
  • Free
  • Free

All cells were checked against the sources below on 9 November 2026. Prices are each vendor's list price and, for Fortunest, before VAT. "Not described" is a statement about those pages on that date, not about the product.

The verdicts

Fortunest desktop — our pick

Best for: a full portfolio dashboard on your own disk, with the whole assistant on a local model, without running a server.

Free plan · Pro €6.99/mo or €69/yr · download

The case for it is what the local model gets to work with. The assistant on Ollama or LM Studio is the same one the hosted app has: it sees your holdings and the screen you are on, explains a metric with the card's numbers, filters the holdings table from a sentence and drives the dashboard. Around it sit the things a small open-source tracker usually lacks: the Mac app's six direct exchange and broker connections (Binance, Coinbase, Coinmate, Interactive Brokers Flex, Kraken, Trading 212) and 29 broker CSV exports; Pro tax lots with the Czech rules by default and settings for similar regimes; a free backtest that replays a trade plan over your own dated transactions; and, when you want it, Pro synchronization with the hosted app and an MCP server for Claude, ChatGPT, Codex and the on-device /mcp/mini edition.

Where it falls short: it is not open source, so the data-flow claims are documented behaviour rather than code you can audit; there is no Linux build; the Windows build (v0.2.3) is older, unsigned and lacks the direct connections and sync; neither build updates itself; market prices are still fetched by ticker; Pro tax calculations run on the Fortunest server; and MCP, including the mini edition, needs a synchronized hosted copy rather than the local database alone.

Wealthfolio

Best for: open source, local storage and a local AI in the same app, on any desktop including Linux.

Core app free · Connect from $2.99/mo

Wealthfolio is the strongest alternative here and wins outright on two points: it is open source under AGPL-3.0, and it runs on Linux as well as macOS, Windows, iPhone, iPad and Android. Its data stays in a local SQLite database and the home page says "No account required". The assistant takes Ollama, which its docs recommend for privacy, LM Studio or any OpenAI-compatible server, or your own key for a cloud provider; the docs state that raw activities never go to the model, only tool calls and their results. Its MCP server binds to 127.0.0.1 on desktop, uses scoped tokens that expire, and names LM Studio and Jan among the clients that can connect.

Where it falls short: automatic broker imports and cross-device sync are in the paid Connect service; the assistant needs a model that can call tools; and tax reports and backtests were not checked for this guide.

Ghostfolio

Best for: people who already run a home server and want to connect their own AI client.

Self-hosting free — AGPL-3.0

Ghostfolio is the established self-hosted tracker: official Docker images, AGPL-licensed code and data on hardware you control. Its README describes an experimental MCP server, off until you set ENABLE_FEATURE_MCP, that lets an AI client read the portfolio, import activities and update cash balances, with access set by the level you grant. Any MCP client you run, including one on a local model, can use it. The Fortunest vs Ghostfolio page compares the rest.

Where it falls short: there is no assistant inside the app, so the local-AI part is yours to assemble; the MCP server is experimental; there are no broker connections; and the container, database, updates and backups are your work.

MCPFolio

Best for: a developer who wants a small local-first analyst on Ollama to read and modify.

Free — BSD 3-Clause

MCPFolio describes itself as "a local-first, privacy-preserving financial analyst powered by a local LLM". It is a FastAPI backend with a browser dashboard and a chat advisor that runs on Ollama, llama3.2:3b by default. Holdings are entered by hand and stored encrypted with a key derived from your password. Its MCP server is the analyst's market-data layer — snapshots, news, sentiment and macro context from Yahoo Finance — rather than a way for other agents to reach your portfolio.

Where it falls short: it is a source checkout with a conda environment, not an installer; holdings are typed in by hand; and it is labelled educational, with a very small user base on GitHub.

Portfolixir

Best for: one person who runs Docker and wants their own AI agent to keep the books.

Free — MIT

Portfolixir is a self-hosted Elixir/Phoenix app on PostgreSQL — "one dataset, one instance, one operator" — with a web UI, a local JSON API and an MCP companion over stdio or HTTP whose profiles go from read-only to booking transactions. It never calls a model itself: the agent you run, local or not, does the talking. Data comes in from Portfolio Performance exports, or through a prompt that has your agent write a converter for a bank's file.

Where it falls short: its own docs make "no claim of production readiness"; there is no broker sync; the web UI is open unless you set a password; and there is no built-in assistant.

How we compared

We took the four products ChatGPT named on 9 November 2026 when asked whether a portfolio tracker works with a local LLM like Ollama, added ourselves, and read each one's own site, documentation or source repository on the same day — never a review site. The rows are the questions that decide a local-AI setup: where the data sits, whether the assistant runs on your model, how other agents get in, what works offline and what it takes to get your data in. We build Fortunest, so we are not neutral; the verdict names where Wealthfolio beats us.

Questions people ask

Is there a portfolio tracker that works with a local LLM like Ollama?

Yes. Fortunest's desktop app pairs its built-in assistant with Ollama or LM Studio running on the same computer and starts on a local model. Wealthfolio supports Ollama, LM Studio and other OpenAI-compatible servers. MCPFolio runs its advisor on Ollama. Ghostfolio and Portfolixir have no built-in assistant on a local model; an AI client you run yourself connects to them over MCP.

Does a local model keep my portfolio on my computer?

Only if the tracker is local too. In Fortunest's desktop app the portfolio sits in a SQLite database on your disk and, with Ollama or LM Studio on the same computer, the assistant's request is processed there. The hosted web app is different: its server cannot reach localhost on your machine, and a local model does not turn a hosted portfolio into local storage.

Which local model should I use with Fortunest?

One your memory can hold with a context window of at least about 32,000 tokens. The manual suggests openai/gpt-oss-20b on a 16 GB+ machine, or an 8B-class Llama or Qwen model on 8 to 16 GB. Fortunest requests a 32,768-token window from Ollama; in LM Studio you set the context length when loading the model. Screenshots need a model with vision support.

Does a local-AI portfolio tracker still need the internet?

For fresh prices, yes. Fortunest's desktop app fetches quotes by ticker symbol from a shared market-data cache, never quantities or amounts, and cached analysis keeps working offline. Logos, SEC filings and FRED rates come from those public sources, and cloud AI, Pro tax calculations, Social and hosted sync need a connection. The Mac app's Offline mode blocks every outside service while still allowing a local model on the same computer.

Can an on-device model use Fortunest over MCP?

On Pro, yes, through https://app.fortunest.ai/mcp/mini: a small edition of the MCP server with nine read-only tools and short answers, made for on-device models such as Apple Intelligence behind Siri in the MCP Agent iPhone app. It reads the hosted portfolio, so a desktop user turns on Pro synchronization in the Mac app first.

Sources

  1. Fortunest — the download page for builds, versions and signing; the local-model setup; Offline mode; the desktop privacy chapter; the MCP reference for /mcp/mini; the Taxes chapter; and the backtest guide.
  2. Wealthfolio — product site, AI assistant docs, MCP server docs, FAQ and the source repository for the licence (9 November 2026).
  3. Ghostfolio — the source repository and README (9 November 2026).
  4. MCPFolio — the source repository and README (9 November 2026).
  5. Portfolixir — the documentation site and the source repository (9 November 2026).

Signals, analyses and assistant answers in Fortunest are informational — not financial or tax advice.