@pixeldojo/mcp 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +84 -0
- package/bin/pixeldojo-mcp.js +9 -0
- package/dist/cli.cjs +687 -0
- package/dist/cli.cjs.map +1 -0
- package/dist/cli.d.cts +3 -0
- package/dist/cli.d.ts +3 -0
- package/dist/cli.js +685 -0
- package/dist/cli.js.map +1 -0
- package/dist/index.cjs +598 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.cts +241 -0
- package/dist/index.d.ts +241 -0
- package/dist/index.js +587 -0
- package/dist/index.js.map +1 -0
- package/package.json +67 -0
package/README.md
ADDED
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
# @pixeldojo/mcp
|
|
2
|
+
|
|
3
|
+
PixelDojo MCP server. One install for Claude Code, Cursor, OpenClaw, and any
|
|
4
|
+
other [Model Context Protocol](https://modelcontextprotocol.io) host.
|
|
5
|
+
|
|
6
|
+
Five named tools, 130+ models, async by default.
|
|
7
|
+
|
|
8
|
+
## Quick start
|
|
9
|
+
|
|
10
|
+
```bash
|
|
11
|
+
# 1. Get an API key
|
|
12
|
+
open https://pixeldojo.ai/api-platform/api-keys
|
|
13
|
+
|
|
14
|
+
# 2. Set it
|
|
15
|
+
export PIXELDOJO_API_KEY=pd_your_api_key_here
|
|
16
|
+
|
|
17
|
+
# 3. See install snippets for your editor
|
|
18
|
+
npx @pixeldojo/mcp init
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
Add to your editor's MCP config (e.g. `~/.config/claude-code/mcp.json`):
|
|
22
|
+
|
|
23
|
+
```json
|
|
24
|
+
{
|
|
25
|
+
"mcpServers": {
|
|
26
|
+
"pixeldojo": {
|
|
27
|
+
"command": "npx",
|
|
28
|
+
"args": ["-y", "@pixeldojo/mcp"],
|
|
29
|
+
"env": {
|
|
30
|
+
"PIXELDOJO_API_KEY": "pd_your_api_key_here"
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
Restart your agent. You'll see five new tools.
|
|
38
|
+
|
|
39
|
+
## Named skills
|
|
40
|
+
|
|
41
|
+
| Skill | What it does | Default model |
|
|
42
|
+
|---|---|---|
|
|
43
|
+
| `pixeldojo:generate` | Any prompt → image or video | `google-nano-banana` |
|
|
44
|
+
| `pixeldojo:character` | Consistent characters across shots | `ideogram-character` |
|
|
45
|
+
| `pixeldojo:storyboard` | Multi-shot scenes from one brief | `veo-3.1` |
|
|
46
|
+
| `pixeldojo:upscale` | Enhance any image | `magnific-upscaler` |
|
|
47
|
+
| `pixeldojo:status` | Poll long-running jobs after a 30s sync handoff | — |
|
|
48
|
+
|
|
49
|
+
Each skill takes a `model` field for whitelist-checked overrides. Pass any
|
|
50
|
+
apiId from the [API Platform catalog](https://pixeldojo.ai/api-platform).
|
|
51
|
+
|
|
52
|
+
## How long jobs work
|
|
53
|
+
|
|
54
|
+
The four generation skills wait synchronously for up to 30 seconds. If the
|
|
55
|
+
job is still running, they return `{ jobId, statusUrl }` and the LLM follows
|
|
56
|
+
up by calling `pixeldojo:status` with the same `jobId`. Polling uses
|
|
57
|
+
exponential backoff (1s → 2s → 4s → 8s, capped) to keep load low on long
|
|
58
|
+
jobs like LoRA training and 60-second video generation.
|
|
59
|
+
|
|
60
|
+
## Errors
|
|
61
|
+
|
|
62
|
+
Every error includes the next action:
|
|
63
|
+
- Missing key → "Set PIXELDOJO_API_KEY. Get one at pixeldojo.ai/api-platform/api-keys."
|
|
64
|
+
- 401 → same.
|
|
65
|
+
- 402 / insufficient credits → "Top up at pixeldojo.ai/api-platform/buy-credits."
|
|
66
|
+
- 429 → "Rate limit hit. Try again in a few seconds."
|
|
67
|
+
- Wrong model override → lists the allowed models for the skill.
|
|
68
|
+
|
|
69
|
+
## Privacy
|
|
70
|
+
|
|
71
|
+
API keys (`pd_xxx` tokens) are never written to logs. The redaction layer
|
|
72
|
+
strips any matching token from every log message before it reaches stdout
|
|
73
|
+
or stderr.
|
|
74
|
+
|
|
75
|
+
## Telemetry
|
|
76
|
+
|
|
77
|
+
Every API call sets `x-pixeldojo-source: mcp/<version>` and
|
|
78
|
+
`x-pixeldojo-skill: pixeldojo:<name>` headers so PixelDojo's Tool Health
|
|
79
|
+
dashboard can attribute traffic separately. No personal data is sent
|
|
80
|
+
beyond what the API call itself requires.
|
|
81
|
+
|
|
82
|
+
## License
|
|
83
|
+
|
|
84
|
+
MIT.
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
// Tiny launcher. The real CLI logic lives in dist/cli.js (built by tsup).
|
|
3
|
+
// This file stays intentionally minimal so we don't bundle anything heavy
|
|
4
|
+
// for `npx @pixeldojo/mcp` cold-start latency.
|
|
5
|
+
import('../dist/cli.js').then((m) => m.main()).catch((err) => {
|
|
6
|
+
// eslint-disable-next-line no-console
|
|
7
|
+
console.error('[pixeldojo-mcp] Failed to start:', err && err.message ? err.message : err);
|
|
8
|
+
process.exit(1);
|
|
9
|
+
});
|