Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, get in touch and we’ll put it right.

Templated

NPM · MCP-SERVER-TEMPLATED · 2 COMPONENTS · SCANNED SEP 20

Generate images, videos and PDFs from templates. Manage templates, folders, uploads and fonts.

+3 this week 78 Trust /100
Trust breakdown (7 categories)

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score → Why this is hard to score →

Supply Chain Security98
  • No malware found by supply-chain analysis.Pass
  • No known CVEs affecting this package version or its production dependencies.Pass
  • No install/post-install scripts declared.Pass
  • 31 of 95 dependencies flagged as unhealthy. View diagnostics → Partial
Provenance & Transparency45
Schema Quality & AI Usability80
  • AI-judged instruction clarity (excellent).Pass
  • Tool/resource definitions use about 1962 tokens (~78/item across 25 items; 25 tools + 0 resources), lean.Pass
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management51
  • Stability check failed: the tool surface changed between 1.6.0 and 1.7.1: 0 tool removals, 1 breaking changes, 0 additions. See how to fix → Fail
Tool Coverage100
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 100% of tool parameters carry a description.Pass
Tool Safety100
  • No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
  • All 6 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation.Pass
  • An AI judge read all 25 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
  • Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Install

How do I install the Templated MCP server?

Templated runs locally as an npm package, launched with npx -y mcp-server-templated. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

npm · mcp-server-templated

# add to Claude Code
claude mcp add templated-io-mcp-server-templated -- npx -y mcp-server-templated
// .cursor/mcp.json
{
  "mcpServers": {
    "templated-io-mcp-server-templated": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-server-templated"
      ]
    }
  }
}
// .vscode/mcp.json
{
  "servers": {
    "templated-io-mcp-server-templated": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-server-templated"
      ]
    }
  }
}
# add to Codex CLI
codex mcp add templated-io-mcp-server-templated -- npx -y mcp-server-templated
// opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "templated-io-mcp-server-templated": {
      "type": "local",
      "command": [
        "npx",
        "-y",
        "mcp-server-templated"
      ],
      "enabled": true
    }
  }
}
# add to OpenClaw
openclaw mcp add templated-io-mcp-server-templated --command npx --arg -y --arg mcp-server-templated
# ~/.hermes/config.yaml
mcp_servers:
  templated-io-mcp-server-templated:
    command: "npx"
    args: ["-y", "mcp-server-templated"]
// ~/.netclaw/config/netclaw.json
{
  "McpServers": {
    "templated-io-mcp-server-templated": {
      "Transport": "stdio",
      "Command": "npx",
      "Arguments": [
        "-y",
        "mcp-server-templated"
      ]
    }
  }
}
# add to Vellum
assistant mcp add templated-io-mcp-server-templated -t stdio -c npx -a -y mcp-server-templated
// mcp.json
{
  "mcpServers": {
    "templated-io-mcp-server-templated": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-server-templated"
      ]
    }
  }
}
Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 19 Sept 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 45 to 48.

  • 17 Sept 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 38 to 41.

  • 15 Sept 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 31 to 35.

  • 13 Sept 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 25 to 28.

  • 11 Sept 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 18 to 21.

  • 9 Sept 26 +26
    • Malware scan: unverified → pass security
    • Known CVEs: unverified → pass security
    • Dependency health: unverified → 0.84 functional
  • 8 Sept 26 −24
    • Stability: unverified → fail security
    • Known CVEs: pass → unverified security
    • Malware scan: pass → unverified security
    • Schema quality: 63 → 78 functional
    • Schema quality: 63 → 77 functional
    • Dependency health: 0.84 → unverified functional
    • Stability: unverified → 0.13 functional
    • Package version: 1.6.0 → 1.7.1 functional
    • Package version: 1.6.0 → 1.7.0 functional
  • 4 Sept 26 71

    First indexed and scored.

Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 20 Sept 2026 · Analysed npm/mcp-server-templated@1.7.1

Provenance No attestation

The registry publishes no build provenance for this version, so there is nothing to verify.

Result No attestation
Ecosystem npm

Background: How many MCP packages publish verified provenance →

Dependencies 95 packages
Packages resolved 95
Stale 31
Tree resolution Complete

Background: SBOMs and build attestations, explained →

