
Notes
Enables AI models to create, store, and manage personal notes and tasks using DynamoDB as persistent storage. Includes both MCP server for AI interactions and web interface for manual note management.
Integrates note-taking capabilities with AI models using TypeScript and DynamoDB for persistent memory and context management in applications.
What it does
- Create and store notes through AI conversations
- Retrieve and search existing notes via AI
- Update and delete notes programmatically
- Access notes through web interface
- Manage tasks and insights persistently
Best for
About Notes
Notes is a community-built MCP server published by 9ninety that provides AI assistants with tools and capabilities via the Model Context Protocol. Enhance your app with an AI note taking app, using Zoom AI notetaker features and Fireflies AI note taker integration fo It is categorized under ai ml, productivity.
How to install
You can install Notes in your AI client of choice. Use the install panel on this page to get one-click setup for Cursor, Claude Desktop, VS Code, and other MCP-compatible clients. This server runs locally on your machine via the stdio transport.
License
Notes is released under the GPL-2.0 license.
📝 MCP Notes

✨ Overview
MCP Notes Server is a simple note-taking application built on top of the MCP protocol. Its purpose is to enable users to record and view complex notes and tasks while utilizing AI models, such as recording personal thoughts, notes, inspirations, and insights. It does not rely on creating project files, allowing users to record any content without making it public within the project.
This project includes two servers: a Node.js server using the Model Context Protocol (MCP) for AI-driven note management and a web server providing a user-friendly interface for manual interaction with your notes.
Note: This project requires DynamoDB for note storage. You'll need an AWS account to use it. AWS offers a generous free tier for DynamoDB, making it suitable for frequent personal use at no cost.
🎯 Core Features
- 🖥️ Dual Server Architecture: MCP server for AI-driven note management and Web server for the user interface
- 🤖 AI-Powered Note Taking: Record thoughts, insights, and tasks through AI interactions
- 🗂️ Comprehensive Note Management: Create, list, retrieve, update, and delete notes via AI or web interface
- 📋 Reliable Storage: Secure and efficient note storage with AWS DynamoDB
- 🔐 Flexible Authentication: Support for AWS credentials via connection strings or environment variables
- 📝 Project-Independent: Store personal notes without affecting project files or structure
🤖 Model Support
You can use any model that supports function calls as long as your client supports MCP. The following models have been tested and confirmed to work:
- Claude 3.5 Series
- Gemini 1.5 and 2.0 Series
- GPT-4 Series
- Mistral Large
- Grok-2
- DeepSeek Chat
🛠️ Installation
Recommended
Run directly with npx or bunx, see examples below.
Alternative
- Ensure Node.js is installed on your system.
- Clone this repository and install dependencies with:
npm install - Configure Claude Desktop or any other tools as shown below
⚙️ Credential Configuration
Connection String
dynamodb://<access_key>:<secret_key>@<region>/<table>
Example:
dynamodb://AKIAXXXXXXXX:SKXXXXXXXX@us-east-1/mcp-notes
Environment Variables
- Export
AWS_ACCESS_KEY_IDandAWS_SECRET_ACCESS_KEY. - Supply connection information without credentials in the URI:
dynamodb://us-east-1/mcp-notes
🤖 Integration with Tools
Claude Desktop
Add this snippet to claude_desktop_config.json:
{
"mcpServers": {
"mcp-notes": {
"command": "npx",
"args": [
"-y",
"-p",
"mcp-notes",
"mcp-notes-server",
"--dynamodb",
"dynamodb://access_key:secret_key@region/table"
]
}
}
}
or file on local disks:
{
"mcpServers": {
"mcp-notes": {
"command": "node",
"args": [
"file://path/to/notes-mcp-server.js",
"--dynamodb",
"dynamodb://access_key:secret_key@region/table"
]
}
}
}
Cody
Note: Currently, Cody has limited MCP server support.
It only allows one server connection and cannot make tool calls. You'll need to use the web interface to create and manage notes and then reference them in AI chat conversations.
Add this snippet to your VS Code settings:
{
"openctx.providers": {
"https://openctx.org/npm/@openctx/provider-modelcontextprotocol": {
"nodeCommand": "node",
"mcp.provider.uri": "file://path/to/notes-mcp-server.js",
"mcp.provider.args": [
"--dynamodb",
"dynamodb://access_key:secret_key@region/table"
]
}
}
}
alternatively, use with npx (not guaranteed to work):
{
"openctx.providers": {
"https://openctx.org/npm/@openctx/provider-modelcontextprotocol": {
"nodeCommand": "node",
"mcp.provider.uri": "file:///usr/local/bin/npx",
"mcp.provider.args": [
"-y",
"-p",
"mcp-notes",
"mcp-notes-server",
"--dynamodb",
"dynamodb://access_key:secret_key@region/table"
]
}
}
}
Cline
Add this snippet to cline_mcp_settings.json:
You will find a "MCP Server" icon next to the "New Task" button, and then there is an "Edit MCP Settings" button to open this file.
{
"mcpServers": {
"mcp-notes": {
"command": "npx",
"args": [
"-y",
"-p",
"mcp-notes",
"mcp-notes-server",
"--dynamodb",
"dynamodb://access_key:secret_key@region/table"
]
}
}
}
🚀 Running Web Servers
The web server provides a user-friendly interface for managing your notes. You can launch web interfaces to manage your notes, add new notes for AI, or modify parts of AI-generated notes.
npx -p mcp-notes mcp-notes-web-server --dynamodb "dynamodb://access_key:secret_key@region/table"
bun src/notes-web-server.ts --dynamodb "dynamodb://access_key:secret_key@region/table"
Alternatively, compile with
npm run buildand runnode dist/notes-mcp-server.jsornode dist/notes-web-server.js
Then navigate to http://localhost:3100 in your browser to view notes.
🔧 Available MCP Tools
listNotes
- Input:
{ tags?: string[] } - Output: Array of all notes, optionally filtered by tags.
getNote
- Input:
{ id: string } - Output: A single note object matching the given ID, or a "not found" message if no match exists.
writeNote
- Input:
{ id: string, title: string, summary: string, tags: string[], content: string } - Output: A success confirmation message.
deleteNote
- Input:
{ id: string } - Output: Deletion confirmation message 🚮.
📝 Data Structure
Notes are stored using the following structure:
id: A unique identifier for the note. It should be descriptive, with a random number suffix, like "meeting-notes-1362".title: The title of the note.summary: A short summary of the note's content.tags: An array of tags associated with the note (e.g., ["meeting", "project-x"]).content: The main content of the note.
📸 Screenshots
Claude Desktop
✅ Full functionality

