呼叫 marsdawn 的三種方式。
MarsDawn 沒有自己的 AI 模型:它是為了審閱 Markdown 而做的,不是用來寫的,所以是哪個 agent 或模型寫出這份 Markdown 並不重要。agent 或腳本呼叫 marsdawn 有三種方式,最後都會執行同一個 export。
挑你的工具支援的那一種:免費的 marsdawn CLI、純 Markdown 的 skill 檔案,或是 marsdawn-mcp 這個 MCP 伺服器。三者都呼叫同一個 marsdawn export,回傳一樣的 JSON 結果。
該用哪一個
| 如果你的 agent | 就用 | 需要 |
|---|---|---|
| 能執行 shell 指令 | 命令列工具 | macOS 15 以上 |
| 會載入指令檔,例如 Claude Code | skill 檔案 | 命令列工具(skill 會幫你安裝) |
| 透過 MCP 呼叫工具 | marsdawn-mcp | marsdawn-mcp 0.2.1 以上、marsdawn 0.5.0 以上,以及 Node.js 20 以上 |
CLI
marsdawn export notes.md --json 可以被任何能執行 shell 指令的 agent 或腳本呼叫,因為是命令列工具,天生就跟模型無關。它回傳的每個欄位都寫在給 AI agent 的 marsdawn 參考裡,那一頁是 JSON schema 的權威來源,底下另外兩種方式都會連回去。
Skill 檔案
如果你的 agent 讀的是純 Markdown 指令,而不是直接執行 shell——目前是 Claude Code——marsdawn skill 就是一個檔案,教它安裝 marsdawn、執行 export、讀懂結果。因為它就是純 Markdown,其他會讀指令檔的 agent 也能用同一個檔案。
MCP 伺服器
marsdawn-mcp 是另一個獨立、公開、Apache-2.0 授權的 repository。它是一個有兩個工具的 MCP 伺服器,export_markdown_to_pdf 和 open_in_marsdawn,分別包住 marsdawn export --json 和 marsdawn open --json:把 MCP 用戶端指向它,工具呼叫回傳的 JSON 和 CLI 一樣。
- 取得方式:以 MCP Bundle(
marsdawn.mcpb)的形式附在GitHub release 上,或從原始碼以 stdio 執行伺服器。 - Registry:已上架 MCP Registry,名稱為
dev.southern-light.mcp/marsdawn。 - 託管:只能自架,沒有代管服務。伺服器跑在你自己的機器上,就在 marsdawn 旁邊。
- 系統需求:macOS、marsdawn 0.5.0 以上,以及執行伺服器需要的 Node.js 20 以上。
只能在你允許的資料夾裡運作
兩個工具都只能在你允許的資料夾裡讀寫:擴充功能的「Allowed folders」設定(預設是空的),或是你的 MCP 用戶端提供的 roots。兩者都沒有設定時,每次呼叫都會被拒絕,拒絕訊息會說明怎麼設定。每個路徑都必須是絕對路徑,而 export_markdown_to_pdf 只會寫出 .pdf 檔案,不會透過 symlink 寫。
安全性:請更新到 0.2.1——0.1.0 和 0.2.0 會讓呼叫把 PDF 寫到你帳號能寫入的任何路徑,已在 GHSA-fqgj-hcxc-34qc 修好。
同一個 export,三扇門
不管從哪個介面呼叫,底層行為都一樣:同一套輸出程式、同樣的主題和紙張大小,Mermaid 圖表畫不出來時也是同樣的 diagramErrors。這頁不重複那份規格——給 AI agent 的 marsdawn 參考裡有完整內容。
接下來
- 完整 JSON schema 和所有離開代碼:給 AI agent 的 marsdawn 參考。
- 給 Claude Code 等 agent 用的一個檔案:marsdawn skill。
- 精簡的 JSON 結果為什麼對 agent 自己的 context 很重要:節省 token 的審閱方式。