npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@pixeldojo/mcp

v0.15.1

Published

MCP server for PixelDojo image and video generation. One install for Claude Code, Cursor, OpenClaw.

Readme

@pixeldojo/mcp

PixelDojo MCP server. One install for Claude Code, Cursor, OpenClaw, and any other Model Context Protocol host.

19 named tools, 140+ models, async by default.

Prefer zero install? PixelDojo also runs a hosted MCP server with OAuth sign-in (no API key): point any remote-capable client at https://pixeldojo.ai/api/mcp and approve in your browser. Setup guides for every platform: pixeldojo.ai/skills. This npm package is the local (stdio) twin — same skills, plus local-file uploads.

Quick start

# 1. Get an API key
open https://pixeldojo.ai/api-platform/api-keys

# 2. Set it
export PIXELDOJO_API_KEY=pd_your_api_key_here

# 3. See install snippets for your editor
npx @pixeldojo/mcp init

Add to your editor's MCP config (e.g. ~/.config/claude-code/mcp.json):

{
  "mcpServers": {
    "pixeldojo": {
      "command": "npx",
      "args": ["-y", "@pixeldojo/mcp"],
      "env": {
        "PIXELDOJO_API_KEY": "pd_your_api_key_here"
      }
    }
  }
}

Restart your agent. You'll see 16 new tools.

Named skills

| Skill | What it does | |---|---| | pixeldojo_generate | Any prompt → image or video. Defaults to seedream-5 (stills); pass any apiId, e.g. seedance-2-5 for video. The recommended models are the ones PixelDojo's studios use. | | pixeldojo_edit | Change an existing image with a text instruction (multi-image capable). | | pixeldojo_character | Consistent characters across shots. | | pixeldojo_storyboard | One video shot from a scene brief (use pixeldojo_film for multi-shot). | | pixeldojo_film | Film Studio: a multi-shot film from an idea, or a music video lip-synced to your song (song_url or song_path). | | pixeldojo_video | Video Studio verbs on an existing clip: change (restyle/edit), move (motion transfer or character swap), extend. Uses each verb's studio engine. | | pixeldojo_episode | Faceless Studio: a narrated faceless video episode from a topic (script, scenes, voice, music, export). | | pixeldojo_ad | Marketing Studio: a product video ad from a URL or product images. | | pixeldojo_upscale | Enhance any image (up to 16×) or video (up to 4K). | | pixeldojo_audio | Full audio scenes: dialogue + effects + music in one clip (Seed Audio 1.0). Reference clips are hosted URLs; local audio files are not accepted. | | pixeldojo_library | Search your media library: saved My Media + recent generations. | | pixeldojo_save_workflow / run_workflow / list_workflows | Save a multi-step chain once, run it by name from any chat. | | pixeldojo_upload | Local file → 24h temp URL, for reference inputs. | | pixeldojo_from_url | Product page URL → structured product info. Free. | | pixeldojo_campaign / campaign_status | One product URL → hero + lifestyle set + optional video. | | pixeldojo_status | Poll long-running jobs after a 30s sync handoff. |

Generation skills take a model field for whitelist-checked overrides. Pass any apiId from the API Platform catalog.

References. image_url is for stills, video_url for a source clip, and an audio URL can ride along in either. Each lands in the field the chosen model actually declares for that kind of media. A clip or a track with no model named routes to an engine that can read one; naming a model that can't gets you the working engine plus a one-line note saying so.

Model-specific settings. Anything the shared inputs don't cover — a seed, a negative prompt, a resolution tier, a quality toggle — goes in params under that model's own field name, in the same call that names the model ({"model": "seedance-2-reference", "params": {"resolution": "1080p"}}). A wrong field comes back named with its allowed values and nothing is charged.

How long jobs work

Generation skills wait synchronously for up to 30 seconds. If the job is still running, they return { jobId, statusUrl } and the LLM follows up by calling pixeldojo_status with the same jobId. Polling uses exponential backoff (1s → 2s → 4s → 8s, capped) to keep load low on long jobs like LoRA training and 60-second video generation.

Errors

Every error includes the next action:

  • Missing key → "Set PIXELDOJO_API_KEY. Get one at pixeldojo.ai/api-platform/api-keys."
  • 401 → same.
  • 402 / insufficient credits → "Top up at pixeldojo.ai/api-platform/buy-credits."
  • 429 → "Rate limit hit. Try again in a few seconds."
  • Wrong model override → lists the allowed models for the skill.

Privacy

API keys (pd_xxx tokens) are never written to logs. The redaction layer strips any matching token from every log message before it reaches stdout or stderr.

Telemetry

Every API call sets x-pixeldojo-source: mcp/<version> and x-pixeldojo-skill: pixeldojo_<name> headers so PixelDojo's Tool Health dashboard can attribute traffic separately. No personal data is sent beyond what the API call itself requires.

License

MIT.