ai newsMo., 26. Okt.
EilmeldungTexas sues OpenAI and Sam Altman over ChatGPT’s safety for children

mcp-notes-server: giving Claude a notes memory that lives in one JSON file

Every chat with an AI assistant starts from zero. I wanted Claude to be able to remember things between conversations, with the notes on my own disk and no cloud service involved. mcp-notes-server is a Model Context Protocol (MCP) server in TypeScript. Connect it to Claude Desktop, Claude Code or a

dev.toMontag 11:29 · 26.10.1 Min. Lesezeit
Bild: dev.to

Every chat with an AI assistant starts from zero. I wanted Claude to be able to remember things between conversations, with the notes on my own disk and no cloud service involved.

mcp-notes-server is a Model Context Protocol (MCP) server in TypeScript. Connect it to Claude Desktop, Claude Code or any MCP client and the assistant can save, search, edit, export and delete notes that survive between chats. Everything sits in one local JSON file, and the server makes no network calls.

Repo: https://github.com/techsaurabh-394/mcp-notes-server npm: https://www.npmjs.com/package/mcp-notes-server

claude mcp add notes -- npx -y mcp-notes-server

Then ask: "Save a note titled RAG chunking: use 800-character chunks. Tag it rag." and later "Search my notes for chunking."

The AI app starts the server as a child process and talks to it over stdio using JSON-RPC. The model reads the tool list and picks a tool. The server validates the input and sends the result back as text.

add_note, get_note, list_notes, search_notes, update_note, delete_note and export_notes. There are also two resources (notes://all and notes://{id}) and a review_notes prompt. Every tool has a typed zod schema and MCP annotations (readOnlyHint, destructiveHint and so on), so clients can show the right confirmation UI. Bad input returns a clear error and stores nothing.

Search is deliberately simple keyword scoring: +3 if a word is in the title, +2 if it matches a tag exactly, +1 if it is in the body. Scores add up, highest first. It is not semantic search, and I say so in the README. Embeddings are on the roadmap.

The part I spent the most time on was making the file safe to write:

Quelle: dev.to (dev.to). Original öffnen