Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add PurpleLiu/siyuan-mcp --skill siyuan-skillgit clone --depth 1 https://github.com/PurpleLiu/siyuan-mcpWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/purpleliu/siyuan-mcp/siyuan-skill)<a href="https://agentmods.dev/skills/purpleliu/siyuan-mcp/siyuan-skill"><img src="https://agentmods.dev/badge/skills/purpleliu/siyuan-mcp/siyuan-skill/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/purpleliu/siyuan-mcp/siyuan-skill"><img src="https://agentmods.dev/badge/skills/purpleliu/siyuan-mcp/siyuan-skill.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00025 | $0.03056 |
| Opus 5 | $0.00013 | $0.01528 |
| Sonnet 5 | $0.00005 | $0.00611 |
| Haiku 4.5 | $0.00003 | $0.00306 |
Grade A, and why
siyuan-skill scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 12d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 361 lines — stays where its author put it; the contents beside it link to each section on GitHub.
思源筆記(SiYuan)Skill(for OpenClaw)
本 Skill 的目標是把「思源筆記 MCP tools」組織成穩定、可重複使用的工作流(workflow)。
- MCP 負責提供工具(tools)
- Skill 負責告訴 OpenClaw:在什麼情境用哪些 tools、怎麼組合、怎麼把結果寫回筆記
原則:MCP 與 Skill 分離(最小耦合)。Skill 不描述 MCP 內部實作,只描述「怎麼用」。
0) 先決條件(Setup)
- 準備 token/baseUrl:
export SIYUAN_TOKEN="your_token_here"
export SIYUAN_BASE_URL="http://127.0.0.1:6806"
- mcporter 需設定一個名為
siyuan的 MCP server:
mcporter config add siyuan \
--command "siyuan-mcp stdio --token $SIYUAN_TOKEN --baseUrl $SIYUAN_BASE_URL"
- 呼叫方式:
mcporter call siyuan.<tool_name> key=value
列出工具與參數:
mcporter list siyuan --all-parameters
1) 預設設定(本環境)
- Daily Note 筆記本:
Daily Note - Daily Note notebook_id:
20260205161632-m9mibni - 收集策略(Inbox):所有快速記錄一律先寫進 Daily Note(純 Markdown)
- TODO 格式:Markdown checkbox
- 未完成:
- [ ] ... - 已完成:
- [x] ...
- 未完成:
2) 核心工作流(MVP)
Workflow A:快速記錄(寫進今日 Daily Note)
適用:你說「幫我記一下…」「快速記錄…」「備忘…」
工具鏈:append_to_daily_note
mcporter call siyuan.append_to_daily_note \
notebook_id="20260205161632-m9mibni" \
content="- 2026-02-05 16:30 這是一則快速記錄"
Workflow B:新增待辦(checkbox,寫進今日 Daily Note)
適用:你說「提醒我…」「TODO…」「待辦…」
工具鏈:append_to_daily_note
mcporter call siyuan.append_to_daily_note \
notebook_id="20260205161632-m9mibni" \
content="- [ ] 明天買電池"
Workflow C:列出近 N 天未完成待辦(Daily Note 範圍)
適用:你說「我有哪些還沒做完?」「列出未完成待辦」
工具鏈:list_daily_note_todos
mcporter call siyuan.list_daily_note_todos \
notebook_id="20260205161632-m9mibni" \
days=7
預期回傳(示意):
[
{
"text": "明天買電池",
"done": false,
"date": "2026-02-05",
"document_id": "...",
"line_no": 12
}
]
Workflow D:搜尋筆記(關鍵字/標籤/檔名)
適用:你說「幫我找…」「搜尋…」
工具鏈:unified_search →(必要時)get_document_content
# 內容搜尋
mcporter call siyuan.unified_search content="kubernetes" limit=10
# 檔名搜尋
mcporter call siyuan.unified_search filename="週報" limit=10
# 標籤搜尋(不含 #)
mcporter call siyuan.unified_search tag="project" limit=10
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 12d ago First seen · 361 lines · 25 tokens per session scan A acb287bc19ca
siyuan-skill is a skill published in the GitHub repository PurpleLiu/siyuan-mcp (8 stars, last pushed 7mo ago), licensed Apache-2.0. It adds 25 tokens to every session and 3,056 once invoked, about $0.0001 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
pkm-session-end
Use when wrapping up a work session — creates devlog entry, captures undocumented decisions/research/debugging, audits link health of session work, and updates project index. Primarily used via the pkm-capture agent.
design-mcp-server
Design the tool surface, resources, and service layer for a new MCP server. Use when starting a new server, planning a major feature expansion, or when the user describes a domain/API they want to expose via MCP. Produces a design doc at docs/design.md that drives implementation.
api-canvas
DataCanvas primitive reference — a Tier 3 SQL/analytical workspace for tabular MCP servers, backed by DuckDB. Use when registering tables from upstream APIs, running ad-hoc SQL across them, and exporting results. Covers the acquire → register → query → export flow, per-table TTL, the token-sharing pattern for…
api-testing
Testing patterns for MCP tool/resource handlers using createMockContext and Vitest. Covers mock context options, handler testing, McpError assertions, format testing, Vitest config setup, and test isolation conventions.
release-and-publish
Ship a release end-to-end across every registry the project targets (npm, MCP Registry, GitHub Releases for .mcpb bundles, GHCR). Runs the final verification gate, fast-forwards main when the release rode a release PR, creates the annotated tag on the commit main now points at, pushes commits and tags, then publishes…
api-telemetry
Catalog of OpenTelemetry instrumentation built into framework @cyanheads/mcp-ts-core — spans, metrics, completion logs, env config, runtime caveats, custom instrumentation patterns, and cardinality rules. Use when enabling OTel export, adding custom spans or metrics in services, debugging missing telemetry, looking up…