Joplin MCP Server runs on your own machine — the client starts it, so there is no endpoint to ping. 234 installs a week from npm. Last commit 14 Sep 2026.
Search, read, create, edit and sync Joplin notes and notebooks via a headless Joplin sidecar.
We read the source, 19 h ago · rules 3dff92dd89df
What this server is able to do. For an MCP server this is often the job itself — a terminal server runs commands because that is what it is for. Listed so you know what you are plugging in, not as an accusation.
const proc = spawn(cmd, args, {
ENV JOPLIN_TOKEN=""
Is this your server and something here is wrong? Tell us — corrections are free and do not require a plan.
We found places where it runs commands, builds paths or queries from values it is given. None of that is a flaw by itself — it becomes one when the code changes, and code changes quietly between releases. We re-read it on every one.
This server runs on your own machine — install it with the package manager and the client starts it for you. Package name taken from the official registry entry.
claude mcp add joplin-mcp-server -- npx -y joplin-mcp-server
{
"mcpServers": {
"joplin-mcp-server": {
"args": [
"-y",
"joplin-mcp-server"
],
"command": "npx"
}
}
}
[mcp_servers.joplin-mcp-server]
command = "npx"
args = ["-y", "joplin-mcp-server"]
{
"mcpServers": {
"joplin-mcp-server": {
"args": [
"-y",
"joplin-mcp-server"
],
"command": "npx"
}
}
}
{
"mcpServers": {
"joplin-mcp-server": {
"args": [
"-y",
"joplin-mcp-server"
],
"command": "npx"
}
}
}
This one needs environment variables set before it will start:
JOPLIN_TOKEN (Joplin API token, for external mode only (see JOPLIN_HOST). Sidecar mode manages its own token and ignores this.), JOPLIN_HOST (Connect to an existing Joplin instance at this host instead of running a sidecar), JOPLIN_PORT (Port of the existing Joplin instance (default: 41184)), JOPLIN_PROFILE (Joplin data directory for sidecar mode (default: ~/.config/joplin-mcp)), JOPLIN_CLI (Path to the joplin CLI binary, overriding auto-detection), JOPLIN_SYNC_TARGET (Sync target: none, filesystem, webdav, nextcloud, joplin-cloud, joplin-server, s3, dropbox, onedrive (default: none)), JOPLIN_SYNC_PATH (Sync target URL or path; the bucket name for the s3 target), JOPLIN_SYNC_USERNAME (Sync username or email; the access key for the s3 target), JOPLIN_SYNC_PASSWORD (Sync password; the secret key for the s3 target), JOPLIN_SYNC_REGION (S3 region (default: us-east-1)), JOPLIN_SYNC_ENDPOINT (S3 endpoint URL for non-AWS providers such as Backblaze B2, MinIO, R2 or Wasabi (default: https://s3.amazonaws.com/)), JOPLIN_SYNC_FORCE_PATH_STYLE (Use path-style S3 URLs, which self-hosted providers such as MinIO usually require: true or false (default: false)), LOG_LEVEL (Log verbosity: debug, info, warn or error (default: info)).
The author declared them in the registry entry; get the values from the project itself.
Programmatic headless browser sessions: create, interact, browse, and extract - rendered in a real
Search, read, and write highlights, notes, screenshots, collections, projects, and tags in Gleanit.
Headless Screaming Frog SEO Spider via its CLI: run crawls, export and filter data, no GUI needed.
Read LinkedIn profiles, companies, jobs and messages via your own browser session
The headless professional network: create a profile, then let your agent find you matches via MCP.
MuseScore for Claude — search sheet music and read score metadata via your signed-in browser
Create and manage forms, collect submissions — a headless form builder powered by CraftyForms.
Create and manage forms, collect submissions — a headless form builder powered by CraftyForms.
Answers built from our own checks of this server.