MintRender
All docs pages

AI assistants (MCP)

MintRender is a remote MCP server at https://mintrender.com/mcp. An AI assistant can list your templates, render images and PDFs, store images from links and make draft templates for you.

Connect

With sign-in (OAuth). Add a custom connector with the URL https://mintrender.com/mcp. The assistant opens MintRender. Sign in, pick a workspace (only workspaces where you are an owner or an editor), and press Allow. To disconnect it, open Account, Connected apps and press Revoke.

With an API key. For clients that take headers:

{  "mcpServers": {    "mintrender": {      "url": "https://mintrender.com/mcp",      "headers": { "Authorization": "Bearer mr_live_…" }    }  }}

A test key (mr_test_…) works here too. Its files have a watermark and cost nothing.

The tools

Each tool calls the same API route as your own code, with the same checks, credits and errors.

list_templates List templates

Lists the workspace's templates with their sizes and params (the names `render` takes in `data`, with their types and defaults). Call this first.

No inputs.

Reads only.

get_template Get a template

One template: its params, sizes and published versions. Example: {"template": "tpl_3k2jQ8xLm0P4nB7vR2sT"}

InputTypeAbout
templatestringRequired. Template id (tpl_…)

Reads only.

render Render a template

Renders the template's published version with `data` (param name → value) and gives the file URLs; for images up to 1 MB also the image. 1 image or PDF page = 1 credit; the same template and data again is free. Example: {"template": "tpl_3k2j…", "data": {"title": "Ten ways to sell more"}, "format": "png"}

InputTypeAbout
templatestringRequired. Template id (tpl_…)
dataobjectParam values; a value is text, an image URL, a colour, or an object of properties
formatpng, jpg, webp, svg, pdf Default: "png".
sizesarraySizes to make (default ["main"])
versionintegerA published version (default: the newest)

Spends credits or adds a draft or an asset. It never changes or deletes existing work.

render_status Render status

The status and files of a render or job. Example: {"id": "rnd_9x7Lm2Qp8sT4vB0nC6kR"}

InputTypeAbout
idstringRequired. Render id (rnd_…)

Reads only.

upload_asset_from_url Upload an image from a URL

Fetches a public image (PNG, JPEG, GIF, WebP, SVG) or CSV and stores it; use the answer's `src` (asset:…) in data or a template. Example: {"url": "https://example.com/logo.png"}

InputTypeAbout
urlstringRequired.
namestring

Spends credits or adds a draft or an asset. It never changes or deletes existing work.

generate_template Make a template from a description

Designs a new draft template from a short description and a size; the user opens it in the editor and publishes it. It never publishes by itself. Example: {"description": "an OG image for a cooking blog, dark, big title, logo bottom left", "size": "1200x630"}

InputTypeAbout
descriptionstringRequired. At most 500 characters.
sizestringWIDTHxHEIGHT, like 1200x630 Default: "1200x630".

Spends credits or adds a draft or an asset. It never changes or deletes existing work.

What the tools give back

  • Each result has a short text for the assistant and the API's JSON answer as structured content.
  • render also gives the image itself when the first file is a PNG, JPEG or WebP of at most 1 MB, so the assistant can show it.
  • A sync render that would take long (a PDF over 10 pages, or more than 5 sizes) comes back as a job. The assistant checks it with render_status.
  • An error comes back as a tool error with the API's message and the field it is about.

Credits and limits

A connection charges the chosen workspace like an API key. Renders made through MCP count as the source mcp in renders.by_source of GET /v1/usage. The rate limits of the plan apply to each connection, as they do to each key. See Credits and Limits.

What a connection cannot do

A connection made with sign-in works only on the MCP server. Its tokens are refused by every other route. It cannot read or change API keys, billing, members or webhooks, and it cannot publish templates. Templates it makes are drafts. You check and publish them in the editor.

Server details

ThingValue
TransportStreamable HTTP. One JSON-RPC message per POST, one JSON answer. No server-sent events and no sessions. GET answers 405.
Protocol versions2026-07-28, 2025-11-25, 2025-06-18, 2025-03-26
AuthAn API key, or an OAuth access token (mr_oat_…). Without one, the 401 answer has WWW-Authenticate with resource_metadata.
OAuth discovery/.well-known/oauth-protected-resource and /.well-known/oauth-authorization-server
OAuth clientsClient ID Metadata Documents, or Dynamic Client Registration at /oauth/register. Public clients only, PKCE with S256, one scope: mcp.
TokensAccess tokens last 1 hour. Refresh tokens last 30 days and change on each use. A refresh token used twice ends the connection.
OriginRequests without an Origin header (servers, command-line tools) are allowed. Browsers must come from our site or an allowed MCP client (by default claude.ai and claude.com). Others get 403 origin.

Support: write to support@mintrender.com with the request id from the error.

Seen MintRender used for content that breaks our terms? Report it. Questions about the API: support@mintrender.com, with the request id.