Repository avatar
Search & Data Extraction
v0.13.0
active

notes-vault-mcp

io.github.gronare/notes-vault-mcp

Indexed search, schema-checked writes and session hooks for a markdown notes vault

Documentation

mindin

Memory for Claude and coding agents, kept as markdown notes you own, with a schema that holds and a tie to your git history.

Install

curl -fsSL https://mindin.dev/install.sh | sh

It installs the mindin command with uv, asks where your vault lives (a folder, an S3 bucket or a vault server), and offers to add the vault to Claude Code, Codex and Cursor; it changes nothing in them without a yes. The notes-vault-mcp package and command install and run mindin too.

A vault server

A vault server with Docker Compose, for claude.ai, Claude Desktop, mobile and every machine you work on. On the server:

curl -fsSL https://github.com/gronare/mindin/releases/latest/download/server.sh | sh

You need Docker with Compose v2, a domain pointing at the machine, and ports 80 and 443 open; an SMTP account sends sign-in links, or people sign in with GitHub. The script asks for the domain, the SMTP settings and your email, makes the master key, starts the server and prints the address to open. Install with Docker has what it does and the same steps by hand.

Without the script, on one machine: uv tool install mindin, then mindin setup.

mindin asks before it shares anonymous usage data, and sends nothing until you say yes: then, once a day, a random install id, mindin's version, the OS and CPU type and how mindin runs (plugin, CLI or server) go to signals.mindin.dev, never notes, names, paths or your vault's address. mindin setup --signals yes|no changes the answer. Configuration has the setting.

Use

Add the server's address, https://VAULT_HOST/mcp, as a custom connector in claude.ai. Claude searches, reads and writes your notes. The same search from a shell on a signed-in machine:

$ mindin search "signing in"
1 note · archive and superseded hidden

myapp  system  3 days
Areas/myapp.md
  ## Sign-in Users sign in with passkeys; email links are the fallback.

What you get

  • Notes you own. Plain markdown in a folder or an S3 bucket; open them in Obsidian, keep them in git.
  • A schema with teeth. Required fields, legal statuses and kinds, a tag vocabulary; a write that breaks the contract is refused. Start from PARA, a simple vault, a journal or your own layout.
  • A lifecycle. close archives finished work, backlog_add files what was deferred, log_append writes one line per repo per session, lint reports drift.
  • Memory tied to code. A note names the paths it describes; the session-start hook prints the commits newer than the note.
  • Search that reads your languages. Stemming, folded diacritics, synonyms, and optional search by meaning that runs on your machine.
  • Your own vault server. Accounts with passkeys, email links, GitHub or your identity provider, several vaults each, shared vaults, sealed in storage.
  • A wiki for your team. Everyone at your company's email domain joins an organisation and its wiki; their Claude searches it beside their own vault, and a guard refuses secrets.
  • A vault that moves. mindin move copies a vault between a folder, a bucket and a server, and checks every file.

Documentation

docs/ has the install guides, the how-tos for each client, the reference for every tool, command and setting, and how it works.

Contributing

See CONTRIBUTING.md. Report a vulnerability privately, as SECURITY.md describes.

License

MIT. See LICENSE.

PYPI
notes-vault-mcp
Install Command
pip install notes-vault-mcp
Runtime: uvx