NotesKeep MCP Server
# NotesKeep MCP Server
MCP (Model Context Protocol) server for [NotesKeep](https://noteskeep.vercel.app) - interact with your notes via Claude Code.
## Installation
```bash
npm install -g noteskeep-mcp
```
Or use directly with npx:
```bash
npx noteskeep-mcp
```
## Setup
### 1. Get your API Key
1. Go to [NotesKeep](https://noteskeep.vercel.app)
2. Register or Login
3. Go to **Settings** (gear icon in the header)
4. Click **Generate API Key**
5. Copy the generated key
### 2. Configure Claude Code
**Option A: Using CLI (recommended)**
```bash
claude mcp add --transport stdio noteskeep --scope user \
--env NOTESKEEP_API_KEY=your_api_key_here \
-- npx noteskeep-mcp
```
**Option B: Manual configuration**
Add to your `~/.claude.json` under the `mcpServers` section:
```json
{
"mcpServers": {
"noteskeep": {
"type": "stdio",
"command": "npx",
"args": ["noteskeep-mcp"],
"env": {
"NOTESKEEP_API_KEY": "your_api_key_here"
}
}
}
}
```
### 3. Restart Claude Code
After adding the configuration, restart Claude Code to load the MCP server.
## Available Tools
| Tool | Description |
|------|-------------|
| `list_notes` | List your notes (with optional limit and archive filter) |
| `get_note` | Get a specific note by ID |
| `create_note` | Create a new note (text or checklist) |
| `update_note` | Update a note's content, title, or color |
| `delete_note` | Delete a note |
| `archive_note` | Archive a note |
| `pin_note` | Pin or unpin a note |
## Environment Variables
| Variable | Required | Description |
|----------|----------|-------------|
| `NOTESKEEP_API_KEY` | Yes | Your NotesKeep API key |
| `NOTESKEEP_API_URL` | No | Custom API URL (defaults to https://noteskeep.vercel.app) |
## Usage Examples
Once configured, you can ask Claude:
- "List my notes"
- "Create a note titled 'Shopping List' with items: milk, eggs, bread"
- "Show me note 5"
- "Pin note 3"
- "Archive note 7"
- "Update note 2 with new content: Meeting notes from today"
- "Create a checklist note for my weekend tasks"
## Note Types
NotesKeep supports two types of notes:
- **Text notes**: Simple notes with a title and content
- **Checklist notes**: Notes with checkable items
## Note Colors
Available colors: `white`, `gray`, `yellow`, `orange`, `teal`, `blue`, `purple`, `pink`
## Development
```bash
# Clone the repository
git clone https://github.com/mariomosca/noteskeep-mcp.git
cd noteskeep-mcp
# Install dependencies
npm install
# Run in development mode
npm run dev
# Build
npm run build
```
## Links
- [NotesKeep App](https://noteskeep.vercel.app)
- [GitHub Repository](https://github.com/mariomosca/noteskeep-mcp)
- [Report Issues](https://github.com/mariomosca/noteskeep-mcp/issues)
## License
MIT
TDQS
Scored across 14 tools
Every tool has a clearly distinct purpose targeting specific note or label operations with no ambiguity. For example, 'add_label_to_note' and 'remove_label_from_note' are complementary but distinct actions, while 'get_note_labels' and 'set_note_labels' serve different query vs. modification functions.
All tools follow a consistent verb_noun pattern with snake_case throughout, such as 'create_note', 'delete_label', and 'list_notes'. The naming is predictable and readable, with no deviations in style or convention across the set.
With 14 tools, this server is well-scoped for a notes management domain, covering CRUD operations for notes and labels, plus additional utilities like archiving and pinning. Each tool earns its place without feeling excessive or insufficient for the apparent functionality.
The tool set provides complete CRUD/lifecycle coverage for notes and labels, including creation, retrieval, updating, deletion, listing, and specialized actions like archiving and pinning. There are no obvious gaps, and agents can handle full workflows without dead ends.