Mcp Notes Server

io.github.bradraylucas-engPublished by GitHub account bradraylucas-engv1.0.0Updated Oct 24, 2026

Tiny local MCP notes server in Python: create, list, and search notes stored in a local JSON file.

Overview

AI-generated overview

A small local MCP server that gives an assistant a persistent notebook: create, list and search notes kept in a plain JSON file on your machine.

What you can do
Create notes with a title and body, returning the saved record with id and timestamps. List saved notes newest first, with a configurable limit. Search notes by case-insensitive keyword across titles and bodies. Notes are stored in a single local JSON file written atomically.
When to use it
Useful when you want an assistant to remember short pieces of text between sessions without a database, cloud account or network access, or as a readable starting point for building your own MCP server.
Requirements
A local Python runtime with the mcp Python SDK v1.x installed (the requirements pin mcp<2), and the server script launched over stdio from your MCP host's configuration. No accounts, API keys or network access.
Before you install
The server writes to a JSON file in its own folder, so notes persist on disk in plain text. There is no delete tool and no authentication, and the author describes it as a learning or prototyping base rather than a hardened service, with no concurrency locking beyond atomic file replacement.

Installation

In SourceWeft

  1. Open Mcp Notes Server in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

mcp-notes-server

A minimal, free and open-source Model Context Protocol (MCP) server in Python that gives any MCP-compatible AI assistant a persistent notebook: create notes, list them, and search them — stored in a plain local JSON file you own.

Built with the official mcp Python SDK (FastMCP). No database, no cloud, no accounts. Your notes never leave your machine.

Tools

ToolWhat it does
create_noteCreate a note with a title (required, ≤120 chars) and body (≤10,000 chars). Returns the saved record with id and timestamps.
list_notesList saved notes, newest first (configurable limit, 1–500).
search_notesCase-insensitive keyword search across titles and bodies.

Quick start

bash
git clone <this-repo-url>cd mcp-notes-serverpip install -r requirements.txtpython server.py

The server speaks MCP over stdio. Connect it from any MCP host — see the config examples below and in examples/.

Claude Desktop

Add to your claude_desktop_config.json (see examples/claude_desktop_config.example.json):

json
{  "mcpServers": {    "notes-server": {      "command": "python",      "args": ["/absolute/path/to/mcp-notes-server/server.py"]    }  }}

Generic MCP host

See examples/mcp-client-config.generic.json — the same stdio command/args pattern works for most hosts.

Try it

  1. Connect your MCP host and ask: "Create a note titled 'Shopping list' with milk, eggs, and coffee."
  2. Ask: "Search my notes for eggs."
  3. Open notes.json (created automatically next to server.py) to see the raw storage — it's just JSON.

How it works

  • Storage helpers load/save a single notes.json file; saves are atomic (write to temp file, then replace).
  • Every tool validates its input (title required and length-capped, body length-capped, search query required).
  • Tool functions are ordinary Python functions decorated with @mcp.tool() — the type annotations become the tool input schemas. The whole server is one readable file (~150 lines), meant to be copied and adapted.

Run the smoke test (no MCP host needed):

bash
python tests/smoke_test.py

Verified end-to-end over the real MCP protocol (stdio, official SDK v1.x) — tools listed, note created, searched, and listed: see tests/mcp_e2e_test.py and run it yourself after pip install -r requirements.txt. Note the requirements pin mcp<2: the 2.x SDK renamed FastMCP, and this code targets the v1 API.

Scope & safety

  • Local only. This server reads/writes one JSON file in its own folder. It makes no network calls and has no delete tool — by design, as a starter pattern.
  • Treat it as a learning/prototyping base, not a hardened production service: no authentication (stdio servers are launched by your host as your user), no concurrency locking beyond atomic file replacement.

Get the full pack

This free server is one of three starters in the MCP Server Starter Templates pack — the full pack adds a read-only SQLite lookup server (with a tested SQL-injection guard: SELECT-only validation) and a web-summary server skeleton, plus client configs for all three, a testing checklist, and security notes for taking MCP servers toward production.

→ MCP Server Starter Templates (and more AI agent tools: AgentProof testing kits, LLM/RAG eval kits, verified datasets for agents): bradray2.gumroad.com

Free samples of the paid kits live in the companion repo, ai-agent-tools-free-samples.

License

MIT — see LICENSE. Use it, fork it, ship it.

Copyright (c) 2026 Brad Lucas.

Source: README.md at commit 2950414

Tools

0
SourceWeft has not started this package in its sandbox yet, so its tools are not known.

Version history

1
  1. v1.0.0LatestOct 14, 2026

Score

50% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts