Skip to main content
Glama
g-konstkd

notes-box

by g-konstkd

mcp-snippetbox

Learning MCP: tiny notes server with five tools

Built for my own use; public in case it helps someone.

Highlights

  • Every tool carries a real docstring, so clients get descriptions

  • A missing note raises instead of returning the string 'not found'

  • Five tools: add / get / update / delete / list notes

  • Atomic saves (temp file + os.replace) behind a write lock

  • Notes path set by MCP_NOTES_FILE or --notes-file

  • Includes a Claude Desktop config snippet with absolute paths

Related MCP server: simple-mcp-example

Examples

# claude_desktop_config.json  (use ABSOLUTE paths: Claude does not
# run from the repo directory, so a bare "server.py" is not found)
# {
#   "mcpServers": {
#     "notes-box": {
#       "command": "python",
#       "args": ["/abs/path/to/mcp-snippetbox/server.py"],
#       "env": {"MCP_NOTES_FILE": "/abs/path/to/notes.json"}
#     }
#   }
# }
python server.py --help

Install

pip install -r requirements.txt

Project structure

├── .github/
│   ├── workflows/
│   │   └── ci.yml
│   └── pull_request_template.md
├── docs/
│   ├── configuration.md
│   ├── development.md
│   └── usage.md
├── examples/
│   └── quickstart.md
├── tests/
│   └── test_notes.py
├── .gitignore
├── CHANGELOG.md
├── CONTRIBUTING.md
├── LICENSE
├── SECURITY.md
├── requirements.txt
└── server.py

Development

python -m venv .venv && source .venv/bin/activate
pip install -r requirements.txt
python -m pytest -q

Notes

  • mostly stable, edge cases remain

License

MIT - see LICENSE.

Maintenance

ActivityMaintained
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers