MCP Notes Server
[](https://smithery.ai/server/notes)
A Model Context Protocol (MCP) server implementation for managing notes with persistent storage.
<a href="https://glama.ai/mcp/servers/tg4ugmp8jr"><img width="380" height="200" src="https://glama.ai/mcp/servers/tg4ugmp8jr/badge" alt="Notes Server MCP server" /></a>
Features
- Create, read, update, and delete notes
- Persistent storage using JSON
- Timestamp tracking for creation and modifications
- Note summarization via prompts
- Resource-based access using note:// URI scheme
Installation
Installing via Smithery
To install notes for Claude Desktop automatically via [Smithery](https://smithery.ai/server/notes):
Manual Installation
- Ensure you have Python 3.10 or later installed
- Create a virtual environment:
```bash
python -m venv .venv
# On Unix/MacOS:
source .venv/bin/activate
# On Windows:
.venv\Scripts\activate
```
- Install requirements:
```bash
pip install MCP
```
Project Structure
Available Tools
- `add-note`: Create a new note
- `list-all-notes`: Display all stored notes
- `update-note`: Modify an existing note
- `delete-note`: Remove a note
Usage
- Start the server:
```bash
mcp install src/notes
mcp start Notes
```
- Example operations:
```python
# Create a note
await client.call_tool("add-note", {
"name": "example",
"content": "This is a test note"
})
# List all notes
await client.call_tool("list-all-notes")
# Update a note
await client.call_tool("update-note", {
"name": "example",
"content": "Updated content"
})
# Delete a note
await client.call_tool("delete-note", {
"name": "example"
})
```
Storage
Notes are stored in `notes_storage.json` with the following structure:
Resource Access
Notes can be accessed as resources using the `note://` URI scheme:
- List resources: Returns all available notes as resources
- Read resource: Access a specific note using `note://internal/note_name`
Prompt Generation
The server includes a prompt generation feature for note summarization:
- Supports both brief and detailed summaries
- Formats notes for language model input
- Available via the "summarize-notes" prompt
Development
To modify or extend the server:
- Clone the repository
- Install development dependencies
- Make changes in the appropriate module
- Test thoroughly before deploying
Testing
Tests should cover:
License
[Add your license here]