{"name":"dev.flatmark/markdown-converter","slug":"flatmark-markdown-converter","title":"flatmark","description":"Document to Markdown MCP server: PDF, Word, PowerPoint, Excel and HTML, with OCR for large files.","url":"https://mcp.market/server/flatmark-markdown-converter","rating":null,"grade":"A","score":88,"certified":false,"status":"active","category":"other","tags":[],"presence":{"score":23,"stars":0,"forks":0,"downloads_week":null,"last_push_at":"2026-10-01T09:32:20.000Z","license":"MIT"},"uptime":{"percent":100,"checks":28,"ok":28,"last_checked_at":"2026-11-04T13:05:28.050Z","last_ok_at":"2026-11-04T13:05:28.050Z","latency_ms":172},"claimed":false,"transport":"remote","callable_via_gateway":true,"default_price_micros":0,"repository":"https://github.com/flatmark-dev/flatmark","website":"https://flatmark.dev","version":"1.0.0","remotes":[{"type":"streamable-http","url":"https://api.flatmark.dev/mcp/","headers":[{"description":"Optional API key; the anonymous tier works without it","isSecret":true,"name":"X-API-Key"}]}],"packages":[],"tools":[{"name":"convert_document","description":"Convert a document up to 8 MB to Markdown and return it directly.\n\nPass the file as base64 in `content_base64`, or as a download link in\n`file`, and its name in `filename`. The extension decides the type: .pdf,\n.docx, .pptx, .xlsx, .html, .htm or .txt. Returns `markdown` and `meta`\n(`filename`, `length` in characters). PDFs come back as plain text\nwithout headings and without OCR. For scans, tables and page numbers,\nuse `submit_conversion_job`. Works without an API key at the anonymous\nrate limit.\n\nCredits: 1 per call.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"filename":{"description":"The file name with its extension (.pdf, .docx, .pptx, .xlsx, .html, .htm or .txt). The extension decides how the file is read.","type":"string"},"content_base64":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"The file content, base64-encoded. Up to 8 MB before encoding."},"file":{"properties":{"download_url":{"description":"A public https URL of the file.","type":"string"},"file_id":{"description":"An identifier for the file. ChatGPT sets it; other clients may pass any label, such as the file name.","type":"string"},"mime_type":{"type":"string"},"file_name":{"type":"string"}},"required":["download_url","file_id"],"type":"object","default":null,"description":"The file as a download link, instead of `content_base64`. In ChatGPT, pass the user's uploaded file here. Other clients can set `download_url` to a public https URL."}},"required":["filename"],"additionalProperties":false}},{"name":"get_conversion_job","description":"Check a queued conversion job you submitted.\n\nReturns `job_id` and `status` (`queued`, `running`, `succeeded` or\n`failed`). A succeeded job includes the `markdown` when it is under\n100 KB, otherwise a `result_url` to download it (also free). A failed job\nincludes `error`, one sentence with the reason. Results are deleted\n7 days after submission. An expired result is reported in `error`.\nRequires an API key.\n\nCredits: free. This tool is not metered.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"job_id":{"description":"The `job_id` returned by `submit_conversion_job`.","type":"string"}},"required":["job_id"],"additionalProperties":false}},{"name":"submit_conversion_job","description":"Queue a document up to 25 MB and 200 pages for conversion with OCR and tables.\n\nPass the file as base64 in `content_base64`, or as a download link in\n`file`, and its name in `filename` (.pdf, .docx, .pptx, .xlsx, .html,\n.htm or .txt). Returns `job_id`, `status` and `result_url`. Call\n`get_conversion_job` with the `job_id` until `status` is `succeeded` or\n`failed`. A conversion may take up to about 2 minutes.\n\nOptional `webhook_url`: a public http or https URL that receives a POST\nwith the job's final state. The request carries\n`X-Appkit-Signature: sha256=<hex>`, an HMAC-SHA256 of the raw body keyed\nwith the returned `webhook_secret` (shown only once). 3 delivery attempts.\n\nRequires an API key. The credits are refunded if the job fails. The\nuploaded file is deleted when the job finishes. Results are kept for\n7 days after submission.\n\nCredits: 10 per call.","write_action":true,"price_micros":0,"input_schema":{"type":"object","properties":{"filename":{"description":"The file name with its extension (.pdf, .docx, .pptx, .xlsx, .html, .htm or .txt). The extension decides how the file is read.","type":"string"},"content_base64":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"The file content, base64-encoded. Up to 25 MB before encoding."},"file":{"properties":{"download_url":{"description":"A public https URL of the file.","type":"string"},"file_id":{"description":"An identifier for the file. ChatGPT sets it; other clients may pass any label, such as the file name.","type":"string"},"mime_type":{"type":"string"},"file_name":{"type":"string"}},"required":["download_url","file_id"],"type":"object","default":null,"description":"The file as a download link, instead of `content_base64`. In ChatGPT, pass the user's uploaded file here. Other clients can set `download_url` to a public https URL."},"webhook_url":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Optional. A public http or https URL that receives the job's final state."}},"required":["filename"],"additionalProperties":false}}],"scan":{"score":88,"grade":"A","scanned_at":"2026-10-01T13:48:16.968Z","report":{"scannerVersion":"0.1.10","scannedAt":"2026-10-01T13:48:16.913Z","components":{"code":{"score":-1,"max":25,"notes":["remote-only server, no package to scan"]},"reliability":{"score":20,"max":20,"notes":["remote reachable in 1121ms"]},"poisoning":{"score":15,"max":15,"notes":["3 tool descriptions checked"]},"auth":{"score":8,"max":15,"notes":["API key sent as a header"]},"maintenance":{"score":15,"max":15,"notes":["last push 0 days ago"]},"identity":{"score":8,"max":10,"notes":["endpoint served from the registry-verified namespace domain"]}},"findings":[],"inputs":{"probes":[{"url":"https://api.flatmark.dev/mcp/","reachable":true,"authRequired":false,"latencyMs":1121,"serverInfo":{"name":"flatmark","version":"1"}}],"packages":[],"repo":{"found":true,"owner":"flatmark-dev","repo":"flatmark","archived":false,"pushedAt":"2026-10-01T09:32:20Z","stars":0,"forks":0,"openIssues":0,"ownerType":"Organization","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/334309202?v=4","ownerCreatedAt":"2026-09-26T20:09:33Z","license":"MIT"},"icon":{"url":"https://flatmark.dev/app-static/brand/favicon.svg","source":"site"},"presence":{"stars":0,"forks":0,"downloadsWeek":null,"license":"MIT","lastPushAt":"2026-10-01T09:32:20.000Z","score":23}}}},"grade_history":[],"reviews":[]}