Placid MCP Server
Placid.app MCP 服务器
一个用于与 Placid.app API 集成的 MCP 服务器实现。该服务器提供用于列出模板以及通过模型上下文协议生成图像和视频的工具。
特征
列出可用的 Placid 模板并附带过滤选项
使用模板和动态内容生成图像和视频
安全 API 令牌管理
错误处理和验证
类型安全实现
Related MCP server: Strapi MCP Server
要求:Node.js
从nodejs.org安装 Node.js(版本 18 或更高版本)和 npm
验证安装:
node --version npm --version
安装
快速启动(推荐)
最简单的入门方法是使用 Smithery,它将自动为您配置一切:
npx -y @smithery/cli install @felores/placid-mcp-server --client claude手动配置
如果您希望手动配置,请将其添加到您的 Claude Desktop 或 Cline 设置中:
{
"mcpServers": {
"placid": {
"command": "npx",
"args": ["@felores/placid-mcp-server"],
"env": {
"PLACID_API_TOKEN": "your-api-token"
}
}
}
}获取您的 Placid API 令牌
登录您的Placid.app帐户
转到“设置”>“API”
点击“创建 API 令牌”
给你的令牌命名(例如“MCP 服务器”)
复制生成的token
将令牌添加到您的配置中,如上所示
发展
# Run in development mode with hot reload
npm run dev
# Run tests
npm test工具
placid_list_templates
列出可用的 Placid 模板,并提供筛选选项。每个模板包含其标题、ID、预览图像 URL、可用图层和标签。
参数
collection_id(可选):按集合 ID 过滤模板custom_data(可选):按自定义参考数据过滤tags(可选):用于过滤模板的标签数组
回复
返回模板数组,每个模板包含:
uuid:模板的唯一标识符title:模板名称thumbnail:预览图像 URL(如果可用)layers:可用层及其名称和类型的数组tags:模板标签数组
placid_generate_video
将 Placid 模板与视频、图片和文本等动态内容相结合,即可生成视频。对于较长的视频(处理时间超过 60 秒),您将收到一个作业 ID,以便在 Placid 控制面板中查看进度。
参数
template_id(必需):要使用的模板的 UUIDlayers(必需):包含模板图层的动态内容的对象对于视频层:
{ "layerName": { "video": "https://video-url.com" } }对于图像层:
{ "layerName": { "image": "https://image-url.com" } }对于文本图层:
{ "layerName": { "text": "Your content" } }
audio(可选):mp3 音频文件的 URLaudio_duration(可选):设置为“auto”以将音频修剪为视频长度audio_trim_start(可选):修剪起点的时间戳(例如“00:00:45”或“00:00:45.25”)audio_trim_end(可选):修剪结束点的时间戳(例如“00:00:55”或“00:00:55.25”)
回复
返回包含以下内容的对象:
status:当前状态(“完成”、“排队”或“错误”)video_url:下载生成视频的 URL(状态为“完成”时)job_id:用于在 Placid 仪表板中检查状态的 ID(适用于较长的视频)
LLM 模型的示例用法
{
"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
通过将 Placid 模板与文本和图像等动态内容相结合来生成静态图像。
参数
template_id(必需):要使用的模板的 UUIDlayers(必需):包含模板图层的动态内容的对象对于文本图层:
{ "layerName": { "text": "Your content" } }对于图像层:
{ "layerName": { "image": "https://image-url.com" } }
回复
返回包含以下内容的对象:
status:完成时显示“完成”image_url:下载生成图像的 URL
LLM 模型的示例用法
{
"template_id": "template-uuid",
"layers": {
"headline": { "text": "Welcome to My App" },
"background": { "image": "https://example.com/bg.jpg" }
}
}文档
有关 Placid API 的更多详细信息,请访问Placid API 文档。
执照
麻省理工学院
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.
3 tool updates
v1.7.0- First observed
placid_generate_image - First observed
placid_generate_video - First observed
placid_list_templates
TDQS
Scored across 3 tools
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
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.318 npm3Apache 2.0
- AlicenseAqualityBmaintenanceA 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.5116 npm75MIT
- 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