
Joplin Mcp Server
io.github.jordanburke由 GitHub 账号 jordanburke 发布v2.3.3更新于 Oct 24, 2026
Search, read, create, edit and sync Joplin notes and notebooks via a headless Joplin sidecar.
概览
让助手通过内置的无界面 Joplin 边车搜索、读取、创建、编辑、删除并同步 Joplin 笔记和笔记本。
- 可以做什么
- 以边车模式运行一个自包含的 Joplin 终端实例,并通过 MCP 暴露出来,因此无需 Joplin 桌面应用。工具涵盖列出笔记本、搜索笔记、读取单条或多条笔记、创建和编辑笔记与笔记本、经确认后删除笔记或笔记本,以及触发同步。它也可以在外部模式下连接已有的 Joplin 实例,并在 Joplin 桌面版已运行时自动协商空闲端口。
- 适用场景
- 适合用 Joplin 记录笔记、并希望助手在不打开桌面应用的情况下搜索、阅读、起草、更新或整理笔记的场景。也适合无界面实例与 Joplin 桌面版同步到同一后端的部署,包括 WSL 和 OneDrive 文件系统同步。
- 运行要求
- 需要本地 Node.js 运行环境;通过 npm 包 joplin-mcp-server 以 stdio 方式安装。外部模式需要 Joplin API 令牌(JOPLIN_TOKEN);边车模式自行管理令牌。可选同步配置使用 JOPLIN_SYNC_TARGET 及目标相关取值,如 JOPLIN_SYNC_PATH、JOPLIN_SYNC_USERNAME、JOPLIN_SYNC_PASSWORD,S3 还需 JOPLIN_SYNC_REGION、JOPLIN_SYNC_ENDPOINT、JOPLIN_SYNC_FORCE_PATH_STYLE。数据默认存放在 JOPLIN_PROFILE 下。
安装
在 SourceWeft 中
- 打开 控制台中的 Joplin Mcp Server,将其添加到工作区。
- 为需要使用其工具的对话启用该服务。
Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。
其他 MCP 客户端
参照 仓库 中的启动说明。
README
Joplin MCP Server
[npm version] [CI] [License: MIT]
A self-contained MCP (Model Context Protocol) server for Joplin. Bundles the Joplin Terminal CLI as a dependency — no desktop app, no global installs, no external processes to manage. Coexists with Joplin Desktop via automatic port negotiation.
Quick Start
That's it. The server spawns its own Joplin Terminal instance (sidecar mode), syncs to your configured backend, and exposes your notes via MCP.
Architecture
Sidecar Mode (Default)
The server bundles joplin as an npm dependency and manages its own Joplin Terminal process. No Joplin desktop app needed — the sidecar handles everything: data storage, sync, and the REST API.
If Joplin Desktop is already running, the sidecar automatically finds a free port (scanning 41184-41193) and runs alongside it. Both instances stay in sync if configured with the same sync target.
The Joplin CLI is resolved in this order: JOPLIN_CLI env var > node_modules/.bin/joplin (bundled) > global install > npx fallback.
Data is stored in ~/.config/joplin-mcp by default (separate from any desktop Joplin install).
External Mode
Connects to an existing Joplin instance instead of spawning a sidecar. Activated by setting JOPLIN_HOST or JOPLIN_PORT.
Configuration
Environment Variables
Command Line Options
Path Expansion
The --profile option and the --sync-path of a filesystem sync target support ~ and environment variable expansion for cross-platform compatibility. Other targets take a URL or bucket name in --sync-path, so it is passed through untouched:
This works in MCP client configs (.mcp.json, Claude Desktop) where shell expansion isn't available.
WSL auto-detection: On WSL, if a ~/ path is empty or missing, the server automatically checks the corresponding Windows path at /mnt/c/Users/<user>/.... This means --sync-path ~/OneDrive/Apps/Joplin just works on WSL without needing the full /mnt/c/... path.
Sync Targets
S3-compatible providers
The s3 target defaults to AWS (https://s3.amazonaws.com/, region us-east-1). Point it at any
S3-compatible provider with --sync-region and --sync-endpoint:
Cloudflare R2 and Wasabi work the same way — set --sync-endpoint to the provider's S3 endpoint.
MCP Client Configuration
Claude Code
The repository includes a .mcp.json that works with Claude Code's env var expansion:
Set JOPLIN_TOKEN in your shell (add to ~/.bashrc or ~/.zshrc):
Claude Desktop
Claude Desktop does not support ${VAR} expansion. Provide values directly:
With Sync (Claude Desktop)
External Mode
Docker
WSL Setup
Running in WSL? The sidecar architecture makes this straightforward — no Windows port forwarding needed. The server auto-detects WSL and handles path resolution between Linux and Windows filesystems.
Filesystem Sync via OneDrive (Recommended)
Both your Windows Joplin desktop and the WSL sidecar sync to the same OneDrive folder. They see the same notes without needing to talk to each other directly.
In your Joplin desktop app, configure sync to the same OneDrive folder: Tools > Options > Synchronisation > File system > /Users/YourName/OneDrive/Apps/Joplin
Joplin Desktop coexistence: If Desktop is running on port 41184, the sidecar automatically uses the next available port. A warning is logged at startup reminding you that both instances use separate databases and need the same sync target to stay in sync.
Cloud Sync
Alternatively, both instances can sync to Joplin Cloud or any other cloud backend:
External Mode (Port Forwarding)
If you prefer to connect directly to Windows Joplin instead of running a sidecar:
On Windows (PowerShell as Administrator):
In WSL:
Find your Windows IP with ipconfig on Windows or cat /etc/resolv.conf | grep nameserver from WSL.
Available Tools
Development
License
MIT
来源:README.md,提交 b3f3d82
工具
0版本历史
1- v2.3.3最新Sep 16, 2026
评分
已满足适用检查项的 50%
该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。
- 近 30 天内可连通25 分
请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。
- 已声明认证方式10 分
请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。
- 已列出工具15 分
请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。
- 描述必需15 分
- 图标10 分
- 文档15 分
- 许可证10 分