Cody
✅ Mention Notes via Resource
❎ Tool calls are not supported

Cline
✅ Full functionality with Tool Calls
❓ Resources don't seem to work; help wanted.

Alternatives
Related Skills
Browse all skillsCreate daily notes and manage morning, midday, and evening routines. Structure daily planning, task review, and end-of-day reflection. Use for daily productivity routines or when asked to create today's note.
Manage productivity with FlowMind — goals, tasks (with subtasks), notes, people, and tags via REST API. Use when the user wants to create, list, update, or delete goals, tasks, notes, contacts, or tags; manage focus/priorities; track progress; or organize their productivity workspace through FlowMind.
Presentation creation, editing, and analysis. When Claude needs to work with presentations (.pptx files) for: (1) Creating new presentations, (2) Modifying or editing content, (3) Working with layouts, (4) Adding comments or speaker notes, or any other presentation tasks
Create professional slide decks from topics or documents. Generates structured content with data-driven charts, speaker notes, and complete PPTX files. Applies persuasive storytelling principles (Pyramid Principle, assertion-evidence). Supports multiple formats (Marp, PowerPoint). Use for presentations, pitches, slide decks, or keynotes.
Search personal markdown knowledge bases, notes, meeting transcripts, and documentation using QMD - a local hybrid search engine. Combines BM25 keyword search, vector semantic search, and LLM re-ranking. Use when users ask to search notes, find documents, look up information in their knowledge base, retrieve meeting notes, or search documentation. Triggers on "search markdown files", "search my notes", "find in docs", "look up", "what did I write about", "meeting notes about".
Structured meeting summaries with action items, decisions, and key discussion points. Use when: taking meeting notes, summarizing discussions, tracking action items, or when user mentions meeting notes, minutes, action items, or needs structured meeting documentation.