MCP Notes Server
The MCP Notes Server allows you to manage notes with CRUD operations, persistence, summarization, and resource access.
Create notes: Add new notes with a name and content.
Read notes: List and read all stored notes.
Update notes: Modify existing notes with new content.
Delete notes: Remove specific notes by name.
Persistent storage: Save notes in a JSON file with creation and modification timestamps.
Summarization: Generate brief and detailed note summaries using prompt generation.
Resource-based access: Access notes via the
note://URI scheme.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@MCP Notes Server add a note about today's meeting with the content 'Discuss Q3 roadmap and budget allocation'"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
MCP Notes Server
A Model Context Protocol (MCP) server implementation for managing notes with persistent storage.
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
Related MCP server: Beeper MCP Note Server
Installation
Installing via Smithery
To install notes for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install notes --client claudeManual Installation
Ensure you have Python 3.10 or later installed
Create a virtual environment:
python -m venv .venv # On Unix/MacOS: source .venv/bin/activate # On Windows: .venv\Scripts\activateInstall requirements:
pip install MCP
Project Structure
notes/
├── __init__.py # Package initialization
├── server.py # Main server implementation
├── storage.py # Note persistence layer
├── resources.py # Resource handling (note:// URIs)
├── prompts.py # LLM prompt generation
└── tools/ # Server tools
├── __init__.py # Tools package initialization
├── list_tools.py # Tool listing functionality
└── handle_tools.py # Tool handling implementationAvailable Tools
add-note: Create a new notelist-all-notes: Display all stored notesupdate-note: Modify an existing notedelete-note: Remove a note
Usage
Start the server:
mcp install src/notes mcp start NotesExample operations:
# 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:
{
"note_name": {
"content": "Note content",
"created_at": "2025-01-12T11:28:16.721704",
"modified_at": "2025-01-12T11:28:16.721704"
}
}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:
Basic CRUD operations
Multiple note handling
Error cases
Resource access
Prompt generation
License
[Add your license here]
Available Tools
4 toolsadd-noteC
Create a new note
Inputs: content (required), name (required).
delete-noteC
Delete an existing note
Inputs: name (required).
list-all-notesB
Read all stored notes
Inputs: no named parameters.
update-noteC
Update an existing note
Inputs: content (required), name (required).
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 4 tools
Each tool has a clearly distinct purpose targeting specific CRUD operations on notes: add-note for creation, delete-note for deletion, list-all-notes for reading all, and update-note for updates. There is no overlap in functionality, making tool selection unambiguous.
The tools follow a mostly consistent verb-noun pattern (add-note, delete-note, update-note), but list-all-notes deviates slightly by including 'all'. This minor inconsistency does not significantly hinder readability or predictability.
With 4 tools, the server is well-scoped for a notes management system, covering the essential CRUD operations. Each tool earns its place without being overly sparse or bloated, fitting the typical 3-15 tool range appropriately.
The tool set provides complete CRUD coverage for the notes domain: create (add-note), read (list-all-notes), update (update-note), and delete (delete-note). There are no obvious gaps, allowing agents to handle full note lifecycles without dead ends.
Maintenance
Related MCP Connectors
An MCP server that used to create notes
Google Keep-style notes app with an MCP server for AI agents to read/write notes.
Markdown-based note-taking with a hosted MCP server. Your notes serve you and your AI.
Notes, files, GitHub, and Drive through one MCP connection.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceA simple note-taking MCP server that allows storing and summarizing notes with custom URI schemes and provides functionality to add notes and generate summaries with different detail levels.5-
- FlicenseNot gradedqualityDmaintenanceA simple MCP server for creating and managing notes with support for summarization functionality.1-
- FlicenseBqualityDmaintenanceA simple note-taking MCP server that stores notes and can generate summaries of stored content.4-
- FlicenseNot gradedqualityNot gradedmaintenanceA simple MCP server that implements a note storage system allowing users to add and summarize notes with customizable detail levels.3-