{
  "name": "placid-app",
  "display_name": "Placid.app",
  "description": "Generate image and video creatives using Placid.app templates",
  "repository": {
    "type": "git",
    "url": "https://github.com/felores/placid-mcp-server"
  },
  "homepage": "https://github.com/felores/placid-mcp-server",
  "author": {
    "name": "felores"
  },
  "license": "MIT",
  "categories": [
    "Media Creation"
  ],
  "tags": [
    "Placid",
    "Templates",
    "Image Generation",
    "Video Generation"
  ],
  "installations": {
    "npm": {
      "type": "npm",
      "command": "npx",
      "args": [
        "@felores/placid-mcp-server"
      ],
      "env": {
        "PLACID_API_TOKEN": "${PLACID_API_TOKEN}"
      }
    }
  },
  "examples": [
    {
      "title": "Generate Video Example",
      "description": "Example usage for generating a video using Placid templates.",
      "prompt": "{\"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\"}"
    },
    {
      "title": "Generate Image Example",
      "description": "Example usage for generating an image using Placid templates.",
      "prompt": "{\"template_id\":\"template-uuid\",\"layers\":{\"headline\":{\"text\":\"Welcome to My App\"},\"background\":{\"image\":\"https://example.com/bg.jpg\"}}}"
    }
  ],
  "arguments": {
    "PLACID_API_TOKEN": {
      "description": "Your Placid API token used for authenticating requests to the Placid API.",
      "required": true,
      "example": "my-secret-api-token"
    }
  },
  "tools": [
    {
      "name": "placid_list_templates",
      "description": "Get a list of available Placid templates with optional filtering. Each template includes its title, ID, preview image URL, available layers, and tags.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "collection_id": {
            "type": "string",
            "description": "Optional: Filter templates by collection ID"
          },
          "custom_data": {
            "type": "string",
            "description": "Optional: Filter by custom reference data"
          },
          "tags": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Optional: Filter templates by tags"
          }
        }
      }
    },
    {
      "name": "placid_generate_image",
      "description": "Generate an image using a template and provided assets",
      "inputSchema": {
        "type": "object",
        "required": [
          "template_id",
          "layers"
        ],
        "properties": {
          "template_id": {
            "type": "string",
            "description": "UUID of the template to use"
          },
          "layers": {
            "type": "object",
            "description": "Key-value pairs for dynamic content. Keys must match template layer names.",
            "additionalProperties": {
              "oneOf": [
                {
                  "type": "object",
                  "properties": {
                    "text": {
                      "type": "string",
                      "description": "Content for text layers"
                    }
                  },
                  "required": [
                    "text"
                  ]
                },
                {
                  "type": "object",
                  "properties": {
                    "image": {
                      "type": "string",
                      "format": "uri",
                      "description": "URL for image/video layers"
                    }
                  },
                  "required": [
                    "image"
                  ]
                }
              ]
            }
          }
        }
      }
    },
    {
      "name": "placid_generate_video",
      "description": "Generate a video using one or more templates and provided assets. Every 10 seconds of video uses 10 credits.",
      "inputSchema": {
        "type": "object",
        "required": [
          "template_id",
          "layers"
        ],
        "properties": {
          "template_id": {
            "type": "string",
            "description": "UUID of the template to use"
          },
          "layers": {
            "type": "object",
            "description": "Key-value pairs for dynamic content. Keys must match template layer names.",
            "additionalProperties": {
              "oneOf": [
                {
                  "type": "object",
                  "properties": {
                    "text": {
                      "type": "string",
                      "description": "Content for text layers"
                    }
                  },
                  "required": [
                    "text"
                  ]
                },
                {
                  "type": "object",
                  "properties": {
                    "image": {
                      "type": "string",
                      "format": "uri",
                      "description": "URL for image layers"
                    }
                  },
                  "required": [
                    "image"
                  ]
                },
                {
                  "type": "object",
                  "properties": {
                    "video": {
                      "type": "string",
                      "format": "uri",
                      "description": "URL for video layers (.mp4)"
                    }
                  },
                  "required": [
                    "video"
                  ]
                }
              ]
            }
          },
          "audio": {
            "type": "string",
            "description": "URL of mp3 audio file for this video"
          },
          "audio_duration": {
            "type": "string",
            "description": "Set to 'auto' to trim audio to video length"
          },
          "audio_trim_start": {
            "type": "string",
            "description": "Timestamp of the trim start point (e.g. '00:00:45' or '00:00:45.25')"
          },
          "audio_trim_end": {
            "type": "string",
            "description": "Timestamp of the trim end point (e.g. '00:00:55' or '00:00:55.25')"
          }
        }
      }
    }
  ]
}