@pixeldojo/mcp 0.12.0 → 0.13.1

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/dist/index.d.cts CHANGED
@@ -78,6 +78,12 @@ interface SkillContext {
78
78
  baseUrl: string;
79
79
  /** Resolved version string for the source attribution header. */
80
80
  mcpVersion: string;
81
+ /**
82
+ * True only where "local" means the caller's own machine (the stdio npm
83
+ * server). The hosted /api/mcp route leaves it unset: there `*_path`
84
+ * fields would read the production container's disk. Fail-closed.
85
+ */
86
+ localFiles?: boolean;
81
87
  /** Optional logger that already redacts pd_xxx tokens. */
82
88
  logger: {
83
89
  error: (msg: string, ...args: unknown[]) => void;
@@ -115,6 +121,8 @@ interface SkillModule<TInput = unknown> {
115
121
  name: string;
116
122
  /** One-line description shown in `tools/list` to the LLM host. */
117
123
  description: string;
124
+ /** Replaces `description` on the hosted server when it advertises `*_path` fields. */
125
+ hostedDescription?: string;
118
126
  /** Zod schema for typed parsing inside the skill. */
119
127
  inputZod: z.ZodType<TInput>;
120
128
  /** JSON Schema (object) version for the MCP `tools/list` payload. */
@@ -146,6 +154,14 @@ interface SkillModule<TInput = unknown> {
146
154
  */
147
155
 
148
156
  declare const PACKAGE_VERSION: string;
157
+ /**
158
+ * Server-level context sent on `initialize`, shared by this stdio server and
159
+ * the hosted /api/mcp route. Facts that span tools only: tool choice belongs
160
+ * in each tool's own description. API/MCP outputs live under the temp
161
+ * bucket's api-outputs/ folder and are swept one hour after they land;
162
+ * finished films are saved to the account library, so they stay.
163
+ */
164
+ declare const SERVER_INSTRUCTIONS = "PixelDojo generates images, video, audio and short films across 100+ models, billed in credits from the connected PixelDojo account. A job that runs past the 30-second wait returns a jobId to check later; check it rather than submitting again, since every new submission is charged. Generated asset URLs are deleted one hour after they are created, so download anything the user wants to keep. Finished films are the exception and stay in the account library.";
149
165
  interface ServerOptions {
150
166
  apiKey: string;
151
167
  baseUrl?: string;
@@ -225,6 +241,8 @@ declare function makeAttributedClient(options: MakeClientOptions): PixelDojoClie
225
241
 
226
242
  declare const ALL_SKILLS: ReadonlyArray<SkillModule<unknown>>;
227
243
 
244
+ declare const HOSTED_SKILLS: ReadonlyArray<SkillModule<unknown>>;
245
+ declare function findHostedSkill(name: string): SkillModule<unknown> | undefined;
228
246
  /**
229
247
  * Skill names were `pixeldojo:<x>` until 2026-07-29. A colon is illegal in a
230
248
  * tool name per Anthropic's `^[a-zA-Z0-9_-]{1,64}$`, so claude.ai's remote-MCP
@@ -268,4 +286,4 @@ declare function makeRedactedLogger(target?: Pick<Console, 'error'>): {
268
286
  error(msg: string, ...args: unknown[]): void;
269
287
  };
270
288
 
271
- export { ALL_SKILLS, type MakeClientOptions, PACKAGE_VERSION, type PollOptions, type PollResult, type PollableJob, type ServerOptions, type SkillContext, type SkillModule, type SkillResult, buildServer, errorToActionableMessage, findSkill, makeAttributedClient, makeRedactedLogger, pollJobUntilDoneOrHandoff, redactKeys, redactValue, runStdio, skillResultToMcpResponse };
289
+ export { ALL_SKILLS, HOSTED_SKILLS, type MakeClientOptions, PACKAGE_VERSION, type PollOptions, type PollResult, type PollableJob, SERVER_INSTRUCTIONS, type ServerOptions, type SkillContext, type SkillModule, type SkillResult, buildServer, errorToActionableMessage, findHostedSkill, findSkill, makeAttributedClient, makeRedactedLogger, pollJobUntilDoneOrHandoff, redactKeys, redactValue, runStdio, skillResultToMcpResponse };
package/dist/index.d.ts CHANGED
@@ -78,6 +78,12 @@ interface SkillContext {
78
78
  baseUrl: string;
79
79
  /** Resolved version string for the source attribution header. */
80
80
  mcpVersion: string;
81
+ /**
82
+ * True only where "local" means the caller's own machine (the stdio npm
83
+ * server). The hosted /api/mcp route leaves it unset: there `*_path`
84
+ * fields would read the production container's disk. Fail-closed.
85
+ */
86
+ localFiles?: boolean;
81
87
  /** Optional logger that already redacts pd_xxx tokens. */
82
88
  logger: {
83
89
  error: (msg: string, ...args: unknown[]) => void;
@@ -115,6 +121,8 @@ interface SkillModule<TInput = unknown> {
115
121
  name: string;
116
122
  /** One-line description shown in `tools/list` to the LLM host. */
117
123
  description: string;
124
+ /** Replaces `description` on the hosted server when it advertises `*_path` fields. */
125
+ hostedDescription?: string;
118
126
  /** Zod schema for typed parsing inside the skill. */
119
127
  inputZod: z.ZodType<TInput>;
120
128
  /** JSON Schema (object) version for the MCP `tools/list` payload. */
@@ -146,6 +154,14 @@ interface SkillModule<TInput = unknown> {
146
154
  */
147
155
 
148
156
  declare const PACKAGE_VERSION: string;
157
+ /**
158
+ * Server-level context sent on `initialize`, shared by this stdio server and
159
+ * the hosted /api/mcp route. Facts that span tools only: tool choice belongs
160
+ * in each tool's own description. API/MCP outputs live under the temp
161
+ * bucket's api-outputs/ folder and are swept one hour after they land;
162
+ * finished films are saved to the account library, so they stay.
163
+ */
164
+ declare const SERVER_INSTRUCTIONS = "PixelDojo generates images, video, audio and short films across 100+ models, billed in credits from the connected PixelDojo account. A job that runs past the 30-second wait returns a jobId to check later; check it rather than submitting again, since every new submission is charged. Generated asset URLs are deleted one hour after they are created, so download anything the user wants to keep. Finished films are the exception and stay in the account library.";
149
165
  interface ServerOptions {
150
166
  apiKey: string;
151
167
  baseUrl?: string;
@@ -225,6 +241,8 @@ declare function makeAttributedClient(options: MakeClientOptions): PixelDojoClie
225
241
 
226
242
  declare const ALL_SKILLS: ReadonlyArray<SkillModule<unknown>>;
227
243
 
244
+ declare const HOSTED_SKILLS: ReadonlyArray<SkillModule<unknown>>;
245
+ declare function findHostedSkill(name: string): SkillModule<unknown> | undefined;
228
246
  /**
229
247
  * Skill names were `pixeldojo:<x>` until 2026-07-29. A colon is illegal in a
230
248
  * tool name per Anthropic's `^[a-zA-Z0-9_-]{1,64}$`, so claude.ai's remote-MCP
@@ -268,4 +286,4 @@ declare function makeRedactedLogger(target?: Pick<Console, 'error'>): {
268
286
  error(msg: string, ...args: unknown[]): void;
269
287
  };
270
288
 
271
- export { ALL_SKILLS, type MakeClientOptions, PACKAGE_VERSION, type PollOptions, type PollResult, type PollableJob, type ServerOptions, type SkillContext, type SkillModule, type SkillResult, buildServer, errorToActionableMessage, findSkill, makeAttributedClient, makeRedactedLogger, pollJobUntilDoneOrHandoff, redactKeys, redactValue, runStdio, skillResultToMcpResponse };
289
+ export { ALL_SKILLS, HOSTED_SKILLS, type MakeClientOptions, PACKAGE_VERSION, type PollOptions, type PollResult, type PollableJob, SERVER_INSTRUCTIONS, type ServerOptions, type SkillContext, type SkillModule, type SkillResult, buildServer, errorToActionableMessage, findHostedSkill, findSkill, makeAttributedClient, makeRedactedLogger, pollJobUntilDoneOrHandoff, redactKeys, redactValue, runStdio, skillResultToMcpResponse };