MCP Notes Server
by abhi4pr
README.md
# MCP Notes Server
A small **Model Context Protocol (MCP)** server that gives an AI a personal
notes / todo store. Built for learning.
## What is MCP?
MCP is an open standard that lets an AI model call functions in _your_ code.
You expose **tools** (functions with a name, description, and typed inputs);
the AI reads the descriptions and decides when to call them. Communication
here happens over **stdio** — the AI client launches `notes-server.js` and exchanges
JSON messages over stdin/stdout.
## Tools in this server
| Tool | What it does |
| --------------- | -------------------------------------- |
| `add_note` | Add a new note/todo |
| `list_notes` | List notes (filter: all / open / done) |
| `search_notes` | Search notes by keyword |
| `complete_note` | Mark a note done by id |
| `delete_note` | Delete a note by id |
Notes are saved to `notes.json` next to the server, so they survive restarts.
## Run it
```bash
npm install
npm start # prints "notes-server running on stdio" then waits
```
It looks like it "hangs" — that's correct. It's waiting for an AI client to
talk to it over stdin. Press Ctrl+C to stop.
## Connect it to Claude Code (CLI)
```bash
claude mcp add notes -- node /home/tw/Documents/mcp/notes-server.js
```
Then in a Claude Code session, try: _"Add a note to buy milk"_, then
_"list my open notes"_.
TDQS
A3.9/5.0
Scored across 5 tools
Disambiguation5/5
Each tool has a clear, distinct purpose (add, list, search, complete, delete) with no overlapping functionality. An agent can easily distinguish them.
Naming Consistency5/5
All tools follow a consistent verb_noun pattern (e.g., add_note, delete_note) with no deviations, making the naming predictable.
Tool Count5/5
5 tools is well-suited for a notes server, covering essential operations without being overly sparse or bloated.
Completeness3/5
The set covers basic CRUD operations but lacks an update tool for editing note content, which is a notable gap. Users must delete and re-add to modify text.
Maintenance
ActivitySlowing
ResponsivenessNo issues