Integrations
📝 Joplin MCP Server
A Model Context Protocol (MCP) Server for Joplin that enables note access through the Model Context Protocol. Perfect for integration with AI assistants like Claude.
✨ Features
- 🔍 Search Notes: Full-text search across all notes
- 📖 Read Notes: Retrieve individual notes
- ✏️ Edit Notes: Create new notes and update existing ones
- 🗑️ Delete Notes: Move notes to trash or delete permanently
- 📥 Markdown Import: Import markdown files as notes
- 🤖 AI Integration: Seamless integration with Claude and other MCP-capable AI assistants
🚀 Installation
Prerequisites
- Python 3.10 or higher
- Joplin Desktop with Web Clipper Service enabled
- uv (Python package manager)
⚙️ Configuration
Joplin API Token
- Open Joplin Desktop
- Go to Tools -> Options -> Web Clipper
- Enable the Web Clipper Service
- Copy the API Token
Create a .env
file in the project directory:
Claude Desktop Setup
- Install Claude Desktop
- Download Claude Desktop
- Ensure you have the latest version (Menu: Claude -> Check for Updates...)
- Configure MCP ServerCopy
- Replace
/PATH/TO/UV/uv
with the absolute path to your uv installation- Find the path with:
which uv
- Example macOS:
/Users/username/.local/bin/uv
- Example Windows:
C:\Users\username\AppData\Local\Microsoft\WindowsApps\uv.exe
- Find the path with:
- Replace
/PATH/TO/YOUR/PROJECT/joplin_mcp
with the absolute path to your project
Important: Claude Desktop needs the full path to
uv
as it cannot access shell environment variables. - Replace
🛠️ Available Tools
search_notes
Search for notes in Joplin.
Parameters:
query
(string): Search querylimit
(int, optional): Maximum number of results (default: 100)
get_note
Retrieve a specific note by its ID.
Parameters:
note_id
(string): ID of the note
create_note
Create a new note.
Parameters:
title
(string): Note titlebody
(string, optional): Note content in Markdownparent_id
(string, optional): ID of parent folderis_todo
(boolean, optional): Whether this is a todo item
update_note
Update an existing note.
Parameters:
note_id
(string): ID of note to updatetitle
(string, optional): New titlebody
(string, optional): New contentparent_id
(string, optional): New parent folder IDis_todo
(boolean, optional): New todo status
delete_note
Delete a note.
Parameters:
note_id
(string): ID of note to deletepermanent
(boolean, optional): If true, permanently delete the note
import_markdown
Import a markdown file as a new note.
Parameters:
file_path
(string): Path to the markdown file
🧪 Development
Debug Mode
To start the server in debug mode:
This starts the MCP Inspector at http://localhost:5173 where you can test the tools.
📄 License
MIT License - Copyright (c) 2025 David Weigend
👤 Author
David Weigend
- Website: weigend.studio
- GitHub: @dweigend
🤝 Contributing
Contributions, issues and feature requests are welcome! Visit the issues page.
This server cannot be installed
A server that enables AI assistants to access and manipulate Joplin notes through the Model Context Protocol, allowing search, reading, editing, and management of notes using natural language.