devnote-mcp
v1.0.0
Published
Official MCP server for DevNote — encrypted note-taking and file storage with AI agent integration.
Maintainers
Readme
devnote-mcp
Official Model Context Protocol server for DevNote — an encrypted, self-hosted note-taking and file storage system.
Connect Claude, Cursor, Windsurf, SOJO, or any MCP-compatible AI agent to your DevNote instance in 30 seconds.
Quick Setup
Claude Desktop / Cursor / Windsurf
Add this to your MCP client config:
{
"mcpServers": {
"devnote": {
"command": "npx",
"args": ["-y", "devnote-mcp"],
"env": {
"DEVNOTE_API_KEY": "your_api_key_here",
"BACKEND_URL": "https://your-devnote-instance.com/api"
}
}
}
}That's it. No installation, no cloning, no cwd.
SOJO-46 (sojo-agent)
In your SOJO mcp_servers.json:
{
"devnote": {
"command": "npx",
"args": ["-y", "devnote-mcp"],
"env": {
"DEVNOTE_API_KEY": "${DEVNOTE_API_KEY}",
"BACKEND_URL": "${DEVNOTE_BACKEND_URL}"
}
}
}Environment Variables
| Variable | Required | Description |
|-------------------|----------|----------------------------------------------------------|
| DEVNOTE_API_KEY | ✅ Yes | Your DevNote API key (set in DevNote .env) |
| BACKEND_URL | ✅ Yes | Full URL to your DevNote API (e.g. https://example.com/api) |
Available Tools (14)
Notes
| Tool | Description |
|------|-------------|
| devnote_list_notes | List notes filtered by status (active / pending / rejected / trash) |
| devnote_read_note | Read decrypted content of a note by ID |
| devnote_create_note | Create a new AES-256-GCM encrypted note |
| devnote_update_note | Update and re-encrypt an existing note |
| devnote_delete_note | Soft-delete: move to trash |
| devnote_restore_note | Restore from trash to active |
| devnote_permanent_delete | Permanently destroy a note (irreversible) |
Notifications
| Tool | Description |
|------|-------------|
| devnote_list_notifications | List pending payload notifications |
| devnote_accept_notification | Accept a pending notification |
| devnote_reject_notification | Reject a pending notification |
Files
| Tool | Description |
|------|-------------|
| devnote_upload_file | Upload any file (base64-encoded). Encrypted with AES-256-GCM |
| devnote_download_file | Download and decrypt a file. Text→UTF-8, binary→base64 |
System
| Tool | Description |
|------|-------------|
| devnote_drive_status | Check Google Drive connection status |
| devnote_get_capabilities | Fetch the full capability manifest |
Security
- All notes and files are encrypted with AES-256-GCM at rest
- API key is injected via environment variable — never hardcoded
- The MCP server communicates over stdio — no open ports, no network exposure
- All logs go to stderr so the JSON-RPC stdout stream is never corrupted
Requirements
- Node.js >= 20
- A running DevNote instance
License
MIT
