# simplenote-mcp-server

> MCP Server for Simplenote integration with Claude Desktop

- **URL**: https://www.freshcrate.ai/projects/simplenote-mcp-server
- **Author**: docdyhr
- **Category**: MCP Servers
- **Latest version**: `v1.16.1` (2026-05-11)
- **License**: MIT
- **Source**: https://github.com/docdyhr/simplenote-mcp-server
- **Language**: Python
- **GitHub**: 17 stars, 3 forks
- **Registry**: github
- **Tags**: `ai`, `backend`, `claude-ai`, `crud`, `electron`, `integration`, `mcp-server`, `open-source`, `python`

## Description

MCP Server for Simplenote integration with Claude Desktop

## Recent releases

| Version | Date | Urgency | Changes |
| --- | --- | --- | --- |
| `v1.16.1` | 2026-05-11 | High | ### Fixed - Three Claude Desktop deployment errors resolved: `psutil.cpu_percent()` called with renamed keyword   argument (`interval` → positional), security alerter writing to a relative path that fails under   read-only CWD (`/`), and opaque `TypeError` when Simplenote auth token is `None` (now raises a   clear `AuthenticationError`) - Silent note eviction during server start-up: `cache.initialize()` now calls `_evict_if_needed()`   after loading all notes, preventing data loss when note cou |
| `v1.16.0` | 2026-04-30 | High | ### Added - `permanent_delete_note` tool: irreversibly destroy a single note; requires `confirm=true` to execute; returns a dry-run description when `confirm=false` (default) — operation cannot be undone - `empty_trash` tool: permanently delete all trashed notes in one operation; defaults to `dry_run=true` (lists trashed notes without deleting); requires `dry_run=false` AND `confirm=true` to execute — operation cannot be undone  ### Fixed - `list_tags` returning empty results after startup: `_p |
| `v1.15.0` | 2026-04-14 | High | ### Added - `publish_note` tool: publish a note to a public URL by setting the `published` system tag via `update_note`; returns `public_url`; idempotent if already published - `unpublish_note` tool: remove a note from public access by clearing the `published` system tag; no-op if not published  ### Fixed - Broken `DOCKER_README.md` symlink replaced with real file (symlink target was deleted in doc cleanup, breaking the Docker Hub description CI step) |
| `v1.14.0` | 2026-04-13 | Medium | ### Added - `get_server_info` tool: returns server name, version, author, registered tool count, and a debug block (Python version, platform, cache status, sync interval, log level, offline mode)  ### Fixed - `log_monitor._process_log_file`: eliminated unawaited coroutine RuntimeWarning on Python 3.13+ by replacing `run_coroutine_threadsafe` with `loop.run_until_complete()` in background thread context  ### Changed - Python runtime upgraded to 3.13.13 (pyenv); CI `PYTHON_VERSION` updated to mat |
| `v1.12.1` | 2026-04-08 | High | ### Fixed - Replace deprecated `asyncio.get_event_loop()` with `asyncio.get_running_loop()` across   `cache.py`, `security.py`, `middleware.py`, `memory_monitor.py`, `log_monitor.py`, and   `server.py` — eliminates `DeprecationWarning` on Python 3.10+ - Fix memory leak in `SecurityValidator`: `failed_validation_attempts` buckets now capped   at 500 entries per event type, preventing unbounded growth in long-running servers - Fix order-dependent test flake in `test_log_monitoring.py` via `reset_ |
| `v1.12.0` | 2026-04-03 | Medium | ## What's New  ### Search Improvements - **`sort_by` / `sort_direction` parameters** on `search_notes` — Claude can now reliably find the most recently updated note on any topic (`sort_by='modifydate'`, `sort_direction='desc'`, `limit=1`) - **Inverted word index** — non-fuzzy searches pre-filter candidates before scanning, reducing O(n) linear scan to O(candidates) for most queries - **Smart query cache invalidation** — only cache entries containing a changed note are evicted on sync/update/dele |
| `v1.10.1` | 2026-01-26 | Low | ## 🔧 Patch Release: Security Fixes and Code Quality Improvements  This patch release resolves all CodeQL security alerts and improves code quality through cyclic import fixes.  ### Security - **Resolved all CodeQL code scanning alerts** (0 open alerts)   - Fixed `py/cyclic-import` issues between error handling modules   - Fixed `py/repeated-import` patterns across test files   - Fixed `py/empty-except` patterns with proper documentation   - Fixed `py/unnecessary-pass` and `py/unused-local-varia |
| `v1.10.0` | 2026-01-08 | Low | # Release v1.10.0: Security Release with Critical Vulnerability Fixes  ## 🔒 Security Highlights  This release addresses a **critical security vulnerability** in urllib3 (CVE-2026-21441) and includes comprehensive maintenance updates from the past two months.  ### Critical Security Fix - **Fixed CVE-2026-21441** in urllib3 dependency (2.6.2 → 2.6.3)   - Addresses decompression bomb vulnerability in streaming API   - Prevents excessive resource consumption from malicious servers   - **No known vu |
| `v1.8.0` | 2025-08-26 | Low | # Changes in 1.8.0%0A*Released on 2025-08-26*%0A%0A## ✨ Features%0A%0A- Complete Phase 3 Observability & Release Engineering for v1.7.0 ([93fdb33c](../../commit/93fdb33c06c7b544c382da71bf3e231e195d17c2)) |
| `v1.7.0` | 2025-08-26 | Low | # Changes in version 1.7.0%0A%0A## Features%0A- fix: Add core dependencies to quick validation workflow%0A- feat: Implement comprehensive CI/CD pipeline improvements%0A- feat: Modernize test suite to align with current server architecture (#54)%0A- feat: Add reusable GitHub Actions for pipeline optimization%0A- feat: Improve CI pipeline resilience and test suite handling%0A- test: Add workflow trigger test file%0A- feat: Implement comprehensive CI/CD pipeline improvements%0A- docs: add comprehen |

## Citation

- HTML: https://www.freshcrate.ai/projects/simplenote-mcp-server
- Markdown: https://www.freshcrate.ai/projects/simplenote-mcp-server.md
- Dependencies JSON: https://www.freshcrate.ai/api/projects/simplenote-mcp-server/deps

_Generated by freshcrate.ai. Indexes github releases for AI-agent ecosystem packages._
