{"serverId":"mcp-registry/io.github.philipand/mkdshare","tools":[{"name":"archive_document","fixed":{"name":"archive_document","description":"Archive a document. For documents you own, archives it for everyone. For shared documents, archives it only for you.","inputSchema":{"type":"object","required":["slug"],"properties":{"slug":{"type":"string","description":"Document slug"}}},"annotations":{"readOnlyHint":false,"destructiveHint":true,"idempotentHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: false, destructiveHint: true, idempotentHint: true (inferred from the name).","verify":true}],"tokensBefore":79,"tokensAfter":79},{"name":"create_annotation","fixed":{"name":"create_annotation","description":"Add an annotation (comment) to a document. Pass quoted_text with the exact passage you want to annotate — the server will locate it automatically. Omit quoted_text to attach to the whole document. You can also provide start_offset + end_offset explicitly if needed.","inputSchema":{"type":"object","required":["slug","body"],"properties":{"body":{"type":"string","description":"Annotation text"},"slug":{"type":"string","description":"Document slug"},"end_offset":{"type":"integer","description":"Character offset where annotation ends"},"quoted_text":{"type":"string","description":"The exact text being annotated"},"start_offset":{"type":"integer","description":"Character offset where annotation starts"}}},"annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: false, destructiveHint: false, idempotentHint: false (inferred from the name).","verify":true}],"tokensBefore":210,"tokensAfter":210},{"name":"create_document","fixed":{"name":"create_document","description":"Create a new mkdshare.DEV document. If visibility is omitted the document is owner-only (login_required, restricted to your email).","inputSchema":{"type":"object","required":["title","content"],"properties":{"title":{"type":"string","description":"Document title"},"content":{"type":"string","description":"Markdown content"},"expires_at":{"type":"string","description":"ISO 8601 datetime after which the document expires, e.g. 2026-06-01T00:00:00Z"},"visibility":{"enum":["public","login_required","domain_restricted"],"type":"string","description":"Who can view the document. If the user didn't specify who should see it, ask them. Omitted = owner-only (login_required, restricted to your email)."},"editor_emails":{"type":"string","description":"Comma-separated emails that can edit this document (in addition to the owner)"},"allowed_domain":{"type":"string","description":"Domain allowed to view, e.g. company.com (domain_restricted visibility)"},"allowed_emails":{"type":"string","description":"Comma-separated emails allowed to view (login_required visibility)"},"domain_can_edit":{"type":"boolean","description":"When true, all users in allowed_domain can edit (not just view)"}}},"annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: false, destructiveHint: false, idempotentHint: false (inferred from the name).","verify":true}],"tokensBefore":342,"tokensAfter":342},{"name":"get_document","fixed":{"name":"get_document","description":"Read the full markdown content of a document by its slug.","inputSchema":{"type":"object","required":["slug"],"properties":{"slug":{"type":"string","description":"8-character document slug from the URL"}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":68,"tokensAfter":68},{"name":"list_annotations","fixed":{"name":"list_annotations","description":"List all annotations (comments) on a document.","inputSchema":{"type":"object","required":["slug"],"properties":{"slug":{"type":"string","description":"Document slug"}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":59,"tokensAfter":59},{"name":"list_documents","fixed":{"name":"list_documents","description":"List all mkdshare.DEV documents owned by or shared with the authenticated user.","inputSchema":{"type":"object","required":[],"properties":{}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":51,"tokensAfter":51},{"name":"search_documents","fixed":{"name":"search_documents","description":"Search mkdshare.DEV documents by title and content. Returns documents owned by or shared with the authenticated user that match the query.","inputSchema":{"type":"object","required":["query"],"properties":{"query":{"type":"string","description":"Search string matched case-insensitively against document title and content"}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":103,"tokensAfter":103},{"name":"update_document","fixed":{"name":"update_document","description":"Update an existing document you own. Omit any field to keep its current value.","inputSchema":{"type":"object","required":["slug"],"properties":{"slug":{"type":"string","description":"Document slug"},"title":{"type":"string","description":"New title"},"content":{"type":"string","description":"New markdown content"},"expires_at":{"type":"string","description":"ISO 8601 expiry datetime; omit to keep current"},"visibility":{"enum":["public","login_required","domain_restricted"],"type":"string","description":"New visibility level"},"editor_emails":{"type":"string","description":"Comma-separated emails that can edit; pass empty string to clear"},"allowed_domain":{"type":"string","description":"Domain allowed to view, e.g. company.com; required for domain_restricted"},"allowed_emails":{"type":"string","description":"Comma-separated emails allowed to view; pass empty string to clear"},"domain_can_edit":{"type":"boolean","description":"When true, all users in allowed_domain can edit (not just view)"}}},"annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: false, destructiveHint: false, idempotentHint: true (inferred from the name).","verify":true}],"tokensBefore":292,"tokensAfter":292},{"name":"upload_image","fixed":{"name":"upload_image","description":"Upload an image (png, jpeg, gif, webp; max 1MB) for embedding in documents. Returns a URL and a ready-to-paste markdown snippet. Images are served at an unguessable URL — anyone with the exact link can view.","inputSchema":{"type":"object","required":["filename","data"],"properties":{"data":{"type":"string","description":"Base64-encoded image bytes (standard alphabet, no data: URI prefix)"},"filename":{"type":"string","description":"Original filename, e.g. screenshot.png"}}},"annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: false, destructiveHint: false, idempotentHint: false (inferred from the name).","verify":true}],"tokensBefore":144,"tokensAfter":144}],"toolsChanged":9,"tokensSaved":0,"todo":[],"note":"Deterministic fixes. Changes marked verify need a human look before shipping (renames, inferred annotations, inferred types, removed text). Parameter descriptions in `todo` need to be written by someone who knows the API."}