Katto vs PixelDojo

A side-by-side look at the Katto and PixelDojo MCP servers: transport, auth, tools, quality signals, and the config to install either one in Claude, Cursor, Windsurf or VS Code.

Katto logoKattoMultimedia Process · Local subprocess (stdio)Turn long videos (YouTube, Twitch, podcasts) into scored, captioned 9:16 clips.63GoodAuth: not declaredPixelDojo logoPixelDojoMultimedia Process · Local subprocess (stdio)Generate images, video, audio and short films with 140+ AI models from any MCP client.61GoodAuth: not declared

Verdict: choose Katto for multimedia process work as a local process; choose PixelDojo for multimedia process as a local process. You can also run both side by side in one mcpServers block.

Which MCP server should you choose?

Katto logoChoose Katto when

  • You need dedicated capabilities in the Multimedia Process domain.
  • You prefer a local stdio subprocess transport.
  • You have the keys it needs: KATTO_API_KEY, KATTO_API_URL.
  • You want tools like katto_create_clip_job, katto_get_job, katto_list_jobs.
Explore Katto

PixelDojo logoChoose PixelDojo when

  • You need dedicated capabilities in the Multimedia Process domain.
  • You prefer a local stdio subprocess transport.
  • You have the keys it needs: PIXELDOJO_API_KEY.
  • You want tools like pixeldojo_generate, pixeldojo_edit, pixeldojo_character.
Explore PixelDojo

Feature & specification comparison

Rows where the two servers differ are marked.

SpecKatto logoKattoPixelDojo logoPixelDojo
CategoryMultimedia ProcessMultimedia Process
Quality signal63/100 · Good61/100 · Good
Install commandConfirmedConfirmed
TransportLocal subprocess (stdio)Local subprocess (stdio)
AuthNot declaredNot declared
PricingFreemiumNot declared
Required env varsKATTO_API_KEYKATTO_API_URLPIXELDOJO_API_KEY
Verified ownerCommunity listingCommunity listing
GitHub stars30
Directory activity 1 views 0 installs 0 upvotes 3 views 0 installs 0 upvotes
Tools2925

Tools & capabilities

Katto tools 29

  • katto_create_clip_jobSubmit a long video for clipping, either by public link in url (YouTube, Twitch, Kick, Vimeo, Zoom, Google Drive, Dropbox, Loom, LinkedIn, Facebook, Rumble, Dailymotion, Medal.tv, or a direct https link to a video file; Google Drive and Dropbox links must be shared publicly) or, for a local file, by upload_id after katto_upload_video and the PUT of the file. Pass exactly one of url or upload_id. Consumes 1 video from your monthly quota — check katto_get_usage first. Clips are produced asynchronously; returns a job id, then poll katto_get_job every 30-60 s until status is 'completed', or pass webhook_url to be notified (url jobs only). Pass idempotency_key when you might retry a url job, so a retry never spends a second video (an upload can only be started once anyway). Fails if the URL is unsupported, the uploaded file is missing, or the video is longer than your plan allows.
  • katto_get_jobRead-only. Get the status, progress and clips of a job by id. Clips come ranked by virality score (0-100, highest first; ties broken by clip_index). Each clip is { url, captions_url, title, score, clip_index, hd }: when status is 'completed' every url is a finished, downloadable clip; hd is true once the 1080p high-quality render is ready. hd=false does NOT mean broken — the url already works, the 1080p is just still rendering in the background (and stays the standard render on the free plan). The job-level hd_ready flag turns true once every clip is hd, i.e. the URLs are final and won't be swapped again (status='completed' fires earlier). Returns 404 for an unknown id.
  • katto_list_jobsRead-only. List your recent jobs, newest first. Paginate with 'cursor' (pass the previous next_cursor); optional 'status' filter. Returns { jobs: [{id, status, source, created_at, completed_at}], next_cursor }.
  • katto_get_clipsRead-only convenience: the clips of a job as { url, captions_url, title, score, clip_index, hd }, ranked by score (highest first). hd=true means the 1080p render is ready; hd=false means the url is the standard render (HD still finishing, or the free plan). Empty until the first clip is ready.
  • katto_get_usageRead-only. Your current plan and monthly video quota: { plan, videos_used, videos_limit, videos_remaining }. Call before katto_create_clip_job to confirm remaining quota.
  • katto_get_transcriptRead-only. The transcript of a completed job as timestamped segments [{ start, end, text }]. Returns 404 while the job is still processing.
  • katto_cancel_jobCancel a still-running job (queued/processing) and refund the video back to your monthly quota. Safe to retry (idempotent). Returns an error if the job already finished, failed, or was cancelled.
  • katto_get_accountRead-only. The account behind this key: plan, this key's scopes (read/write), and monthly quota { videos_used, videos_limit, videos_remaining }.
  • katto_list_sourcesRead-only. The link sources Katto can clip from (YouTube, Twitch, Kick, Vimeo, Zoom, Google Drive, Dropbox, Loom, LinkedIn, Facebook, Rumble, Dailymotion, Medal.tv, or a direct https link to a video file), each with an example URL. Use it to confirm a URL is supported before calling katto_create_clip_job; for a local file use katto_upload_video instead.
  • katto_list_clip_lengthsRead-only. The valid values for the optional config.clipLength on katto_create_clip_job (target clip-duration buckets). Note: clipLength is fixed at creation and cannot be changed by re-render.
  • katto_list_caption_stylesRead-only. The valid caption_style preset names for katto_rerender_clip (id + label), e.g. 'hormozi' for bold word-by-word highlight. Call this before re-rendering so you pass a real preset instead of guessing.
  • katto_rerender_clipRe-render one already-finished clip with a new reframe layout and/or caption style (get valid caption_style values from katto_list_caption_styles). Free — does NOT use video quota. Each call starts a new render (not idempotent); the original clip is kept. Returns a rerender_id; poll katto_get_rerender for the new clip url.
  • +17 more on the listing page

