{
  "$schema": "https://modelcontextprotocol.io/schema/2025-06-18/server-card.json",
  "schemaVersion": "2025-06-18",
  "name": "echowave",
  "title": "EchoWave Video MCP",
  "description": "Create, edit, render and manage videos on EchoWave programmatically: projects, media, text overlays, subtitles, AI voice-over (TTS), translation, renders and one-shot media tools (trim, crop, compress, convert, rotate, …).",
  "version": "1.0.0",
  "vendor": "Lemon Vault LLC",
  "websiteUrl": "https://echowave.io",
  "documentationUrl": "https://echowave.io/docs/api/",
  "endpoint": "https://echowave.io/mcp",
  "url": "https://echowave.io/mcp",
  "transport": "streamable-http",
  "transports": [
    { "type": "streamable-http", "url": "https://echowave.io/mcp" }
  ],
  "authentication": {
    "type": "oauth2",
    "oauth": {
      "authorizationServers": ["https://echowave.io"],
      "protectedResourceMetadata": "https://echowave.io/.well-known/oauth-protected-resource",
      "authorizationServerMetadata": "https://echowave.io/.well-known/oauth-authorization-server",
      "scopesSupported": ["api:read", "api:write"]
    },
    "alternatives": [
      { "type": "apiKey", "in": "header", "name": "X-API-Key", "description": "API key from EchoWave account settings." }
    ]
  },
  "capabilities": { "tools": true, "resources": true, "prompts": false, "logging": true },
  "api": {
    "openapi": "https://echowave.io/openapi.json",
    "catalog": "https://echowave.io/.well-known/api-catalog",
    "baseUrl": "https://echowave.io/api/v1"
  },
  "tools": [
    { "name": "get_account", "description": "Get the caller's EchoWave account profile, plan and usage." },
    { "name": "list_projects", "description": "List the caller's video projects." },
    { "name": "create_project", "description": "Create a new video project (title, aspect ratio, fps)." },
    { "name": "get_project", "description": "Get a project with its full timeline of segments." },
    { "name": "update_project", "description": "Update project metadata (title, size, fps, background)." },
    { "name": "delete_project", "description": "Delete a project." },
    { "name": "add_segment", "description": "Add a timeline segment: text, media (video/audio/image), subtitles, waveform, progress bar or shape." },
    { "name": "update_segment", "description": "Update a segment's properties." },
    { "name": "delete_segment", "description": "Remove a segment from a project." },
    { "name": "import_media", "description": "Import a media asset into the account from a URL." },
    { "name": "list_voices", "description": "List AI voice-over preset voices and the caller's voice clones." },
    { "name": "generate_speech", "description": "Generate AI voice-over (text-to-speech) audio and attach it to a project." },
    { "name": "create_voice_clone", "description": "Create a custom voice clone from a sample." },
    { "name": "transcribe_subtitles", "description": "Transcribe an uploaded audio/video asset into subtitle cues." },
    { "name": "translate_subtitles", "description": "Translate an asset's subtitles into another language." },
    { "name": "queue_render", "description": "Queue a render of a project into a downloadable MP4." },
    { "name": "get_render", "description": "Get a render's status, progress and output URL." },
    { "name": "list_renders", "description": "List the caller's renders." },
    { "name": "get_render_download", "description": "Get a signed download URL for a completed render." },
    { "name": "search_stock_photos", "description": "Search the stock photo library." },
    { "name": "run_tool", "description": "Run a one-shot media tool (trim, crop, compress, convert, rotate, flip, speed, reverse, loop, mute, split) on a source file." }
  ]
}
