Skip to main content
Glama
abhi4pr

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