MCP Notes Server
Click on "Install 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 Serverlist all my notes"
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 โ Your First MCP Server with Claude (Python)
A beginner-friendly, fully reproducible tutorial for building a Model Context Protocol (MCP) server in Python and connecting it to Claude.
The example server is a personal notes manager: Claude can create, list, read, search, update, and delete notes that are saved as Markdown files on your own computer.
๐ New to this? Follow the complete step-by-step guide in
TUTORIAL.md. It explains every single command and shows the exact output you should see.
What is MCP?
MCP (Model Context Protocol) is an open standard that lets AI apps like Claude talk to external programs. You write a small server exposing:
Tools โ actions Claude can take (e.g. "save a note")
Resources โ read-only data Claude can pull in (e.g. "all my notes")
Claude is the client: when you ask it something, it can decide to call your tools. Build the server once, and any MCP-aware app can use it.
Do I need to write a client too? Usually no โ the client is an existing app like Claude Desktop or Claude Code. You only write a server. This repo includes an optional
client.pypurely to show what a client does under the hood; seeTUTORIAL.mdยง9.
Related MCP server: Image Processor MCP Server
Quickstart
Requires uv (the tutorial shows how to install it). Then, from this folder:
# 1. Set up the environment (installs Python 3.12 + the MCP SDK, pinned)
uv sync
# 2. Test the server in the visual MCP Inspector
uv run mcp dev notes_server.pyTo connect it to Claude Desktop, add this to your
claude_desktop_config.json (use the absolute path from pwd):
{
"mcpServers": {
"notes": {
"command": "uv",
"args": ["--directory", "/ABSOLUTE/PATH/TO/mcp_tutorial", "run", "notes_server.py"]
}
}
}To connect it to Claude Code:
claude mcp add notes -- uv --directory "$(pwd)" run notes_server.pyFull details, expected output, and troubleshooting are in
TUTORIAL.md.
Project structure
File | Purpose |
| The MCP server: 6 tools + 1 resource |
| Optional standalone MCP client โ chat with the server from your terminal (no Claude Desktop needed) |
| Project metadata, requires Python โฅ 3.10, depends on |
| Exact pinned versions of every dependency (commit this!) |
| Pins the Python interpreter to 3.12 for reproducibility |
| Template for your API key โ copy to |
| The complete step-by-step walkthrough |
| Excludes the virtual env and your personal notes from git |
The tools
Tool | What it does |
| Create a new note |
| Replace an existing note's content |
| List all note titles |
| Read one note |
| Find notes by title or content |
| Delete a note permanently |
Plus a resource, notes://all, that returns every note concatenated.
Tested with
uv 0.11.19
Python 3.12.13 (pinned via
.python-version)mcp 1.27.2
Because uv.lock and .python-version are committed, anyone who runs
uv sync gets the exact same environment.
License
MIT โ see LICENSE. Use it, fork it, teach with it.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/pipinho13/mcp_tutorial'
If you have feedback or need assistance with the MCP directory API, please join our Discord server