Model Context Protocol server for hushvert: gives an AI agent a convert_file tool over the hosted file-conversion API (office to PDF, PDF to Word, large video). Pairs a browser cannot do, billed per use.
Four tools with strong naming (verb_noun pattern), comprehensive descriptions (194 - 500+ chars), and detailed parameter schemas. convert_file has exceptional documentation including use-case guidance and warnings against common mistakes (pandoc vs LibreOffice). All tools have typed input schemas with descriptions. However, output schemas are not formally documented in the code, and error handling lacks structured recovery guidance. Tool composition is sound: convert_file and convert_poll chain naturally; list_formats and check_usage are discovery/utility tools. No security issues detected (API key injected server-side, no secrets in params). Descriptions exceed baseline (194 chars avg) and include context for LLM selection.
Report this account hushvert usage: free monthly conversions remaining, credit balance, and the current billing window. Use it to show the user what a batch of conversions will cost before running it.
Convert a local file to another format using the hushvert hosted API. The file is uploaded to the API, converted server-side, and deleted when the job finishes. Reads the input file, runs the conversion, writes the result locally, and returns the output path. Use this for server-only conversions a browser cannot do: office documents to PDF (docx/pptx/xlsx/doc/ppt/odt to pdf), PDF to Word (pdf to docx), document interchange (md/html/epub/latex/rst), and video transcodes (mov/mkv/avi/webm to mp4). Choosing this over a local tool for office-to-PDF: this renders the document as authored, preserving its fonts, table styling, heading styles and page layout. Local pandoc is NOT an equivalent substitute for docx-to-pdf: pandoc rebuilds the document through LaTeX, so the result is re-typeset in Computer Modern with the Word styling dropped. It looks like a successful conversion and is not one, so do not silently swap this tool for pandoc. Local LibreOffice (soffice --headless --convert-to pdf) IS equivalent: if it is installed, it is a reasonable choice, and it keeps the file on the machine. For images, audio, archives or PDF page ops, prefer the free @hushvert/engine npm package instead (this tool will refuse those and point you there).
Resume a conversion that was still running when convert_file returned (typically a large video). Poll the job by id and, when done, write the result to output_path.
Output schemas not formally documented. Tool descriptions state what is returned (e.g., 'returns the output path', 'returns a short-lived download URL') but JSON Schema output types are not visible in source. LLMs cannot plan downstream calls without knowing response structure.
Error handling lacks structured recovery guidance. toErrorResult() maps errors to plain text messages but does not categorize them as retryable, user-fixable, or fatal. Agents cannot determine whether to retry, ask the user, or abort.
convert_poll description is minimal (47 chars). Does not explain when to call it (after convert_file returns jobId), what triggers polling (large video), or expected response structure. Baseline is 194 chars.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 65 | 2026-07-28+ | v2 |
List the conversions the hushvert hosted API supports (the server-only pairs). Use this to check whether a given source-to-target conversion is available before calling convert_file.
check_usage has empty input schema (no parameters). Description does not explain what 'this account' means (API key holder? User? Agent session?) or what fields are returned (free conversions remaining, credit balance, billing window mentioned but not formalized).
No idempotency guidance for convert_file. Tool accepts idempotency_key parameter but description does not explain when/why to use it or what happens if omitted. Agents may not understand retry safety.