DocMorph Studio
Measured conclusion: Deep-tested. L2 outcome: tools_ok.
Render Mermaid diagrams, Markdown to PDF and outlines, image OCR, and media metadata cleanup.
| Author | dev.docmorph |
|---|---|
| Access | remote |
| Publisher key required | No |
| Measured state | Deep-tested |
| L1 liveness | alive |
| L1 latency | 3725 ms |
| Last measured | 2026-10-24 |
Add to your agent
Copy this into your MCP client config:
{
"mcpServers": {
"DocMorph Studio": {
"url": "https://docmorph.dev/mcp",
"transport": "streamable-http"
}
}
}
Measured tools (11)
render_mermaid_diagramRender a Mermaid diagram into styled SVG vector image code and node metadata. Supports flowchart/graph and sequenceDiagram (sequence) types. Other types (ER/gantt/mindmap/pie/state) should be rendered on client-side using mermaid.js.
Parameters:
syntax(required) — string — Mermaid chart syntax (e.g. 'graph TD; A[Start]-->B[End];')theme— string — Color palette theme (default: 'default')title— string — Optional diagram title
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
extract_markdown_outlineExtract hierarchical headings, table of contents, word/character statistics, and document structure outline from Markdown text.
Parameters:
content(required) — string — Full Markdown text to analyzemarkdown— string — Alternative alias for content property
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
convert_markdown_to_pdfCompile Markdown text into a styled, publication-ready PDF document with automatic pagination and headers.
Parameters:
markdown(required) — string — Markdown text to compiletheme— string — PDF layout and typography theme (default: 'academic')title— string — Document title for the PDF headerpageSize— string — Page size specification (default: 'A4')
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
parse_pdf_to_markdownExtract structured Markdown, tables, and mathematical formulas from a base64 encoded PDF using AI vision OCR.
Parameters:
base64Pdf(required) — string — Base64 encoded PDF binary datafileName— string — Original filename
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
image_ocr_recognizeExtract multilingual text, complex headings, formulas, and tabular data from images using multimodal AI vision.
Parameters:
base64Image(required) — string — Base64 encoded image string or data URLmode— string — OCR recognition modelanguage— string — Language hint (auto, zh, en, ja, ko, etc.)
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
assist_ocr_textAI assistant to translate, proofread, or summarize extracted OCR document text.
Parameters:
text(required) — string — Extracted text contentaction(required) — string — AI action to performtargetLang— string — Target language for translation
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
inspect_media_securityDeeply inspect image, video, or audio files for privacy leaks, including GPS physical coordinates, camera/recorder hardware serials, recording timestamps, and editing software signatures.
Parameters:
base64Data(required) — string — Base64 encoded image, video, or audio binary payload (or data URI)fileName— string — Optional filename with extension (e.g. photo.jpg, vlog.mp4, interview.mp3)mediaType— string — Media classification type (default: auto)
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
sanitize_media_securityPermanently wipe and sanitize privacy metadata from image, video, or audio files (strip GPS coordinates, device fingerprints, timestamps, and comments) with zero quality loss.
Parameters:
base64Data(required) — string — Base64 encoded image, video, or audio binary payload (or data URI)clearGps— string — Whether to erase GPS coordinates ('true' or 'false', default 'true')fileName— string — Optional filename with extension (e.g. photo.jpg, vlog.mp4, note.wav)mediaType— string — Media classification type (default: auto)clearDevice— string — Whether to erase camera device fingerprints ('true' or 'false', default 'true')clearTimestamps— string — Whether to zero container recording timestamps ('true' or 'false', default 'true')
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
word_protectProtect a Word .docx document in one call: set an open password (Agile AES-256 encryption, opens in Microsoft Word / WPS / LibreOffice), add a native Word text watermark, add copyright info (author/custom property/footer), clean privacy metadata, and restrict editing (read-only / comments only / tracked changes only / forms, optionally password-protected). Returns the protected .docx as base64 plus a summary of applied operations. Max input 20MB base64. Privacy: when called remotely (Streamable HTTP / SSE) the file is uploaded to the DocMorph server and processed in memory only; it is not written to disk or retained after processing, and passwords and file contents are never logged. When the MCP server runs locally over stdio, the file is processed entirely on this machine.
Parameters:
base64Docx(required) — string — Base64 encoded .docx binary data (or data URI). May be an already encrypted .docx if currentPassword is givenfileName(required) — string — Original filename (e.g. report.docx); used to name the output filecleanPrivacy— string — Whether to clean privacy metadata ('true' or 'false', default 'false'). Cleans the items in privacyItemsopenPassword— string — Optional open password to encrypt the output with (applied last). Omit to leave the file openable without a passwordprivacyItems— string — Comma-separated privacy items to clean: author, timestamps, company, customProps, reviewers, or 'all' (default: 'author,company,reviewers'). Setting it implies cleanPrivacycopyrightText— string — Optional copyright notice stored as the custom document property 'Copyright'watermarkText— string — Optional watermark text (max 100 chars), e.g. 'CONFIDENTIAL'. Omit for no watermark. Replaces any existing Word watermarkwatermarkColor— string — Watermark color as hex (default: '#C0C0C0')copyrightAuthor— string — Optional author name written to the document properties (dc:creator / lastModifiedBy)copyrightFooter— string — Optional copyright line appended to the footer of every sectioncurrentPassword— string — Only if the input .docx is already password-protected: its current open password, used to unlock it before processingrestrictEditing— string — Restrict editing in Word: readOnly, comments (comments only), trackedChanges (tracked changes only), forms (filling in forms) (default: 'none')watermarkLayout— string — Watermark layout (default: 'diagonal')restrictPassword— string — Optional password required to stop the editing restriction in Word (only with restrictEditing). Without it anyone can stop protectionwatermarkOpacity— string — Watermark opacity from 0.05 to 1 (default: '0.5')watermarkFontSize— string — Watermark font size in pt (8-200), or 'auto' to fit the page width (default: 'auto')watermarkFontFamily— string — Watermark font family (default: SimSun for Chinese, MS Mincho for Japanese, otherwise Calibri)
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
word_remove_passwordRemove the open password from an encrypted Word .docx (Agile encryption, Office 2010+) using the known password, with integrity (HMAC) verification. Returns the decrypted .docx as base64. A wrong password returns a clear WRONG_PASSWORD error; this tool does not crack or guess passwords. Max input 20MB base64. Privacy: when called remotely (Streamable HTTP / SSE) the file is uploaded to the DocMorph server and processed in memory only; it is not written to disk or retained after processing, and passwords and file contents are never logged. When the MCP server runs locally over stdio, the file is processed entirely on this machine.
Parameters:
base64Docx(required) — string — Base64 encoded encrypted .docx binary data (or data URI)password(required) — string — The document's current open passwordfileName— string — Optional original filename (e.g. report.docx); used to name the output file
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
word_inspect_securityInspect the security and privacy state of a Word .docx: whether it is password-encrypted and with which algorithm, editing restriction mode and whether it is password-protected, presence of a text watermark, and privacy metadata (author, last modified by, company, manager, timestamps, custom properties, comment/revision author names). For encrypted files, pass the password to also inspect the contents. Max input 20MB base64. Privacy: when called remotely (Streamable HTTP / SSE) the file is uploaded to the DocMorph server and processed in memory only; it is not written to disk or retained after processing, and passwords and file contents are never logged. When the MCP server runs locally over stdio, the file is processed entirely on this machine.
Parameters:
base64Docx(required) — string — Base64 encoded .docx binary data (or data URI), encrypted or notfileName— string — Optional filename (e.g. report.docx)password— string — Optional open password of an encrypted .docx, to also inspect its contents
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
Measured by MCPYP probing. Untested fields are omitted, never estimated. Listing is always free; MCPYP never proxies calls or stores user tokens.