Connect your AI assistant
Investment Analyzer runs a hosted MCP server — a way for an AI assistant to call the app's own data and actions directly, instead of you copying numbers into a chat window and back out again. This page covers what connecting one gets you, how to set it up, and what to actually ask it.
What this is
Connect an MCP-capable assistant — Claude Code, Claude Desktop, or another client that speaks the protocol — and it can read your portfolio, record trades, import a CSV, update a balance, and stress-test your retirement plan, all under your own sign-in.
It acts as you, not as a separate account, so it can only do what your own role in the household allows: a viewer's assistant can read everything a viewer can and write nothing, exactly like a viewer signed into the app directly. See Roles.
Connecting
The server is hosted, so there is nothing to install and no Node on your machine — you point the client at a URL and sign in. That is the whole setup, on every client below.
Claude Code
claude mcp add --transport http --scope user inv https://mcp.inv.randomfact.com
--scope user makes it available in every project; drop it to scope the
registration to the current one instead. In a new Claude Code session, run
/mcp to confirm inv shows as connected — a registration added from the
shell is only picked up at the start of a session, not one already running.
Connecting sends you straight through an OAuth sign-in — your Google account, the same one you use to sign in to the app itself. The hosted server won't open a session without it, so this happens right away rather than waiting for your first question.
Register it as inv. That name is what makes the two ready-made commands
below read /inv:plan-review and /inv:checkup — it's purely a client-side
label, so if you've already added the server under a different name, both
still work, just under that prefix instead.
Claude Desktop and claude.ai
Both take the server as a custom connector, and one added in either place
shows up in the other — and on your phone — the next time you sign in. Open
Customize → Connectors, click the +
beside Connectors, choose Add custom connector, and paste:
https://mcp.inv.randomfact.com
You can leave Advanced settings alone; the server registers your client for you. Sign in with Google in the tab that opens. On a Team or Enterprise plan, an owner adds the connector once for the organization and everyone else clicks Connect on it.
Other clients that take a URL
Anything else that speaks the protocol over a remote connection wants the same
address — https://mcp.inv.randomfact.com, no path, no API key — and runs the
same sign-in.
Don't have an MCP-capable assistant, or can't add a server to the one you have? Import with an AI assistant covers using an ordinary chatbot for the CSV-shaping part of an import, with no live connection at all — the no-MCP fallback lane.
What the assistant already knows
The moment it connects, the server hands the assistant its own instructions, plus a lookup of topics it can pull in as needed. You don't have to teach it the CSV format or the shape of the API — ask for the outcome, and it looks up the how:
- Portfolio data — which read answers which question, what the priced-as-of date means, and how to chase down a holding showing no value.
- Recording trades — entering trades one at a time, in bulk, or as a CSV, and how crypto tickers are spelled.
- Updating balances — balance snapshots, the balances CSV, and a holdings account's cash anchors.
- Interrogating the plan — the loop behind a "what if?" question on the retirement plan, covered in What to ask below.
What to ask
A few starting points, one per capability.
Import this trade history into my Brokerage account.
Paste the rows or attach the file, and ask for a preview before anything is committed — the import tools support a dry run that reports back which rows are valid, which are duplicates, and which have errors, right there in the conversation, without writing a thing. Once you're happy with what it found, ask it to go ahead. See Trades and CSV import for what a valid file looks like if you're building one from scratch rather than exporting one.
Set my checking balance to $12,400 as of June 30.
This one writes immediately — a single balance update has no preview step to ask for. If you want to check first, ask what it's about to write before you confirm; and know that a date which already has a snapshot gets replaced by the new figure, not added alongside it.
How fragile is our plan? What single change would help the most?
This is the one worth knowing about. The assistant reads the plan, then tries changes one at a time against your real accounts — a retirement year, the market assumptions, baseline spending, a goal — and reports what moves the number and by how much. Nothing is written while it does this: it's scoring copies of the plan, not the plan itself. If a finding is worth keeping, it can save it as a scenario beside your real plan — a separate step, and only with your say-so.
That whole loop is ready-made as a command, if you're using Claude Code:
/inv:plan-review [focus]— runs the sweep above and ranks what it finds. Give it a focus (/inv:plan-review healthcare) to dig into one question instead of the whole sweep.
A second command does something different, and is worth having on hand
anyway: /inv:checkup is a read-only data-health pass — price gaps, stale
prices, balances that haven't been updated in a while, today's allocation, and
the plan's score — ending in a list of what to fix. Nothing about it probes a
what-if; it just reports what already is.
Trust and boundaries
Two things above are worth stating plainly rather than only implying:
- It acts as you. Nothing it does exceeds your own role in the household, and connecting one grants it no broader account of its own.
- A what-if writes nothing. Probing the plan never touches the stored plan or a scenario; saving one is a separate, explicit step, with the score the probe actually got.
One more is genuinely new: what the assistant reads is real — the same data and the same API the app itself uses, so a figure it reports is one you could get by opening the app and looking. It isn't a second opinion on your numbers, and it doesn't know what its own model leaves out; see What the model leaves out for the modeling gaps worth keeping in mind before you act on anything it tells you.