MCP tools · 25 exposed · ~1,962 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →

Tool Tokens
clone_template ~41

Create a copy of an existing template

NameTypeReqDescription
namestringName for the cloned template
template_idstringyesThe template ID to clone

No output schema declared.

No examples provided.

create_folder ~25

Create a new folder to organize templates

NameTypeReqDescription
namestringyesFolder name

No output schema declared.

No examples provided.

create_render ~365

Create a render (image, video, or PDF) from a template. This is the main tool for generating content. Supports formats: jpg, png, webp, pdf, mp4.

NameTypeReqDescription
backgroundstringBackground color in hex format (e.g., #FF0000)
cmykbooleanUse CMYK color mode (PDF only)
durationnumberVideo duration in milliseconds (MP4 only, max 90000)
flattenbooleanFlatten PDF for print-ready documents
formatstringOutput format. Default: jpg
fpsnumberFrames per second (MP4 only, 1-60)
heightnumberCustom height in pixels (100-5000)
layersobjectLayer modifications. Keys are layer names, values are objects with properties like: text, image_url, color, background, hide, animation, etc. The 'animation' property (MP4 only) is an object with: 'i…
namestringCustom name for the render
scalenumberScale factor (0.1-2.0)
templatestringyesThe template ID to render
transparentbooleanMake background transparent (PNG only)
widthnumberCustom width in pixels (100-5000)

No output schema declared.

No examples provided.

create_template ~345

Create a new template programmatically with layers. IMPORTANT: Each layer must have a 'layer' field (unique identifier/name), not 'name'. Valid layer types are: 'text', 'image', 'shape', 'rating'. Use 'shape' for rectangles, circles, and other shapes - shapes require an 'html' field with SVG content. For a multi-page or multi-size template (several sizes in one template), pass 'pages' instead of 'layers': each page carries its own width/height and its layers as an object keyed by layer name.

NameTypeReqDescription
backgroundstringTemplate background color (e.g., '#ffffff', 'rgb(255,255,255)', 'transparent')
durationnumberDefault video duration in milliseconds for MP4 renders (e.g., 5000 for 5 seconds). Used as fallback when no duration is specified at render time.
heightnumberyesTemplate height in pixels
layersarrayArray of layer objects. Each layer MUST have 'layer' (unique name) and 'type' fields.
namestringyesTemplate name
pagesarrayPages for multi-page or multi-size templates (e.g. Instagram square, story and X landscape in ONE template, each with its own width/height). Use this INSTEAD of top-level 'layers'. Each page: 'page'…
widthnumberyesTemplate width in pixels

No output schema declared.

No examples provided.

create_upload ~40

Upload a file from a URL

NameTypeReqDescription
namestringOptional name for the upload
urlstringyesURL of the file to upload

No output schema declared.

No examples provided.

delete_folder ~25

Delete a folder

NameTypeReqDescription
folder_idstringyesThe folder ID to delete

No output schema declared.

No examples provided.

delete_font ~33

Delete a custom font

NameTypeReqDescription
font_namestringyesThe font family name to delete, as returned by list_fonts

No output schema declared.

No examples provided.

delete_render ~26

Delete a specific render

NameTypeReqDescription
render_idstringyesThe render ID to delete

No output schema declared.

No examples provided.

delete_template ~25

Delete a template

NameTypeReqDescription
template_idstringyesThe template ID to delete

No output schema declared.

No examples provided.

delete_upload ~26

Delete an uploaded asset

NameTypeReqDescription
upload_idstringyesThe upload ID to delete

No output schema declared.

No examples provided.

get_account ~26

Get the connected account's render usage for the current period (renders used and renders included)

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

get_render ~34

Retrieve a specific render by its ID to get the status and file URL

NameTypeReqDescription
render_idstringyesThe render ID

No output schema declared.

No examples provided.

get_template ~26

Retrieve a specific template by ID

NameTypeReqDescription
template_idstringyesThe template ID

No output schema declared.

No examples provided.

get_template_layers ~41

Get all layers of a template. Use this to understand what layers can be modified when creating a render.

NameTypeReqDescription
template_idstringyesThe template ID

No output schema declared.

No examples provided.

get_template_pages ~29

Get all pages of a multi-page template

NameTypeReqDescription
template_idstringyesThe template ID

No output schema declared.

No examples provided.

list_folders ~35

List all folders in the account

NameTypeReqDescription
limitnumberResults per page
pagenumberPage number

No output schema declared.

No examples provided.

list_fonts ~36

List all custom fonts uploaded to the account

NameTypeReqDescription
limitnumberResults per page
pagenumberPage number

No output schema declared.

No examples provided.

list_renders ~45

List all renders in the account

NameTypeReqDescription
limitnumberResults per page (default: 25)
pagenumberPage number (default: 0)

No output schema declared.

No examples provided.

list_template_renders ~49

List all renders created from a specific template

NameTypeReqDescription
limitnumberResults per page
pagenumberPage number
template_idstringyesThe template ID

No output schema declared.

No examples provided.

list_templates ~115

List all templates in the account. Use this to find template IDs for rendering.

NameTypeReqDescription
heightnumberFilter by template height
includeLayersbooleanInclude layer information in response
limitnumberResults per page (default: 25)
pagenumberPage number (default: 0)
querystringSearch query to filter templates by name
tagsstringFilter by tags (comma-separated)
widthnumberFilter by template width

No output schema declared.

No examples provided.

list_uploads ~37

List all uploaded assets (images, videos)

NameTypeReqDescription
limitnumberResults per page
pagenumberPage number

No output schema declared.

No examples provided.

merge_renders ~55

Merge multiple PDF renders into a single PDF document

NameTypeReqDescription
hostbooleanIf true, returns a hosted URL. If false, returns the file directly
render_idsarrayyesArray of render IDs to merge

No output schema declared.

No examples provided.

update_folder ~35

Update a folder's name

NameTypeReqDescription
folder_idstringyesThe folder ID
namestringyesNew folder name

No output schema declared.

No examples provided.

update_template ~397

Update an existing template. IMPORTANT: Each layer must have a 'layer' field (unique identifier), not 'name'. Valid types: 'text', 'image', 'shape', 'rating'. For multi-page templates use 'pages': a page name that does not exist yet is ADDED to the template, an existing one has its layers merged (or replaced with replaceLayers). To change page sizes on a multi-size template set width/height per page inside 'pages'; top-level width/height are rejected there because they would resize every page.

NameTypeReqDescription
backgroundstringTemplate background color
descriptionstringNew template description
durationnumberDefault video duration in milliseconds for MP4 renders (e.g., 5000 for 5 seconds)
heightnumberNew height in pixels. Applies to every page; rejected on multi-size templates (use per-page height inside 'pages')
layersarrayLayer definitions. Each must have 'layer' (unique name) and 'type' (text/image/shape/rating).
namestringNew template name
pagesarrayPages for multi-page or multi-size templates (e.g. Instagram square, story and X landscape in ONE template, each with its own width/height). Use this INSTEAD of top-level 'layers'. Each page: 'page'…
replaceLayersbooleanIf true, replaces all layers. If false, merges with existing
template_idstringyesThe template ID to update
widthnumberNew width in pixels. Applies to every page; rejected on multi-size templates (use per-page width inside 'pages')

No output schema declared.

No examples provided.

upload_font ~51

Upload a custom font from a URL

NameTypeReqDescription
namestringyesFont family name
urlstringyesURL of the font file (TTF, OTF, WOFF, WOFF2)

No output schema declared.

No examples provided.

Common questions

What is the Templated MCP server?

Templated is an MCP server listed in the public MCP registry as io.github.templated-io/mcp-server-templated. Generate images, videos and PDFs from templates. Manage templates, folders, uploads and fonts. This page covers its npm package (mcp-server-templated).

Is the Templated MCP server safe to use?

Templated scores 78 out of 100 on VerifyMCP. We found no known CVEs affecting it as of 20 September 2026. It declares no install or post-install scripts. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

What tools does the Templated MCP server expose?

Templated exposes 25 tools: create_render, get_render, list_renders, delete_render, merge_renders, and 20 more. Their descriptions and schemas cost roughly 1,962 tokens of context every time the server is loaded.

Is the Templated MCP server still maintained?

Templated is still listed as active in the MCP registry. We last reached this channel on 20 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

What licence is the Templated MCP server under?

Templated declares the MIT licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.