# Changelog All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). ## [1.0.0] - 2026-05-31 ### Added - MCP server using Streamable HTTP transport, listening on configurable host and port - Session management with UUID-based session IDs and 30-minute TTL eviction - CORS support for localhost, 127.0.0.1, and vscode-webview:// origins #### Notes - `create_note` – Create notes with optional tags, parent notebook, and todo fields - `get_note` – Retrieve full note content by ID - `update_note` – Partially update note fields - `delete_note` – Soft-delete a note (moves to trash) - `list_notes` – Paginated note listing with sort and filter options - `get_notes_by_ids` – Batch retrieve multiple notes by their IDs #### Notebooks - `list_notebooks` – Tree-structured notebook listing - `get_notebook` – Get notebook details with sub-notebooks and notes - `create_notebook` – Create notebooks, optionally nested under a parent - `update_notebook` – Rename or move notebooks - `delete_notebook` – Delete notebook (moves notes to trash) #### Tags - `list_tags` – List all tags - `create_tag` – Create new tags (with deduplication) - `update_tag` – Rename existing tags - `delete_tag` – Permanently delete tags - `get_note_tags` – Get tags assigned to a specific note - `add_tag_to_note` – Add tag to note (auto-creates tag if needed) - `remove_tag_from_note` – Remove a tag from a note #### Search - `search_notes` – Full-text search with Joplin query operators - `search_notebooks` – Search notebooks by title - `search_tags` – Search tags by title - `search_all` – Cross-type search across notes, notebooks, and tags #### Utility - `ping` – Health check endpoint ### Configuration - Configurable TCP port (default: 22123, range: 1024–65535) - Configurable bind host (default: 127.0.0.1) - Settings accessible from Joplin's preferences under "MCP Server"