Notes

Official registry Search and web

Local markdown notes: ranked + semantic search, tags, todos, and a wiki-link knowledge graph.

Install

Add this to your client's MCP configuration (Claude Desktop: claude_desktop_config.json; Cursor: .cursor/mcp.json; VS Code and others use the same "mcpServers" shape).

NPM package @abhishekmcp/notes
Claude Code
claude mcp add notes -e 'NOTES_DIR=<NOTES_DIR>' -e 'NOTES_READONLY=<NOTES_READONLY>' -e 'NOTES_MODEL_DIR=<NOTES_MODEL_DIR>' -- npx -y @abhishekmcp/notes@0.4.1
JSON configuration (Claude Desktop, Cursor, VS Code)
{
    "mcpServers": {
        "notes": {
            "command": "npx",
            "args": [
                "-y",
                "@abhishekmcp/notes@0.4.1"
            ],
            "env": {
                "NOTES_DIR": "<NOTES_DIR>",
                "NOTES_READONLY": "<NOTES_READONLY>",
                "NOTES_MODEL_DIR": "<NOTES_MODEL_DIR>"
            }
        }
    }
}

Environment variables

  • NOTES_DIR Directory containing your markdown notes (defaults to ~/notes).
  • NOTES_READONLY Set to 1 or true to disable all note-modifying tools.
  • NOTES_MODEL_DIR Where the semantic-search embedding model is cached.

Documentation

From the project's README on GitHub, refreshed weekly. Links open on GitHub.

Contents
  1. 🧰 mcp-suite
  2. Table of contents
  3. Servers
  4. Quickstart
  5. Install
  6. Connecting to a client
  7. Architecture & conventions
  8. Development
  9. Adding a new server
  10. Publishing
  11. Contributing
  12. License

🧰 mcp-suite

A collection of Model Context Protocol servers, built in TypeScript.

Each server lives in its own folder under servers/ and publishes to npm as an independent package, while sharing tooling through an npm workspace. Connect them to any MCP client — Claude Desktop, Claude Code, Cursor, and more.

Table of contents

Servers

ServerDescriptionStatus
notesLocal markdown notes: ranked full-text and semantic search, tags, todos, a [[wiki-link]] knowledge graph, daily notes + templates, and slash-command workflows (prompts)✅ Stable
filesSandboxed local filesystem: read, glob + content search, token-efficient edits, copy/move, soft-delete trash, zip, checksums, and dedup✅ Stable
githubGitHub: search repos/code/issues, read repos/issues/PRs/files, notifications, create issues — OAuth device flow or token✅ Stable
gitGit: status, log, diff, file history, branches/tags, gated stage/commit, and remote clone/fetch/pull/push — pure-JS, no git binary✅ Stable
sqlSQL databases: read-only query + schema introspection over Postgres & SQLite, gated writes✅ Stable
httpHTTP/REST client: ad-hoc requests + saved collections/environments, env secrets, host-allowlisted + SSRF-safe✅ Stable

More on the way: a Spotify controller, and others.

Quickstart

git clone https://github.com/Abhishekkumar2021/mcp-suite.git
cd mcp-suite
npm install      # installs deps for every workspace
npm run build    # builds every server

Install

Every server ships through every common channel. For the Claude Code plugin, add the marketplace once — /plugin marketplace add Abhishekkumar2021/mcp-suite — then install per the table. See each server's README for full config.

ServerClaude Code pluginnpm (any client)Claude Desktop (MCPB)MCP registry
notes/plugin install notesnpx -y @abhishekmcp/notesdrag notes-*.mcpb from the latest releaseio.github.Abhishekkumar2021/notes
files/plugin install filesnpx -y @abhishekmcp/filesdrag files-*.mcpbio.github.Abhishekkumar2021/files
github/plugin install githubnpx -y @abhishekmcp/githubdrag github-*.mcpbio.github.Abhishekkumar2021/github
git/plugin install gitnpx -y @abhishekmcp/gitdrag git-*.mcpbio.github.Abhishekkumar2021/git
sql/plugin install sqlnpx -y @abhishekmcp/sqldrag sql-*.mcpbio.github.Abhishekkumar2021/sql
http/plugin install httpnpx -y @abhishekmcp/httpdrag http-*.mcpbio.github.Abhishekkumar2021/http

