Skip to main content

MCP server for ZapCap.ai video processing and caption generation

Project description

ZapCap MCP Server

PyPI version MCP Server Author

NOTE: This is an unofficial implementation of MCP Server for ZapCap.

An MCP (Model Context Protocol) server that provides tools for uploading videos, creating processing tasks, and monitoring their progress through the ZapCap API.

Requirements

  • uv
  • ZapCap API key

You can install uv from here: https://docs.astral.sh/uv/

You can get api key from ZapCap API after registation at https://zapcap.ai/ in their platform here: https://platform.zapcap.ai/dashboard/api-key

Installation in MCP-client

Add to your MCP client mcp.json configuration (e.g., Claude Desktop, Cursor and etc.):

{
  "mcpServers": {
    "zapcap": {
      "command": "uvx",
      "args": ["zapcap-mcp-server"],
      "env": {
        "ZAPCAP_API_KEY": "your_api_key_here"
      }
    }
  }
}

Alternative Installation

uv tool install zapcap-mcp-server

Docker Installation

You can also run the MCP server in a Docker container using the pre-built image from Docker Hub:

Using pre-built image from Docker Hub:

{
  "mcpServers": {
    "zapcap": {
      "command": "docker",
      "args": [
        "run", 
        "--rm", 
        "--init",
        "-i",
        "--net=host",
        "-v", "/home/$USER:/host/home/$USER",
        "-e", "ZAPCAP_API_KEY=your_api_key_here",
        "bogdan01m/zapcap-mcp-server:latest"
      ],
      "env": {
        "DOCKER_CLI_HINTS": "false"
      }
    }
  }
}

Configuration

Set your ZapCap API key as an environment variable:

export ZAPCAP_API_KEY="your_api_key_here"

Usage

Demo Videos

How to use:

Results:

Available Tools

The server provides the following tools:

zapcap_mcp_upload_video

Upload a video file to ZapCap.

Parameters:

  • file_path: Path to the video file

zapcap_mcp_upload_video_by_url

Upload a video by URL to ZapCap.

Parameters:

  • url: URL to the video file

zapcap_mcp_get_templates

Get available processing templates from ZapCap.

zapcap_mcp_create_task

Create a video processing task with full customization options.

Parameters:

  • video_id: Video ID from upload
  • template_id: Template ID
  • auto_approve: Auto approve the task (default: true)
  • language: Language code (default: "en")
  • enable_broll: Enable B-roll (default: false)
  • broll_percent: B-roll percentage 0-100 (default: 30)

Subtitle options:

  • emoji: Enable emoji in subtitles (default: true)
  • emoji_animation: Enable emoji animation (default: true)
  • emphasize_keywords: Emphasize keywords (default: true)
  • animation: Enable subtitle animation (default: true)
  • punctuation: Include punctuation (default: true)
  • display_words: Number of words to display (default: 1)

Style options:

  • position_top: Subtitle position from top (default: 60)
  • font_uppercase: Use uppercase font (default: true)
  • font_size: Font size (default: 30)
  • font_weight: Font weight (default: 900)
  • font_color: Font color (default: "#ffffff")
  • font_shadow: Font shadow s/m/l (default: "l")
  • stroke: Stroke style (default: "s")
  • stroke_color: Stroke color (default: "#000000")
  • highlight_color_1: First highlight color (default: "#2bf82a")
  • highlight_color_2: Second highlight color (default: "#fdfa14")
  • highlight_color_3: Third highlight color (default: "#f01916")

zapcap_mcp_monitor_task

Monitor task progress.

Parameters:

  • video_id: Video ID
  • task_id: Task ID

Benefits Over Direct API Usage

Token Management

Unlike using curl or direct API calls where you need to manually include your API key in every request:

# Traditional curl approach - token needed every time
curl -X POST "https://api.zapcap.ai/upload" \
  -H "Authorization: Bearer your_token_here" \
  -F "file=@video.mp4"

With this MCP server, your API key is configured once in the environment and automatically used for all operations:

{
  "env": {
    "ZAPCAP_API_KEY": "your_api_key_here"
  }
}

Natural Language Interface

Instead of constructing complex API requests with parameters, you can describe what you want:

Traditional API:

curl -X POST "https://api.zapcap.ai/tasks" \
  -H "Authorization: Bearer token" \
  -d '{
    "video_id": "abc123",
    "template_id": "viral",
    "font_size": 30,
    "highlight_color_1": "#00ff00",
    "enable_broll": true,
    "broll_percent": 40
  }'

MCP Server:

"Add green highlighted subtitles with 40% B-roll using viral template"

Type Safety & Validation

  • Pydantic Integration: All parameters are validated automatically with type checking

Future Plans

Testing Integration

We're planning to add basic testing capabilities:

  • API Integration Tests: Verify that ZapCap API calls work correctly
  • MCP Tool Tests: Ensure all MCP tools respond properly to requests

Planned Features

  • Named configurations: Save frequently used parameter combinations ("my_brand", "youtube_style")
  • Template enhancement: Override template defaults with consistent brand colors/fonts

License

MIT licence

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

zapcap_mcp_server-0.1.8.tar.gz (6.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

zapcap_mcp_server-0.1.8-py3-none-any.whl (7.1 kB view details)

Uploaded Python 3

File details

Details for the file zapcap_mcp_server-0.1.8.tar.gz.

File metadata

  • Download URL: zapcap_mcp_server-0.1.8.tar.gz
  • Upload date:
  • Size: 6.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.7.17

File hashes

Hashes for zapcap_mcp_server-0.1.8.tar.gz
Algorithm Hash digest
SHA256 79d278bcd7826cacd10b64f978b045bcb6ccce929388581bb77b0733e848c0f9
MD5 62be9fad0d49d906ae5fa20af345fcc5
BLAKE2b-256 6fba1c0a7dca28fb6707bc2260389913acf09f3b92edc4fef52bd9b7a9310c80

See more details on using hashes here.

File details

Details for the file zapcap_mcp_server-0.1.8-py3-none-any.whl.

File metadata

File hashes

Hashes for zapcap_mcp_server-0.1.8-py3-none-any.whl
Algorithm Hash digest
SHA256 098b59069d0c85cc837b40a8ec9a686879baeac2ecb27a4ca38868911bcb9f91
MD5 69aa73a0f1ff334eac4dcf564bd3d1db
BLAKE2b-256 9181810c652d123fce7b233ab5434a65eb6bbc7ade41c57086ea60845b169cb6

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page