Joplin MCP
Provides tools for interacting with a Joplin instance, enabling semantic search, note and notebook management (create, read, update, delete), and listing notebooks and notes.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Joplin MCPsearch my notes for 'cloudflare workers deployment'"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Joplin MCP
An MCP server that exposes a Joplin note collection as a tool set, running as a stateful agent on Cloudflare Workers. Point an MCP client (Claude, etc.) at the deployed endpoint and it can browse notebooks and notes, and create/update/delete notes and notebooks directly against your own Joplin instance.
How it works
Every tool call goes straight to the Joplin Data API on your live instance — there's no index or cache in between.
MCP client ──HTTP/SSE──► Worker (/mcp) ──► JoplinMCP (Durable Object)
│
JoplinClient ──► Joplin Data APIJoplinMCP is a McpAgent hosted on a Durable Object.
Related MCP server: Capacities MCP Worker
Tools
Tool | Description |
| Fetch a single note by ID — title, body, metadata |
| List all notebooks with IDs and names |
| List notes in a given notebook |
| Create a note in a notebook |
| Update a note's title, body, or notebook |
| Permanently delete a note |
| Create a notebook, optionally nested |
| Rename or move a notebook |
| Move a notebook (and its notes) to trash |
Setup
npm installBefore deploying, set vars.JOPLIN_CLIENT_URL in wrangler.jsonc to the base URL of your Joplin
Data API.
JOPLIN_API_TOKEN (a Joplin Data API token) is read from Cloudflare's
Secrets Store, not a plain Wrangler secret.
Create it once per account and it's reusable across Workers:
wrangler secrets-store secret create <store-id> \
--name joplin-token --scopes workers --remotewrangler.jsonc then binds it via secrets_store_secrets:
"secrets_store_secrets": [
{ "binding": "JOPLIN_API_TOKEN", "store_id": "<store-id>", "secret_name": "joplin-token" }
]For local dev, create a local-only secret with the same name (omit --remote) so wrangler dev
has something to read.
See CLAUDE.md for the full architecture and binding reference.
Development
npm run dev # wrangler dev — local development with hot reload
npm run test # vitest run
npm run typecheck # tsc --noEmitDeploy
npm run deployOr connect this repository to a Cloudflare Worker for git-based deploys. Either way, the
joplin-token secret must exist in the account's Secrets Store — it is never stored in the repo.
Stack
Cloudflare Workers + Durable Objects (SQLite-backed)
Cloudflare Agents SDK (
agents/mcp)
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- Alicense-qualityAmaintenanceSelf-hosted semantic memory layer for Claude and MCP-compatible AI clients. Store notes, search by meaning not keywords, and recall relevant context automatically across sessions. Runs free on Cloudflare Workers, D1, Vectorize, and Workers AI0713MIT
- Alicense-qualityDmaintenanceA Cloudflare Worker that wraps the Capacities API as a remote MCP server, enabling Claude on any device to interact with your Capacities knowledge base.MIT
- AlicenseAqualityAmaintenanceEnables AI assistants to interact with Joplin notes, notebooks, and tags through a standardized MCP interface, supporting CRUD operations, search, and organization.19154MIT
- Alicense-qualityCmaintenanceUnofficial MCP server that enables interaction with NotebookLM through a Cloudflare Worker, supporting tools for notebooks, sources, chat, notes, and more. It uses OAuth authentication and stateless encrypted credential envelopes.1MIT
Related MCP Connectors
Search, read, and write your Apple Notes from ChatGPT/Claude via a local Mac agent + MCP relay.
Read and write your Fresh Jots notes from Claude, Cursor, and any MCP client.
Hosted remote MCP server for YNAB on Cloudflare Workers with OAuth
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/crunchypancake1/joplin-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server