com. makespdf/ makespdf
by makespdf.com · remote · no sign-in to list tools · v1.0.0 · published by com.makespdf
Compliant PDFs (PDF/A-2A + PDF/UA-1) from markdown or a compact DSL - fast, no headless browser.
11 tools: 1 can delete or cancel things, 5 change things and 5 only read.
Scanned Oct 21, 2026
- Deletes or cancels1Claude Code: deny: see these tools
- Can't be undone0Claude Code: ask
- Changes things5Claude Code: ask: see these tools
- Only reads5Claude Code: allow: see these tools
No check matched anything in the tool definitions. No finding is not a safety guarantee. How the checks work.
claude mcp add --transport http makespdf https://makespdf.com/api/v1/mcp --header 'Authorization: <your-authorization>'Tools
Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.
11 tools
Deletes or cancels 1Claude Code: deny
delete_templateDelete a caller-owned template by ID.No findings
Why it is in this group
- The name "delete_template" says "delete": a word for removing or ending something.
Description, as the server wrote it Delete a caller-owned template by ID. Library rows cannot be deleted. Mirrors DELETE /api/v1/templates/:id.
Changes things 5Claude Code: ask
render_markdownRender GitHub-flavored markdown to a real PDF (PDF/A-2A + PDF/UA-1 dual-compliant, tagged).No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Render GitHub-flavored markdown to a real PDF (PDF/A-2A + PDF/UA-1 dual-compliant, tagged). **BILLED - consumes credits at the rate of 1 credit per 10 pages.** Returns JSON metadata (pageCount, creditsDeducted, creditsRemaining, artifactId) plus the PDF bytes as an embedded base64 resource. On the free plan the PDF is watermarked; paid plans render clean. Mirrors POST /api/v1/md. Run `validate_markdown` first - it is free and catches heading-hierarchy and alt-text problems before you pay to render them. There is no free markdown preview: markdown needs no layout iteration, so this is the only markdown render tool.
render_templateRender any readable template (curated library row or caller-owned) to a real PDF.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Render any readable template (curated library row or caller-owned) to a real PDF. **BILLED — consumes credits at the rate of 1 credit per 10 pages.** Returns JSON metadata (pageCount, creditsDeducted, creditsRemaining, artifactId) plus the PDF bytes as an embedded base64 resource. On the free plan the PDF is watermarked; paid plans render clean. Mirrors POST /api/v1/render with the { templateId, data } body shape. Use `render_dsl_preview` first to confirm the layout — that's free and watermarked. Only call this once you're confident the template is right.
report_feedbackReport feedback about this MCP server to the makesPDF team — where you got stuck, a tool error or description that misled you, a capability you needed but could not find, or a conc…No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Report feedback about this MCP server to the makesPDF team — where you got stuck, a tool error or description that misled you, a capability you needed but could not find, or a concrete suggestion for the server. Call it after a tool failed and you could not work out why, when an error message or tool description contradicted the skill file, when something you needed is missing, or when you have a specific improvement in mind. Write the problem in your own words: what you were trying to do, what you tried, and what you expected to happen. Do not include the user's document text, markdown, DSL source or data values. Describe the problem instead; if it concerns a specific render, pass its artifactId. This is not a support channel — nobody replies in real time. Calling it is free: it does not consume credits and does not affect the user's renders.
save_templateSave a user-owned DSL template for later reuse via /api/v1/render.No findings
Why it is in this group
- The name "save_template" says "save": a word for a change.
Description, as the server wrote it Save a user-owned DSL template for later reuse via /api/v1/render. Validates the DSL with the catalog before persisting. Free (no credits). Pass `sampleData` (any JSON value) so the template's binding shape is preserved — the modify-template flow on /ai/chat round-trips this back into the Render data panel when the user returns. Optional `description` is a one-sentence summary surfaced on /templates. Returns { templateId, name, createdAt }.
update_templateUpdate a saved template's DSL, name, description, and/or sampleData.No findings
Why it is in this group
- The name "update_template" says "update": a word for a change.
Description, as the server wrote it Update a saved template's DSL, name, description, and/or sampleData. Revalidates the DSL when provided. For `description` and `sampleData`: pass `null` to clear; omit to leave unchanged. Mirrors PUT /api/v1/templates/:id.
Only reads 5Claude Code: allow
get_templateFetch a single template (library or caller-owned) by ID, including its full DSL source and sampleData.No findings
Why it is in this group
- The name "get_template" says "get": a word for reading.
Description, as the server wrote it Fetch a single template (library or caller-owned) by ID, including its full DSL source and sampleData. Mirrors GET /api/v1/templates/:id.
list_templatesList templates visible to the caller — both curated library templates (no owner) and the caller's own saved templates.No findings
Why it is in this group
- The name "list_templates" says "list": a word for reading.
Description, as the server wrote it List templates visible to the caller — both curated library templates (no owner) and the caller's own saved templates. Metadata only (no DSL bodies). Paginated. Use `owner: 'mine'` to restrict to your own; `owner: 'library'` for the curated catalog only; default `'all'` returns both. Optional `category`, `tags` (comma-separated, ANDed), and `q` (free-text over name + description) filters apply across both. Mirrors GET /api/v1/templates.
render_dsl_previewRender a DSL template + data to a preview PDF.No findings
Why it is in this group
- The name "render_dsl_preview" says "preview": a word for reading.
Description, as the server wrote it Render a DSL template + data to a preview PDF. Free (no credits), always watermarked 'PREVIEW — NOT FOR USE'. Returns JSON metadata plus the PDF bytes as an embedded base64 resource. Mirrors POST /api/v1/preview.
validate_dslValidate a PDF template DSL script for structure, tag/style correctness, and accessibility issues.No findings
Why it is in this group
- The name "validate_dsl" says "validate": a word for reading.
Description, as the server wrote it Validate a PDF template DSL script for structure, tag/style correctness, and accessibility issues. Runs catalog validation plus alt-text checks. Cheap — no rendering. Mirrors POST /api/v1/preview/validate.
validate_markdownValidate a markdown document for PDF/UA-1 accessibility issues (heading hierarchy, missing alt text).No findings
Why it is in this group
- The name "validate_markdown" says "validate": a word for reading.
Description, as the server wrote it Validate a markdown document for PDF/UA-1 accessibility issues (heading hierarchy, missing alt text). Cheap — no rendering. Mirrors POST /api/v1/md/validate.
This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.
Install
Pinned to version 1.0.0. Values in angle brackets are yours to fill in.
claude mcp add --transport http makespdf https://makespdf.com/api/v1/mcp --header 'Authorization: <your-authorization>'Run in a terminal.
Claude Code permissions
Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.
{
"permissions": {
"allow": [
"mcp__makespdf__validate_dsl",
"mcp__makespdf__validate_markdown",
"mcp__makespdf__render_dsl_preview",
"mcp__makespdf__list_templates",
"mcp__makespdf__get_template"
],
"ask": [
"mcp__makespdf__render_template",
"mcp__makespdf__save_template",
"mcp__makespdf__update_template",
"mcp__makespdf__render_markdown",
"mcp__makespdf__report_feedback"
],
"deny": [
"mcp__makespdf__delete_template"
]
}
}Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as makespdf. Review it before you use it.