notes defaults to ~/notes; files requires FS_ROOTS (the directories it may touch). MCPB bundles install via Claude Desktop → Settings → Extensions.

Connecting to a client

Each server's README has full configuration instructions. As an example, to use the notes server with Claude Code:

claude mcp add notes --env NOTES_DIR=$HOME/notes -- node "$(pwd)/servers/notes/dist/index.js"

Or with Claude Desktop (claude_desktop_config.json):

{
  "mcpServers": {
    "notes": {
      "command": "node",
      "args": ["/absolute/path/to/mcp-suite/servers/notes/dist/index.js"],
      "env": { "NOTES_DIR": "/absolute/path/to/your/notes" }
    }
  }
}

Architecture & conventions

A few principles hold across every server:

  • Pure-JS/WASM by default; native only when genuinely required. Servers run via npx/MCPB on any machine, so portable pure-JS/WebAssembly is strongly preferred and a native dependency is used only when genuinely required (gated + documented). In practice these servers are dependency-light: notes uses MiniSearch + WebAssembly embeddings, sql uses the sql.js WASM SQLite engine, and files uses fast-glob instead of ripgrep. npm audit stays clean.
  • Sandbox-first, layered design. Each server keeps a thin index.ts (tool registration only) over focused modules, with a single security boundary every path must pass through (realpath-containment, symlink-escape rejection, atomic writes).
  • Token-efficient by default. Pagination, head/tail/section reads, snippets, and compact graph refs keep tool output small.
  • Automated, hands-off releases. A GitHub Release tagged <server>-v<version> publishes to npm (with provenance), the official MCP registry, and attaches an MCPB bundle — all via OIDC, no secrets.
  • Tested in CI. Each server ships a committed node:test suite (unit + integration/security) run on every push.

Development

This is an npm workspaces monorepo.

npm install                      # install all workspace dependencies (run once at the root)
npm run build                    # build every server
npm run build -w servers/notes   # build a single server
npm test --workspaces --if-present  # run each server's test suite
npm run clean                    # remove all build output

Adding a new server

  1. Create servers/<name>/ with its own package.json (unique npm name) and a tsconfig.json that extends: "../../tsconfig.base.json".
  2. Put source in servers/<name>/src/.
  3. Run npm install at the root so the workspace picks it up.
  4. Add a row to the Servers table above.

All servers follow the naming standard (@abhishekmcp/<slug>). See CONTRIBUTING.md for detailed guidelines.

Publishing

Releases are automated. Cutting a GitHub Release tagged <server>-v<version> triggers publish.yml, which — authenticated entirely via GitHub OIDC (no NPM_TOKEN) — publishes the package to npm with provenance, registers it on the official MCP registry, and builds + attaches the MCPB bundle to the release.

# bump servers/<name>/package.json, commit, then:
gh release create <name>-v<version> --title "<name> v<version>" --notes "…"

Contributing

Contributions are welcome! Please read CONTRIBUTING.md and our Code of Conduct. Found a security issue? See SECURITY.md.

License

MIT © Abhishek

Frequently asked questions

What is Notes?

Local markdown notes: ranked + semantic search, tags, todos, and a wiki-link knowledge graph.

How do I install Notes?

It runs on your machine. In Claude Code: claude mcp add notes -e 'NOTES_DIR=<NOTES_DIR>' -e 'NOTES_READONLY=<NOTES_READONLY>' -e 'NOTES_MODEL_DIR=<NOTES_MODEL_DIR>' -- npx -y @abhishekmcp/notes@0.4.1. For other clients, paste the JSON configuration from this page into their MCP settings.

Does Notes need an API key?

Its registry entry lists no required key or secret. Some features may still need an account with the service it connects to.

Is Notes open source?

Yes. Its code is on GitHub under the MIT license.

Who maintains Notes?

It is published by Abhishekkumar2021. AI.tn lists it but does not maintain or endorse it.

From the official MCP Registry. Listing is not an endorsement: review a server's code and permissions before giving it access to your data.