mcp-server-chinesereads-canva
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@mcp-server-chinesereads-canvaHazme un post de 5 palabras en chino sobre deportes"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Post generator from Canva templates
You ask for "5 words in Chinese about sports" and a new 5-slide carousel appears in your Canva account, with the template intact and without repeating recent words.
Cost: €0. Canva Free + the official Canva MCP server + this local server. No resizing, no Enterprise autofill, no premium assets.
How it's set up
Two MCP servers sharing the work:
Server | Who maintains it | What it does |
| Canva (remote, OAuth) | Duplicate, read, edit, and export designs |
| You (local, stdio) | Catalog, limits, validation, and history |
The Canva one knows about designs but nothing about your templates or what you've already published. The local server fills that gap, and that's where the logic that makes this reliable lives: the hard rules are checked by code, not by the model. Counting characters is exactly the kind of thing an LLM does poorly.
Related MCP server: XHS-MCP
Installation
python3 -m venv .venv
./.venv/bin/pip install -r requirements.txtConnect Canva from Claude (Settings → Connectors → Canva) or, in Claude Code:
claude mcp add --transport http canva https://mcp.canva.com/mcpCanva's OAuth opens in the browser. There's no need to create an app or manage API keys.
The local server is already declared in .mcp.json, so Claude Code starts it on its own when you open the project. Check with /mcp that both servers appear.
Configuring your templates
Each template must be a multi-page design in Canva: several pages duplicated with the same layout (up to the number you set in max_paginas, e.g., 12). A post with N slides is generated by copying N of those pages, which means the master needs as many pages as the largest number of slides you'll ever ask for in a single post.
Edit plantillas.json (or ask the assistant to use anadir_plantilla). For each template you need:
canva_design_id— it's in the master design URL:canva.com/design/DAFxxxxxxxx/edit→ theDAFxxxxxxxx.max_paginas— how many pages the master has (= the maximum slides a post can have with this template).huecos— one object for each block you want to change on each page. Thetexto_actualfield must be literally what that block says in the template today: that's how it's located when editing. Text boxes use"tipo": "texto"andmax_caracteres; an image slot uses"tipo": "imagen"(withoutmax_caracteres) and is filled by finding a freely licensed photo (CC0/public domain) or, if no such photo is found, by hand.max_caracteres— measure it by typing text on a page until it breaks, then subtract a couple of characters.reglas_estilo— the style of your content in imperative sentences. This has the most visible impact on the quality of the result; it's worth fine-tuning.
One tip: name templates descriptively in Canva
(PLANTILLA_chino_5palabras_feed). It helps the correct one get chosen.
Usage
In Claude Code, inside the project folder:
> hazme un post de 5 palabras en chino sobre deportesThe generar-post skill triggers on its own. The flow is: choose a template and number of slides → ask for the slots contract → generate content per slide → validate → duplicate N pages and edit them in Canva → export everything in a single link → record the complete post in history.
If the content doesn't pass validation, it's corrected and revalidated before touching anything in Canva. That's the part that keeps you from ending up with broken designs.
How it avoids repeating
Themes (
temas_publicados): warns if a post with that exact theme was already published (e.g., "sports" all over again).Words (
elementos_usados): words used in the lastCOOLDOWN_POSTSposts (15 by default, configurable inservidor_catalogo.py) for that template are avoided. It's not a permanent block — after that many posts, the word becomes available again, just long enough for no one to remember it.
What this project does not do
It doesn't publish to Instagram or TikTok. The Canva MCP goes up to exporting to image or PDF. Publishing is another integration (Meta and TikTok APIs) and isn't free in setup time.
It doesn't generate images with AI. For image slots, it searches for existing photos licensed CC0/public domain (Openverse); if none are found, it asks you to provide one manually.
It doesn't resize between formats. That requires Canva Pro. Keep one template per format: one for feed and one vertical, each with its own entry in the catalog.
It doesn't run on its own. The MCP responds when you open a conversation. Nothing is scheduled to generate posts in the middle of the night from you.
It doesn't replace review. Changing text can misalign a line break, and an auto-searched image may not be quite right. Open the design before publishing.
Verifying that the local server works
./.venv/bin/python -c "
import servidor_catalogo as s
print(s.listar_plantillas())
print(s.preparar_encargo('texto-3', 'animales', 4))
print(s.elementos_usados('texto-3'))
"It should list your templates and return the contract for a 4-slide request for texto-3.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceEnables creation of optimized LinkedIn posts using a component-based design system with variants, themes, and composition patterns. Supports multiple post types (text, document, poll, video, carousel) with research-backed optimization for maximum engagement.3Apache 2.0
- AlicenseNot gradedqualityDmaintenanceEnables content creators to manage, analyze, and publish Xiaohongshu (Little Red Book) content through browser automation, with built-in templates, data analytics, and scheduling capabilities accessible via CLI or AI assistants.481MIT
- AlicenseNot gradedqualityFmaintenanceEnables generation of Xiaohongshu (Little Red Book) social media content including intelligent outlines, AI-generated images, and multi-page posts through natural language commands.1315MIT
- AlicenseAqualityCmaintenanceEnables AI to import, format, check originality, and save articles as drafts to WeChat Official Account draft box, without auto-publishing.458MIT
Related MCP Connectors
Create, schedule and publish social posts to TikTok, Instagram, Facebook and YouTube.
Social media MCP: publish, schedule & analyze posts on TikTok, Instagram, YouTube, LinkedIn & X
搜索笔记、浏览首页推荐、查看笔记内容与评论,并发表你的评论。直接在工作流中与小红书内容互动,高效跟进话题。
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/josevictorgarcia/mcp-server-chinesereads-canva'
If you have feedback or need assistance with the MCP directory API, please join our Discord server