Placid MCP Server
The Placid MCP Server enables integration with Placid.app's API for template management and media generation. With this server, you can:
List available templates: Retrieve template details including titles, IDs, preview URLs, layers, and tags. Supports filtering by collection ID, custom data, and tags.
Generate images: Create static images by combining templates with dynamic content like text and images.
Generate videos: Produce videos using templates with dynamic content (text, images, videos) and optional background audio with trimming controls.
Secure API token management: Ensures secure authentication handling.
Error handling and validation: Provides robust input validation and error management.
Type-safe implementation: Ensures reliable and predictable behavior.
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., "@Placid MCP Servergenerate a social media video using the 'Summer Promo' template with my logo and headline"
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.
Placid.app MCP Server
An MCP server implementation for integrating with Placid.app's API. This server provides tools for listing templates and generating images and videos through the Model Context Protocol.
Features
List available Placid templates with filtering options
Generate images and videos using templates and dynamic content
Secure API token management
Error handling and validation
Type-safe implementation
Related MCP server: Strapi MCP Server
Requirements: Node.js
Install Node.js (version 18 or higher) and npm from nodejs.org
Verify installation:
node --version npm --version
Installation
Quick Start (Recommended)
The easiest way to get started is using Smithery, which will automatically configure everything for you:
npx -y @smithery/cli install @felores/placid-mcp-server --client claudeManual Configuration
If you prefer to configure manually, add this to your Claude Desktop or Cline settings:
{
"mcpServers": {
"placid": {
"command": "npx",
"args": ["@felores/placid-mcp-server"],
"env": {
"PLACID_API_TOKEN": "your-api-token"
}
}
}
}Getting Your Placid API Token
Log in to your Placid.app account
Go to Settings > API
Click on "Create API Token"
Give your token a name (e.g., "MCP Server")
Copy the generated token
Add the token to your configuration as shown above
Development
# Run in development mode with hot reload
npm run dev
# Run tests
npm testTools
placid_list_templates
Lists available Placid templates with filtering options. Each template includes its title, ID, preview image URL, available layers, and tags.
Parameters
collection_id(optional): Filter templates by collection IDcustom_data(optional): Filter by custom reference datatags(optional): Array of tags to filter templates by
Response
Returns an array of templates, each containing:
uuid: Unique identifier for the templatetitle: Template namethumbnail: Preview image URL (if available)layers: Array of available layers with their names and typestags: Array of template tags
placid_generate_video
Generate videos by combining Placid templates with dynamic content like videos, images, and text. For longer videos (>60 seconds processing time), you'll receive a job ID to check status in your Placid dashboard.
Parameters
template_id(required): UUID of the template to uselayers(required): Object containing dynamic content for template layersFor video layers:
{ "layerName": { "video": "https://video-url.com" } }For image layers:
{ "layerName": { "image": "https://image-url.com" } }For text layers:
{ "layerName": { "text": "Your content" } }
audio(optional): URL to an mp3 audio fileaudio_duration(optional): Set to 'auto' to trim audio to video lengthaudio_trim_start(optional): Timestamp of trim start point (e.g. '00:00:45' or '00:00:45.25')audio_trim_end(optional): Timestamp of trim end point (e.g. '00:00:55' or '00:00:55.25')
Response
Returns an object containing:
status: Current status ("finished", "queued", or "error")video_url: URL to download the generated video (when status is "finished")job_id: ID for checking status in Placid dashboard (for longer videos)
Example Usage for LLM models
{
"template_id": "template-uuid",
"layers": {
"MEDIA": { "video": "https://example.com/video.mp4" },
"PHOTO": { "image": "https://example.com/photo.jpg" },
"LOGO": { "image": "https://example.com/logo.png" },
"HEADLINE": { "text": "My Video Title" }
},
"audio": "https://example.com/background.mp3",
"audio_duration": "auto"
}placid_generate_image
Generate static images by combining Placid templates with dynamic content like text and images.
Parameters
template_id(required): UUID of the template to uselayers(required): Object containing dynamic content for template layersFor text layers:
{ "layerName": { "text": "Your content" } }For image layers:
{ "layerName": { "image": "https://image-url.com" } }
Response
Returns an object containing:
status: "finished" when completeimage_url: URL to download the generated image
Example Usage for LLM models
{
"template_id": "template-uuid",
"layers": {
"headline": { "text": "Welcome to My App" },
"background": { "image": "https://example.com/bg.jpg" }
}
}Documentation
For more detailed information about the Placid API, visit the Placid API Documentation.
License
MIT
Available Tools
3 toolsplacid_generate_imageC
Generate an image using a template and provided assets
| Name | Required | Description | Default |
|---|---|---|---|
| template_id | Yes | UUID of the template to use | |
| layers | Yes | Key-value pairs for dynamic content. Keys must match template layer names. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It states the tool generates an image, implying a write operation, but doesn't cover critical aspects like authentication requirements, rate limits, output format (e.g., image URL or binary data), error handling, or whether it's idempotent. This is a significant gap for a tool that likely involves external processing.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that directly states the tool's function without unnecessary words. It's front-loaded with the core action ('Generate an image') and avoids redundancy, making it easy for an agent to parse quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (2 parameters with nested objects, no output schema, and no annotations), the description is incomplete. It doesn't address the output (what is returned, e.g., an image URL or file), error conditions, or behavioral traits like side effects. For a tool that generates content, this lack of context could lead to incorrect usage by an agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description mentions 'template and provided assets', which loosely maps to the two parameters (template_id and layers), but adds minimal semantic value beyond the schema. With 100% schema description coverage, the schema already documents parameters thoroughly (e.g., template_id as a UUID, layers as key-value pairs for dynamic content). The description doesn't explain the purpose of layers or provide examples, so it meets the baseline for high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Generate an image') and the mechanism ('using a template and provided assets'), which distinguishes it from the sibling 'placid_generate_video' that presumably generates videos. However, it doesn't explicitly differentiate from 'placid_list_templates' beyond the verb 'generate' vs 'list', which is somewhat implied but not stated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., needing a template ID from 'placid_list_templates'), when not to use it, or how it differs from 'placid_generate_video' beyond the output type. This leaves the agent to infer usage from context alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
placid_generate_videoB
Generate a video using one or more templates and provided assets. Every 10 seconds of video uses 10 credits.
| Name | Required | Description | Default |
|---|---|---|---|
| template_id | Yes | UUID of the template to use | |
| layers | Yes | Key-value pairs for dynamic content. Keys must match template layer names. | |
| audio | No | URL of mp3 audio file for this video | |
| audio_duration | No | Set to 'auto' to trim audio to video length | |
| audio_trim_start | No | Timestamp of the trim start point (e.g. '00:00:45' or '00:00:45.25') | |
| audio_trim_end | No | Timestamp of the trim end point (e.g. '00:00:55' or '00:00:55.25') |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden for behavioral disclosure. It adds valuable context about credit consumption ('Every 10 seconds of video uses 10 credits'), which is a key behavioral trait not evident from the schema. However, it doesn't mention other important behaviors like processing time, error conditions, or what happens when invalid assets are provided.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise with just two sentences. The first sentence clearly states the purpose, and the second adds crucial behavioral context about credit usage. Every sentence earns its place with no wasted words, and the information is front-loaded effectively.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a video generation tool with 6 parameters, no annotations, and no output schema, the description provides basic purpose and cost information but lacks important context. It doesn't explain what the tool returns (no output schema), doesn't mention authentication requirements, and provides minimal guidance on usage. The credit information is helpful but insufficient for full contextual understanding.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all 6 parameters thoroughly. The description adds no additional parameter semantics beyond what's in the schema. According to scoring rules, when schema coverage is high (>80%), the baseline is 3 even with no param info in the description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Generate a video') and resources involved ('using one or more templates and provided assets'), which provides a specific verb+resource combination. However, it doesn't explicitly differentiate from sibling tools like 'placid_generate_image' or 'placid_list_templates' beyond the obvious video vs. image distinction.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives like 'placid_generate_image' or 'placid_list_templates'. It mentions credit usage ('Every 10 seconds of video uses 10 credits') which could imply cost considerations, but offers no explicit when/when-not instructions or comparison to sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
placid_list_templatesB
Get a list of available Placid templates with optional filtering. Each template includes its title, ID, preview image URL, available layers, and tags.
| Name | Required | Description | Default |
|---|---|---|---|
| collection_id | No | Optional: Filter templates by collection ID | |
| custom_data | No | Optional: Filter by custom reference data | |
| tags | No | Optional: Filter templates by tags |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions optional filtering and the data included in each template, but fails to describe critical behaviors such as pagination, rate limits, authentication needs, error handling, or whether the list is exhaustive. This leaves significant gaps for a tool that likely interacts with an external API.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence that efficiently conveys the tool's purpose, optional features, and output details without any wasted words. It is appropriately sized and front-loaded with the core action.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the lack of annotations and output schema, the description is incomplete. It does not cover behavioral aspects like response format, pagination, or error cases, nor does it provide enough context for an agent to fully understand how to use this tool effectively in a real-world scenario, especially as a read operation with potential API constraints.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all three optional parameters (collection_id, custom_data, tags) with their purposes. The description adds no additional parameter semantics beyond what the schema provides, such as format examples or interaction effects, meeting the baseline for high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb ('Get a list') and resource ('available Placid templates'), specifying what data is included (title, ID, preview image URL, layers, tags). It distinguishes from sibling tools by focusing on listing templates rather than generating images/videos, though it doesn't explicitly contrast with them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for retrieving templates with optional filtering, but provides no explicit guidance on when to use this tool versus alternatives (like placid_generate_image/video) or any prerequisites. The context is clear but lacks comparative or exclusionary guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
3 tool updates
v1.7.0- First observed
placid_generate_image - First observed
placid_generate_video - First observed
placid_list_templates
TDQS
Each tool has a clearly distinct purpose: placid_generate_image for images, placid_generate_video for videos, and placid_list_templates for listing templates. There is no overlap in functionality, making tool selection straightforward for an agent.
All tool names follow a consistent 'placid_verb_noun' pattern with snake_case, using descriptive verbs like 'generate' and 'list'. This uniformity enhances readability and predictability across the toolset.
With only 3 tools, the server feels somewhat thin for a media generation domain, as it lacks operations like updating or deleting generated content, or managing assets. However, it covers basic generation and listing functions, making it borderline but functional.
The toolset provides core generation and listing capabilities but has notable gaps, such as no tools for updating templates, deleting generated media, or managing credits. This could limit agent workflows, though basic operations are covered.
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 Connectors
A Model Context Protocol server for Wix AI tools
Model Context Protocol server for the Apideck Unified API. Connect any MCP-compatible agent framework to 100+ accounting systems, HRIS platforms, file storage providers, and more through one integration. More information https://www.apideck.com/mcp-server
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…
MCP server for secureFlows: token-free URL builders and integration-linting tools for AI agents.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceA modular server that implements the Model Context Protocol standard, providing tools for interacting with GitHub, GitLab, Google Maps, Memory storage, and web automation through a unified gateway.2253Apache 2.0
- AlicenseAqualityCmaintenanceA Model Context Protocol server that enables AI assistants to interact with Strapi CMS instances through a standardized interface, supporting content types and REST API operations.58075MIT
- FlicenseNot gradedqualityDmaintenanceA Model Context Protocol server that provides an image generation tool using Templated.io, allowing users to create customized images based on templates with text and image layers.-
- AlicenseBqualityDmaintenanceA Model Context Protocol server that enables generation of high-quality images using the Flux.1 Schnell model via Together AI, allowing users to create images from text prompts with customizable dimensions.118MIT
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/felores/placid-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server