Labsco
MCP SERVER

mdshare Markdown Sharing

by urbanmorph

Upload markdown to mdshare and get a share link back, patch it with find and replace instead of rewriting it, issue and revoke links per permission, and work the comments people leave.

CMS & Blog PublishingVerified
Summary
The credential that grants full control stays out of every response that does not have to carry it.

upload_markdown returns the share link and not the admin URL, list_my_documents states that it does not include the credential, and get_admin_url exists so that retrieving it is a deliberate act — the tool tells the agent not to call it as part of an ordinary upload or share. The rest of the design is about not moving text you do not have to move: read and update both prefer a file path over inline content, patch_document does find and replace rather than a full rewrite, and reading to an output path is described as dramatically faster than echoing the document through the conversation.

What it is

An mdshare client: documents uploaded from disk or inline, share links issued and revoked per permission, comments read and answered, and the admin credential kept in local storage rather than returned in a response.

What you get
  • upload_markdown, which returns a read, comment or edit share link — comment by default — while the admin credential is stored locally in ~/.mdshare-mcp/documents.json and deliberately kept out of the response.
  • read_document and update_document, both preferring a path on disk over inline content so a long document never travels through the conversation.
  • patch_document, which applies find and replace operations rather than rewriting the whole document, with each find string required to be unique unless replace_all is set.
  • Link management: generate_link with a permission and a label, list_links with each link's status, permission and label, and revoke_link, which makes one permanently inactive.
  • Comments: list_comments including replies and resolution status, post_comment optionally anchored to specific text or replying to an existing comment, and resolve_comment.
  • get_versions for the edit history — who edited, when, and through what.
  • list_my_documents, returning what this machine uploaded with its share URL, permission, creation and expiry and explicitly not the credential, and get_admin_url, which returns it only when the user asks for it directly.
  • register_document, which takes an admin URL you already had saved, verifies it against the live API and stores it, so the key does not have to be pasted again.
Requirements

Nothing to supply — no account, no key. The local store at ~/.mdshare-mcp/documents.json, which holds the admin credentials so the key can be left out for documents this machine uploaded. An admin URL carrying the adm_ prefix for register_document, which rejects view, comment and edit share links. Admin permission for the link tools, and edit or admin permission for updating a document or resolving a comment.

Setup effort

One command — npx mdshare-mcp