
Company News
AWS Security Hub Adds Socket for Supply Chain Security
Socket is now in the AWS Security Hub Extended plan. Adopt it through AWS, apply committed spend, and block malicious open source packages.
mindbase-mcp
Advanced tools
MCP server for MindBase — query and write to your wiki from Claude Desktop, Cursor, Windsurf, Cline, or any MCP-compatible AI client.
Turn your MindBase wiki into the long-term memory of every AI agent you use.
A Model Context Protocol server that lets Claude Desktop, Claude Code, Cursor, Windsurf, Cline, and any other MCP-compatible client read, write, and reason about your local MindBase wiki.
Built for the engineer who wants their AI tools to actually know what they know.
mindbase://wiki/<slug>) and per-chat (mindbase://chats/<id>) resourcesdaily-digest, brainstorm, audit, connect, explain, quiz, write (surface as slash commands in clients that support MCP prompts)ask_wiki doesn't just keyword-match; it traverses your wikilink graph so the AI sees the surrounding clustercreated_via: mcp with the client/tool, so you always know what's human and what's machineNo clone, no build — npm has everything:
npx -y mindbase-mcp --help
Every client config below uses the same two lines: command: "npx", args: ["-y", "mindbase-mcp"].
git clone https://github.com/frankchu91/mindbase
cd mindbase
pnpm install
pnpm -F mindbase-mcp build
# binary at apps/mcp/dist/cli.js — use `node /absolute/path/to/apps/mcp/dist/cli.js`
# in place of the npx command in the configs below
Pick your client. Each section is copy-paste.
One command:
claude mcp add mindbase --scope user npx -- -y mindbase-mcp
Verify:
claude mcp list
# mindbase: npx -y mindbase-mcp - ✓ Connected
Restart your Claude Code session. Tools appear as mcp__mindbase__search_wiki, mcp__mindbase__list_recent, etc.
Tip: the full MindBase Claude Code plugin (slash commands like
/mb:contribute, sub-agents, auto-context hook) is a superset of this MCP server. See the main repo.
Edit ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):
{
"mcpServers": {
"mindbase": {
"command": "npx",
"args": ["-y", "mindbase-mcp"]
}
}
}
Quit Claude Desktop fully (Cmd+Q), reopen. The MindBase tools and prompts are now available.
Edit ~/.cursor/mcp.json (global) or <project>/.cursor/mcp.json (project-scoped):
{
"mcpServers": {
"mindbase": {
"command": "npx",
"args": ["-y", "mindbase-mcp"]
}
}
}
Restart Cursor.
Settings → MCP → add server with command npx and args ["-y", "mindbase-mcp"]. Or edit ~/.codeium/windsurf/mcp_config.json directly with the same shape as Cursor.
Cline reads mcp_config.json at the path it shows in its settings UI. Use the same config shape as Claude Desktop.
npx @modelcontextprotocol/inspector npx -y mindbase-mcp
Opens a browser GUI where you can click any tool, fill the input form, and see real responses against your wiki. Best place to debug.
Once connected, paste these into your AI client:
<your-top-hub-slug> and summarize the cluster in five bullets."The AI will pick the right tools (run_wiki_health, list_recent, find_related, save_chat_excerpt, the quiz prompt) on its own.
Run two servers, each pointing at a different data directory:
{
"mcpServers": {
"mindbase-personal": {
"command": "npx",
"args": ["-y", "mindbase-mcp", "--data-dir", "/Users/you/mindbase-personal"]
},
"mindbase-work": {
"command": "npx",
"args": ["-y", "mindbase-mcp", "--data-dir", "/Users/you/mindbase-work"]
}
}
}
Tools from each are namespaced (e.g. mcp__mindbase-personal__search_wiki).
mindbase-mcp [options]
--data-dir <path> Data directory (default: ~/mindbase-data)
--version, -v Print version
--help, -h Show help
Environment variables (used by the underlying LLM adapter — only when calling tools that require an LLM, e.g. ingest_source, ask_wiki, run_wiki_health):
OPENAI_API_KEY — for OpenAI modelsANTHROPIC_API_KEY — for Anthropic modelsMINDBASE_MODEL — overrides the model from mindbase.config.jsonRead-only tools (search_wiki, read_wiki_page, find_related, find_orphans, get_graph_insights, list_recent, list_chats, recall_chat) require no LLM key — they run entirely on local indexes.
49 tools, grouped by purpose. Highlights below — connect MCP Inspector for the full list with schemas.
| Tool | What it does |
|---|---|
mindbase_init_project | Scaffold a new project: README.md + context.md + index.yaml + sources/ + logs/ + artifacts/. Sets it as current. |
mindbase_load_project | Load README + context + index for a project (read-only by default; persist: true switches the current project). |
mindbase_contribute | Append a thought / source summary to today's contributor file (append-only). Accepts projectId for cross-project routing. |
mindbase_gather_sources | List contributor + research files modified since the last build. |
mindbase_atomic_write_context | Write a new context.md with snapshot-first rollback safety. |
mindbase_rebuild_index | Regenerate index.yaml from disk. |
mindbase_status | Dashboard: line counts, contributors, sources, logs, artifacts. |
mindbase_validate_structure | Check a project's layout matches the v2 contract. |
mindbase_append_log | Append an operation record to logs/<date>.md. |
mindbase_research_save | Save deep-research output to sources/research/<slug>.md. |
mindbase_migrate | One-time legacy v1 → v2 layout conversion (snapshot + recovery archive). |
mindbase_export | Bundle a project as markdown-bundle or zip-archive. |
| Tool | What it does |
|---|---|
search_wiki | Full-text search across page titles, one-liners, and slugs. Ranked, with snippets. |
read_wiki_page | Full markdown body + frontmatter + incoming/outgoing wikilinks for a slug. |
list_recent | Pages added or updated within the past N days, newest first. |
find_related | Pages connected via wikilinks, shared tags, or shared sources, with rationale. |
semantic_search | Embedding-based search; falls back to keyword if embeddings unavailable. |
search_in_project | Search restricted to pages tagged with a specific project (project frontmatter). |
ask_wiki | Natural-language Q&A with graph-aware retrieval: top hits + 1-hop neighbors as context. |
| Tool | What it does |
|---|---|
ingest_source | Save a new source (URL, paste, file) → run LLM compile → create/update wiki pages → cross-link. |
quick_capture | Save to inbox without triggering compile. For batch-processing later. |
save_chat_excerpt | Save a fragment of the current AI conversation as a new wiki page (LLM auto-titles). |
append_to_page | Append content to a section of an existing page (creates section if missing). |
update_note_section | Replace the content under a section heading on an existing page. |
tag_note | Add or replace tags on a page. |
set_visibility | Set public / internal / pii — controls inclusion in semantic search and Q&A. |
| Tool | What it does |
|---|---|
list_chats | Recent saved chat sessions, newest first. |
recall_chat | Search past saved chats by content. |
| Tool | What it does |
|---|---|
get_graph_insights | Top hubs, orphans, broken links, fragmented tag clusters. |
find_orphans | Pages with no incoming links. |
suggest_links | Wikilinks that should be added to a specific page (review mode — does not modify). |
run_wiki_health | Full pipeline: graph → insights → auto cross-link → L2 lint. Writes _insights.md. |
export_subgraph | Export a page + its N-hop neighbors as a self-contained markdown bundle. |
Tools that modify human-edited pages refuse by default and require force: true. Every AI-written page or section is tagged in frontmatter:
created_via: mcp
mcp_client: claude-desktop
mcp_tool: save_chat_excerpt
So you can always tell which content came from a person vs. an AI.
| URI | Content |
|---|---|
mindbase://recent | Markdown digest of the last 7 days of wiki updates |
mindbase://hubs | Most-linked-to pages |
mindbase://orphans | Pages with no incoming links |
mindbase://insights | Latest structural analysis report |
mindbase://wiki/<slug> | A specific wiki page (one resource per page) |
mindbase://chats/<id> | A specific saved chat session |
Resources are read-only and cheap — clients can subscribe to them as standing context without burning tool calls.
Surface as slash commands in clients that support MCP prompts (Claude Desktop, Claude Code, Cursor, etc.) — the exact prefix depends on your client and server key (e.g. /mindbase:daily-digest):
| Prompt | What it does |
|---|---|
daily-digest | Summarize what was added today, grouped by topic |
brainstorm <topic> | Brainstorm a topic, grounded in your wiki |
audit | Audit wiki health and propose fixes |
connect | Surface surprising cross-cluster connections |
explain <slug> | Re-explain a wiki page from first principles |
quiz | Quiz you on what you've recently learned |
write <topic> | Write a long-form piece grounded in your wiki |
These are just composed prompts — they instruct the AI to call the right combination of tools above. You can also write your own.
┌─────────────────────┐ stdio (JSON-RPC) ┌──────────────────────┐
│ Claude / Cursor / │ ◄───────────────────► │ mindbase-mcp-server │
│ Windsurf / etc. │ │ (this package) │
└─────────────────────┘ └──────────┬───────────┘
│ direct
▼
┌────────────────────────────────┐
│ ~/mindbase-data/ │
│ ├─ config.json │
│ └─ projects/<id>/ │
│ ├─ README.md context.md │
│ ├─ index.yaml │
│ ├─ sources/{contributors, │
│ │ research, raw}/ │
│ ├─ logs/ artifacts/ │
│ └─ state/ │
└────────────────────────────────┘
FileStore from @mindbase/core).ingest_source, ask_wiki, run_wiki_health) actually call your configured LLM. The rest run on local indexes.visibility: internal or visibility: pii are excluded from semantic search and ask_wiki by default — they're still readable by read_wiki_page if you ask explicitly."Server failed to connect" / shows red in Claude Desktop
Run the binary by hand and watch stderr:
node /absolute/path/to/mindbase/apps/mcp/dist/cli.js
# expect: [mindbase-mcp] connected · dataDir=… · client=…
If that prints fine, the issue is in your client's config (wrong path, malformed JSON).
"Cannot find module" or "ERR_MODULE_NOT_FOUND"
The dist/ directory is missing. Rebuild:
pnpm -F mindbase-mcp build
Tools return empty results
Check --data-dir points at a real MindBase data directory. The default is ~/mindbase-data. Verify with:
ls ~/mindbase-data/projects
cat ~/mindbase-data/config.json # should contain currentProjectId
"No current project"
Ask your AI client to "create a new mindbase project called " (calls mindbase_init_project), or set one manually:
echo '{"currentProjectId": "my-project"}' > ~/mindbase-data/config.json
Need to confirm the protocol works
Use Inspector for a visual UI:
npx @modelcontextprotocol/inspector npx -y mindbase-mcp
# from monorepo root
pnpm -F mindbase-mcp dev # tsx watch on src/cli.ts
pnpm -F mindbase-mcp build # tsup bundle to dist/
pnpm -F mindbase-mcp typecheck # tsc --noEmit
pnpm -F mindbase-mcp test # vitest
Source layout:
src/
├── cli.ts # bin entry — flag parsing, then start server
├── index.ts # createServer() — wires SDK + tools + resources + prompts
├── context.ts # FileStore + adapter + config loading
├── lib/
│ ├── error.ts # consistent MCP error envelope
│ ├── safe-write.ts # human-edit guard + audit-trail tagging
│ └── markdown-bundle.ts
├── tools/ # one file per tool (49 tools)
├── resources/index.ts # resource handlers for the 6 schemes
└── prompts/ # one file per prompt (7 files)
tsup bundles @mindbase/core inline, so the published package has no workspace dependencies at runtime.
MIT
FAQs
MCP server for MindBase — query and write to your wiki from Claude Desktop, Cursor, Windsurf, Cline, or any MCP-compatible AI client.
We found that mindbase-mcp demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Company News
Socket is now in the AWS Security Hub Extended plan. Adopt it through AWS, apply committed spend, and block malicious open source packages.

Research
/Security News
Popular npm packages keyv and cacheable compromised.

Security News
A misconfiguration gave three Anthropic models internet access, and one, believing it was in a simulation, shipped a credential-stealing package to PyPI.