io. github. reinlainer/ postmd-mcp-server
by reinlainer · remote · local (npm) · no sign-in to list tools · v2.6.1 · published by GitHub user reinlainer
Publish Markdown as a shareable web page, with document graphs
5 tools: 2 can delete or cancel things, 1 do something that can't be undone and 2 only read.
Scanned Oct 21, 2026
- Deletes or cancels2Claude Code: deny: see these tools
- Can't be undone1Claude Code: ask: see these tools
- Changes things0Claude Code: ask
- Only reads2Claude Code: allow: see these tools
No check matched anything in the tool definitions. No finding is not a safety guarantee. How the checks work.
claude mcp add --transport http postmd https://postmd.turink.com/mcpTools
Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.
5 tools
Deletes or cancels 2Claude Code: deny
postmd_delete_documentDelete a document.No findings
Why it is in this group
- The name "postmd_delete_document" says "delete": a word for removing or ending something.
- The server marks it destructive (destructiveHint: true).
Description, as the server wrote it Delete a document. Password-protected documents require the password or the owner's API key; documents without a password can be deleted by anyone.
Annotations the server declares
- title: Delete document
- destructiveHint: true
postmd_update_documentUpdate a document.No findings
Why it is in this group
- The name "postmd_update_document" says "update": a word for a change.
- The server marks it destructive (destructiveHint: true).
Description, as the server wrote it Update a document. Password-protected documents require the password or the owner's API key; documents without a password can be updated by anyone. Include `markdown` to replace the stored content; any metadata field replaces that field. clearPassword removes the password. Replacing the content requires notesOnReplace.
Annotations the server declares
- title: Update document
- destructiveHint: true
Can't be undone 1Claude Code: ask
postmd_create_documentPublish Markdown as a PostMD web page.No findings
Why it is in this group
- The name "postmd_create_document" says "create": a word for a change.
- The description's first verb is "publish": a word for a change that another call does not undo.
Description, as the server wrote it Publish Markdown as a PostMD web page. No API key required — anyone can publish. Returns docCode and data.shareUrl; hand shareUrl to people. Documents have a 30-day retention period (data.retainedUntil) that extends on each read. Documents without a password can be updated or deleted by anyone; password-protected documents require the password or the owner's API key. With an API key the document belongs to that member; groupId files it into that group (key with documents:write). The returned docCode can be kept at the top of the source file in a `postmd:document` comment (format at /docs/api) so a later session finds the document.
Annotations the server declares
- title: Publish document
- destructiveHint: false
Only reads 2Claude Code: allow
postmd_get_documentGet document metadata by docCode: title, fileName, hasPassword, viewerStyle, timestamps.No findings
Why it is in this group
- The name "postmd_get_document" says "get": a word for reading.
Description, as the server wrote it Get document metadata by docCode: title, fileName, hasPassword, viewerStyle, timestamps. Public — no API key needed. Content is not included; use postmd_get_document_raw for the Markdown source.
Annotations the server declares
- title: Get document info
- readOnlyHint: true
postmd_get_document_rawGet the stored Markdown source of a document.No findings
Why it is in this group
- The name "postmd_get_document_raw" says "get": a word for reading.
Description, as the server wrote it Get the stored Markdown source of a document. Public — no API key needed. Password-protected documents need `password`.
Annotations the server declares
- title: Get document source
- readOnlyHint: true
This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.
Install
Pinned to version 2.6.1. Values in angle brackets are yours to fill in.
claude mcp add --transport http postmd https://postmd.turink.com/mcpRun in a terminal.
Claude Code permissions
Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.
{
"permissions": {
"allow": [
"mcp__postmd__postmd_get_document",
"mcp__postmd__postmd_get_document_raw"
],
"ask": [
"mcp__postmd__postmd_create_document"
],
"deny": [
"mcp__postmd__postmd_update_document",
"mcp__postmd__postmd_delete_document"
]
}
}Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as postmd. Review it before you use it.
