Layerre MCP Server
A Model Context Protocol server for Layerre. Let your AI assistant turn Canva designs into reusable templates, edit layers, and render PNG / JPEG / WebP / PDF images from data.
Docs: layerre.com/docs/mcp
Features
- Import a Canva share link as an editable template
- Read and update template layers (text, images, positions, styling)
- Generate image/PDF variants with per-layer overrides, singly or in bulk
- Remote server with browser OAuth sign-in, or API key / local stdio
Quick start
Remote server (recommended)
Endpoint: https://mcp.layerre.com/mcp (Streamable HTTP, OAuth 2.1 + PKCE).
Cursor — ~/.cursor/mcp.json
{ "mcpServers": { "layerre": { "url": "https://mcp.layerre.com/mcp" } } }
Claude Code
claude mcp add --transport http layerre https://mcp.layerre.com/mcp
VS Code — .vscode/mcp.json
{ "servers": { "layerre": { "type": "http", "url": "https://mcp.layerre.com/mcp" } } }
Claude Desktop / Claude.ai — Settings → Connectors → Add custom connector → https://mcp.layerre.com/mcp
Windsurf — ~/.codeium/windsurf/mcp_config.json
{ "mcpServers": { "layerre": { "serverUrl": "https://mcp.layerre.com/mcp" } } }
Your client opens a browser window to sign in to Layerre and approve access.
API key (headless / CI)
Create a key in the Layerre dashboard (Settings → API keys), then:
{
"mcpServers": {
"layerre": {
"url": "https://mcp.layerre.com/mcp",
"headers": { "Authorization": "Bearer lyr_xxxxxxxx_xxxxxxxx" }
}
}
}
Local (stdio)
{
"mcpServers": {
"layerre": {
"command": "npx",
"args": ["-y", "@layerre/mcp-server"],
"env": { "LAYERRE_API_KEY": "lyr_xxxxxxxx_xxxxxxxx" }
}
}
}
Tools
| Tool | Description | Type |
|---|---|---|
layerre_auth_status |
Check authentication status | read |
layerre_list_templates |
List templates (filter by tag, paginate) | read |
layerre_get_template |
Get a template with its layers | read |
layerre_list_template_tags |
List tags/folders with counts | read |
layerre_create_template |
Create a template from a Canva share URL | write |
layerre_update_template |
Update name, size, backgrounds, tags | write |
layerre_create_layer |
Add a text or image layer | write |
layerre_get_layer |
Get a layer | read |
layerre_update_layer |
Update a layer | write |
layerre_list_variants |
List generated variants | read |
layerre_get_variant |
Get a variant | read |
layerre_create_variant |
Render one image/PDF with overrides | write |
layerre_create_variants_bulk |
Render up to 25 variants in one call | write |
Example prompts:
- "Import https://www.canva.com/design/... as a Layerre template tagged
social." - "Generate a PNG of my 'Event Card' template with the title set to 'Launch Day'."
Development
See CONTRIBUTING.md.
Privacy & support
Privacy policy · Terms · hello@layerre.com