Trendswap AI

AI face swap and viral meme video generation MCP server.

Should I use this

Quality & Safety

A
Description quality
100%
Schema completeness
65%
Naming quality
100%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~574Tokens (tool definitions)
~1008 BTypical response size
Minimal attention impact (0.45% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "trendswap": {
      "url": "https://trendswap.app/api/mcp"
    }
  }
}

Remote endpoints

https://trendswap.app/api/mcpstreamable-http

What it can do

Tool inventory

Tools (4)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢list_templates

List all available viral video & face-swap templates on Trendswap with their template IDs, descriptions, and preview URLs. No authentication required.

Input Schema

{
  "type": "object",
  "properties": {},
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🟢get_credits_balance

Get current credits balance and user information. Requires a valid Trendswap API key in Authorization header.

Input Schema

{
  "type": "object",
  "properties": {},
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🟡create_generation_job(template, image_url, portrait_id, resolution, format, ...)

Create an AI face-swap or portrait video generation task. Provide either an image_url (accessible image) or an existing portrait_id, along with the template name and optional resolution.

Input Schema

{
  "type": "object",
  "properties": {
    "template": {
      "type": "string",
      "description": "Template ID (e.g. \"burning-bridges\", \"bulin-47\", \"topo-gigio\")"
    },
    "image_url": {
      "description": "Public URL of the photo/face to swap into the template",
      "type": "string",
      "format": "uri"
    },
    "portrait_id": {
      "description": "ID of a previously uploaded portrait (if already uploaded)",
      "type": "string"
    },
    "resolution": {
      "default": "480p",
      "description": "Target video resolution (default: \"480p\")",
      "type": "string",
      "enum": [
        "480p",
        "720p",
        "1080p"
      ]
    },
    "format": {
      "default": "vertical",
      "description": "Target video format (default: \"vertical\")",
      "type": "string",
      "enum": [
        "vertical",
        "horizontal"
      ]
    },
    "idempotency_key": {
      "description": "Optional client-generated unique idempotency key",
      "type": "string",
      "minLength": 8,
      "maxLength": 128
    }
  },
  "required": [
    "template"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🟢get_job_status(job_id)

Check the current status and output of a generation job. When complete, returns the final video URL.

Input Schema

{
  "type": "object",
  "properties": {
    "job_id": {
      "type": "string",
      "description": "The generation job ID to inspect"
    }
  },
  "required": [
    "job_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded4 tools