MCP server - local by default
Don't just let AI fix it.
Learn from it.
Fixmind turns each AI-assisted fix into a local lesson you can review, search, and reuse the next time the same bug shows up.
$ fixmind review
>What must be true about the server render and the browser's first render?
Your answer: They must produce matching markup before client-only state loads.
The loop
Two ways this goes.
Without fixmind
A bug shows up. You hand it to your agent.
The agent patches it. The diff looks reasonable, so you accept it.
You move on. The reasoning behind the fix never left the chat window.
Three weeks later, the same mistake shows up in a different file.
With fixmind
A bug shows up. You hand it to your agent.
The agent patches it, then calls save_lesson.
The mistake, the root cause, and the bad/good code land in your local database.
Fixmind quizzes you on it in 1, 3, and 7 days.
Memory retrieval
Reviewed lessons come back when the next task looks familiar.
Fixmind does not just store what went wrong. It pulls a few reviewed lessons back into context so the agent reuses the rule faster instead of relearning the same mistake from scratch.
The current task looks like an older bug pattern.
The agent calls memory and gets a small, relevant set of lessons.
Less repeat debugging, faster responses, cleaner fixes.
Three reviewed lessons stay in the default retrieval set so the agent gets focused guidance instead of a full archive dump.
Only lessons that still matter stay eligible.
Memory pulls from lessons you already checked.
It surfaces a few matches, not the whole archive.
Built for how you already work
Local by default. Accounts are opt-in, not required.
Local-first
Lessons live in ~/.fixmind/learning.db. No account needed, no paid AI API in the loop.
Speaks MCP
Works with Claude Code, Cursor, and Codex. npx fixmind setup wires itself into whatever you already run - on this device, or scoped to a single project.
Real diffs, not summaries
Captures the actual bad and good code from your git diff - not a vague paraphrase of what changed.
Spaced recall
New lessons resurface on a schedule with a real question, so you answer before you see the takeaway.
Memory retrieval
Reviewed lessons can be pulled back into context when a new task looks familiar, so the agent reuses the rule instead of relearning the same mistake.
Token cost
Mostly free, by design.
Connecting an MCP server isn't free context-wise. Here's exactly where fixmind spends it - and where it doesn't.
Sent once per session (~2,500 tokens, average)
The server's instructions and the save_lesson schema go out when the client connects. Clients that support prompt caching reuse that across every later turn, dropping the cost to near zero ($0.001).
Silent on every other turn (0 tokens)
The tool is only called when the agent decides a fix actually taught it something - never on a whim, never on formatting or renames.
A commit-message-sized payload (~500 tokens, average)
When a lesson is saved, the problem, root cause, fix summary, and code examples together are about as big as a short commit message or review comment - costing a fraction of a cent.
A typical session
schema + instructionsreal fix
one lesson saved
Everything in between - the turns spent reading code, writing patches, running tests - calls save_lesson zero times. Later, the agent can call memory to pull a few reviewed lessons back into context when the next task looks familiar.
How it works
Four steps, none of them yours to remember.
Set up the MCP server
Use npx fixmind setup to register the MCP server with Claude Code, Cursor, or Codex on this device or just this project. No global install is required.
Fix bugs like normal
Keep working the way you already do. Your agent calls save_lesson after a fix that actually taught it something - never for renames or formatting.
Lesson stored on your machine
Problem, mistake, root cause, bad/good code, and one recall question - saved to a local database, not a server you don't control.
Browse before you forget
Due reviews, progress signals, and recurring concepts, all in the local dashboard. Prefer the terminal? fixmind review does the same job one question at a time.
Your lessons (3)
Keep server and client renders deterministic
Close the response body before throwing
Debounce the resize observer callback