Solomd
zhitongblog/solomd
Read, search, edit, and version-control any folder of Markdown notes via the SoloMD MCP server.
Orchestration guidance for Joplin note, notebook, and tag management tools
$ npx skills add alondmnt/joplin-mcp --skill joplin -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install alondmnt/joplin-mcp joplin --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/alondmnt/joplin-mcp.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/joplin .claude/skills/joplin && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "joplin" agent skill from https://github.com/alondmnt/joplin-mcp/tree/main/skills/joplin into .claude/skills/joplin/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "joplin", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/alondmnt/joplin-mcp/tree/main/skills/joplinType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add alondmnt/joplin-mcp --skill joplin -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install alondmnt/joplin-mcp joplin --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/alondmnt/joplin-mcp.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/joplin .agents/skills/joplin && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "joplin" agent skill from https://github.com/alondmnt/joplin-mcp/tree/main/skills/joplin into .agents/skills/joplin/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "joplin", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add alondmnt/joplin-mcp --skill joplin -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install alondmnt/joplin-mcp joplin --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/alondmnt/joplin-mcp.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/joplin .cursor/skills/joplin && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "joplin" agent skill from https://github.com/alondmnt/joplin-mcp/tree/main/skills/joplin into .cursor/skills/joplin/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "joplin", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/alondmnt/joplin-mcp.git --path skills/joplin--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add alondmnt/joplin-mcp --skill joplin -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install alondmnt/joplin-mcp joplin --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/alondmnt/joplin-mcp.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/joplin .gemini/skills/joplin && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "joplin" agent skill from https://github.com/alondmnt/joplin-mcp/tree/main/skills/joplin into .gemini/skills/joplin/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "joplin", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install alondmnt/joplin-mcp joplinInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add alondmnt/joplin-mcp --skill joplin -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/alondmnt/joplin-mcp.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/joplin .github/skills/joplin && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "joplin" agent skill from https://github.com/alondmnt/joplin-mcp/tree/main/skills/joplin into .github/skills/joplin/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "joplin", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add alondmnt/joplin-mcp --skill joplin -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install alondmnt/joplin-mcp joplin --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/alondmnt/joplin-mcp.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/joplin .opencode/skills/joplin && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "joplin" agent skill from https://github.com/alondmnt/joplin-mcp/tree/main/skills/joplin into .opencode/skills/joplin/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "joplin", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
joplinOrchestration guidance for Joplin note, notebook, and tag management tools
Joplin is an agent skill from alondmnt/joplin-mcp. Orchestration guidance for Joplin note, notebook, and tag management tools
Its SKILL.md is about 900 tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in Knowledge Management, covering MCP servers and Note-taking. It works with Model Context Protocol. The repository describes itself as: MCP server for the Joplin note taking app. The licence is MIT.
4 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit b84c313. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md (its code samples are json).
From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names these keys or tokens, usually read from environment variables:
JOPLIN_TOKENFrom names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Joplin loads about 897 tokens when it runs. Until then it costs about 20 tokens; SKILL.md has 333 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from alondmnt/joplin-mcp at commit b84c313, republished under its MIT licence (© alondmnt). 333 words, ~897 tokens.
.claude/skills/joplin/SKILL.md (or your agent's skills folder).This skill covers non-obvious tool interactions. Tool parameters are already in the tool schemas — don't restate them here.
If Joplin MCP tools (e.g., ping_joplin) aren't available, the server isn't connected. Follow these steps to configure it automatically:
Ask the user for their Joplin API token. Tell them where to find it:
Open Joplin Desktop → Tools → Options → Web Clipper → copy the Authorization token.
Write .mcp.json to the project root with the token. Use the Write tool to create the file:
{
"mcpServers": {
"joplin-mcp": {
"command": "uvx",
"args": ["--from", "joplin-mcp", "joplin-mcp-server"],
"env": {
"JOPLIN_TOKEN": "<paste_token_here>"
}
}
}
}This file is already covered by .gitignore (.* rule) so it won't be committed.
Tell the user to restart Claude Code. The MCP server is loaded at startup, so a restart is required for the tools to appear.
After restart, call ping_joplin to verify the connection.
edit_note — find/replace, append, prepend. Use this for partial changes.update_note(body=...) — replaces the entire body. Only use when you intend to rewrite the whole note.If you need to change a paragraph, fix a typo, or append a section: always use edit_note.
get_note returns a table of contents (not content) when a note exceeds ~50 lines. To read the actual content:
get_note(note_id) — see the TOC and line countget_note(note_id, section="Section Name") — extract a specific sectionget_note(note_id, start_line=1, line_count=50) — sequential reading by line rangeget_note(note_id, force_full=True) — force full content (large context cost)| Parameter | Accepts |
|---|---|
note_id | 32-char hex ID only |
notebook_name | Human-readable name (e.g., "Work") |
tag_name | Human-readable name (e.g., "important") |
parent_name | Notebook name or path (e.g., "Projects/Work"); omit for top-level, "/" to move to top-level |
Search results return IDs — use those IDs in subsequent calls.
tag_note fails if the tag doesn't exist. Before tagging multiple notes:
create_tag("my-tag") — create it first (idempotent if it already exists)tag_note(note_id, "my-tag") for each noteget_note(id) # see TOC + line count
get_note(id, section="Target") # read the section you need
edit_note(id, old_string="...", new_string="...") # surgical editcreate_notebook("Sub") # top-level notebook: omit parent_name
create_notebook("Sub", parent_name="Projects/Work") # under an existing notebook (by name or path)
create_note("Title", notebook_name="Sub", body="...")create_tag("project-x") # ensure tag exists first
find_notes("project x") # get note IDs
tag_note(id1, "project-x") # tag each result
tag_note(id2, "project-x")list_notebooks() # find target notebook ID
update_note(note_id, notebook_id="<target_hex_id>")© alondmnt, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in skills/joplin of alondmnt/joplin-mcp.
Open the folder on GitHubat commit b84c313
Joplin next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Joplin this skillalondmnt/joplin-mcp | 173 | — | ~897 | Automated safety check: Pass | MIT | |
| Solomdzhitongblog/solomd | 1.2k | — | ~2k | Automated safety check: Pass | MIT | |
| Siyuan MCP Create Edityangtaihong59/siyuan-plugins-mcp-sisyphus | 116 | — | ~665 | Automated safety check: Pass | MIT | |
| AI BrainOotto-AI/claude-content-skills | 130 | — | ~1.1k | Automated safety check: Pass | MIT | |
| Obsidian Project Memorybrycewang-stanford/Auto-Empirical-Research-Skills | 4.6k | — | ~2.4k | Automated safety check: Pass | Custom licence | |
| Confluence To Markdowniurykrieger/claude-bedrock | 105 | 1 repos | ~2.8k | Automated safety check: Notes | MIT |
zhitongblog/solomd
Read, search, edit, and version-control any folder of Markdown notes via the SoloMD MCP server.
yangtaihong59/siyuan-plugins-mcp-sisyphus
MCP playbook for creating and editing SiYuan documents and blocks.
Ootto-AI/claude-content-skills
Give Claude a permanent, searchable long-term memory using an Obsidian vault as the store.
brycewang-stanford/Auto-Empirical-Research-Skills
This skill should be used when the user asks to maintain an Obsidian knowledge base for a research project, import an existing research repository into Obsidian, keep project memory or daily notes…
iurykrieger/claude-bedrock
Internal fetcher module for Confluence pages. An agent skill from iurykrieger/claude-bedrock.
MemPalace/mempalace
Gives an agent a local memory palace over MCP: verbatim conversation memory, semantic search and a temporal knowledge graph, with a per-session recall protocol.
Works with
Categories
Orchestration guidance for Joplin note, notebook, and tag management tools. Joplin is an agent skill from alondmnt/joplin-mcp.
Joplin fits situations like: tasks that involve MCP servers; tasks that involve Note-taking.
Run `npx skills add alondmnt/joplin-mcp --skill joplin -a claude-code`. Or copy the skill folder (skills/joplin in alondmnt/joplin-mcp) into .claude/skills/joplin in your project. Claude Code loads it when a task matches its description.
Run `npx skills add alondmnt/joplin-mcp --skill joplin -a codex`. Or copy the skill folder (skills/joplin in alondmnt/joplin-mcp) into .agents/skills/joplin in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add alondmnt/joplin-mcp --skill joplin -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/joplin, .gemini/skills/joplin, .github/skills/joplin and .opencode/skills/joplin in your project.
Going by SKILL.md and its folder, Joplin needs credentials named JOPLIN_TOKEN. Our summary lists: A credential in JOPLIN_TOKEN.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Joplin is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 897 tokens (SKILL.md is roughly 3.6k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Joplin: Solomd (zhitongblog/solomd, 1.2k stars), Siyuan MCP Create Edit (yangtaihong59/siyuan-plugins-mcp-sisyphus, 116 stars), AI Brain (Ootto-AI/claude-content-skills, 130 stars) and Obsidian Project Memory (brycewang-stanford/Auto-Empirical-Research-Skills, 4.6k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
alondmnt (a GitHub user) maintains it in alondmnt/joplin-mcp, which has 173 GitHub stars. The repository was last updated on September 12, 2026.
Source: alondmnt/joplin-mcp on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.