PixelDojo tools 25

  • pixeldojo_generateGenerate an image or video from a prompt with any model in the PixelDojo catalog. With no `model`, a prompt runs on seedream-5, which makes still images only. For a video, name seedance-2-5, which works from a prompt alone or a starting image. If a provider refuses the content, retry once on wan-3-0-video (video) or seedream-5 (images), the least-restricted models. For a multi-shot film or a music video synced to a song use pixeldojo_film; to change, move or extend an existing clip use pixeldojo_video. These are the models the PixelDojo studios use; name another only when the user asks for it. References: `image_url`/`image_urls` for stills, `video_url` for a source clip, `image_path`/`image_paths` for absolute local files (uploaded to 24h temp storage first). A clip or an audio track URL with no `model` runs on seedance-2-reference; a named model that cannot read a clip is swapped for it and the result says so, while a named model with no audio input drops the track. Model-specific settings go in `params` alongside an explicit `model`. Returns asset URLs, or a jobId for pixeldojo_status when the job outlasts the 30s wait.
  • pixeldojo_editEdit an existing image with a text instruction. Defaults to wan-2.7-image-edit; pass `model` to pick another edit-capable apiId. Supports up to 9 reference images for multi-image composition. For reference images: pass image_url(s) for hosted URLs or image_path(s) for absolute local file paths (skill uploads to 24h temp storage automatically).
  • pixeldojo_characterGenerate or edit consistent characters across shots. Pass reference_image_urls (up to 9) to lock identity — send every photo of the person you have, since more angles hold the face far better than one. Defaults to seedream-5.
  • pixeldojo_storyboardGenerate one short video clip (a single shot, not a multi-panel storyboard) from a scene brief. A text-only brief runs on veo-3.1-fast unless `model` names another allowed video model. With image_url (reference still) or video_url (source clip) and no `model`, it runs on seedance-2-reference, with the same reference routing as pixeldojo_generate. For a multi-shot film with dialogue and a soundtrack, use pixeldojo_film.
  • pixeldojo_upscaleEnhance an image or video. Magnific (default) supports configurable scale_factor and creativity; face-enhance for portraits; video-upscaler (FlashVSR, up to 4K) for clips — pass video_url plus video_duration in seconds.
  • pixeldojo_captionBurn animated word-by-word captions onto a video with speech, the short-form look for TikTok, Reels and Shorts: the spoken word lights up, placed above the platform buttons. Pass video_url; optional style (pop, highlighter, clean) and highlight_color (#RRGGBB for a brand color). 5 credits.
  • pixeldojo_overlayAdd short-form ad text layouts to a finished video, exact text in the brand color, clear of the TikTok/Reels/Shorts UI: hook (title over the first seconds), callout (lower-third label), review (stars, quote, name), progress_bar, countdown (ticking timer), price_tag (new price, old one struck through), offer ("50% OFF" badge) and end_card (logo, headline, button, web address over the held last frame). Pass video_url plus any of them; one call does all. 2 credits.
  • pixeldojo_audioGenerate audio: speech, multi-character dialogue, sound effects, and background music from one prompt (Seed Audio 1.0 by default; plain text-to-speech available). Voice cloning takes hosted reference clip URLs in audio_urls; local audio files are not accepted. Returns an audio URL, or a jobId for pixeldojo_status.
  • pixeldojo_effectsList PixelDojo's one-click effects: 283 video effects (a photo or two in, a 5 s clip out: AI Hug, Earth Zoom In, AI Dance), 30 photo effects (a photo in, a styled image out: action figure, Ghibli style, sticker, aging filter) and one-job tools (remove a watermark, object or background, headshots, photo restoration, relight, logo, thumbnail and poster makers). Search by words, family or category; each result gives the slug, inputs and credit price. Free. Run one with pixeldojo_effect.
  • pixeldojo_effectRun one of PixelDojo's one-click effects on your photos: the prompt is built in, so pass only the slug from pixeldojo_effects and the photos (image_urls, or image_paths for local files), plus texts for tools that ask for them. Video effects return a 5 s clip (usually handed off; poll with pixeldojo_status), photo effects and tools an image. Costs the credits the listing shows.
  • pixeldojo_librarySearch your Library, newest first. source=media (default): saved media (permanent) and recent API/MCP generations (deleted 1 hour after they finish), as URLs to reuse as references. source=characters: saved Character Studio characters and elements, each usable as @Name in any prompt.
  • pixeldojo_saveSave a generated image or video into the user's My Media library permanently ("save this", "keep it"). Results otherwise expire 1 hour after they finish. Pass the result URL; it is safety-checked before it is kept.
  • +13 more on the listing page

Ready-to-paste client configs

Paste either block (or both) into your client config, e.g. claude_desktop_config.json or ~/.cursor/mcp.json. We only show a config when the install command is confirmed.

Katto

mcpServers (Claude Desktop / Cursor)
{
  "mcpServers": {
    "katto": {
      "command": "npx",
      "args": [
        "-y",
        "katto-mcp"
      ],
      "env": {
        "KATTO_API_KEY": "YOUR_KATTO_API_KEY_HERE",
        "KATTO_API_URL": "YOUR_KATTO_API_URL_HERE"
      }
    }
  }
}

PixelDojo

mcpServers (Claude Desktop / Cursor)
{
  "mcpServers": {
    "pixeldojo": {
      "command": "npx",
      "args": [
        "-y",
        "@pixeldojo/mcp"
      ],
      "env": {
        "PIXELDOJO_API_KEY": "YOUR_PIXELDOJO_API_KEY_HERE"
      }
    }
  }
}

Frequently asked questions

Katto is categorized under Multimedia Process and uses a local stdio subprocess. PixelDojo belongs to Multimedia Process and uses a local stdio subprocess. Pick Katto for multimedia process work and PixelDojo for multimedia process.

Copy the mcpServers block from the config section on this page into your client's config (for example claude_desktop_config.json or ~/.cursor/mcp.json), then fully restart the client.

Katto is listed as freemium — a free tier with paid plans. PixelDojo has no declared pricing — check the project's own site. If a server needs environment variables such as API keys, define them under the env key in your client's MCP config.

Yes. MCP clients support multiple servers: add katto and pixeldojo as separate keys in the same mcpServers object, and your assistant will call tools from either one.

On AllMCPs, Katto has a quality signal of 63/100 (Good) with 1 views, 0 installs and 3 GitHub stars. PixelDojo has 61/100 (Good) with 3 views, 0 installs and 0 GitHub stars.