@pixeldojo/mcp 0.15.1 → 0.16.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/dist/cli.js CHANGED
@@ -3050,6 +3050,7 @@ var skills_exports = {};
3050
3050
  __export(skills_exports, {
3051
3051
  ALL_SKILLS: () => ALL_SKILLS,
3052
3052
  HOSTED_SKILLS: () => HOSTED_SKILLS,
3053
+ TOOL_ANNOTATIONS: () => TOOL_ANNOTATIONS,
3053
3054
  adSkill: () => adSkill,
3054
3055
  audioSkill: () => audioSkill,
3055
3056
  campaignSkill: () => campaignSkill,
@@ -3068,10 +3069,21 @@ __export(skills_exports, {
3068
3069
  saveWorkflowSkill: () => saveWorkflowSkill,
3069
3070
  statusSkill: () => statusSkill,
3070
3071
  storyboardSkill: () => storyboardSkill,
3072
+ toolListing: () => toolListing,
3071
3073
  uploadSkill: () => uploadSkill,
3072
3074
  upscaleSkill: () => upscaleSkill,
3073
3075
  videoSkill: () => videoSkill
3074
3076
  });
3077
+ function toolListing(skill) {
3078
+ const { title, ...hints } = TOOL_ANNOTATIONS[skill.name];
3079
+ return {
3080
+ name: skill.name,
3081
+ title,
3082
+ description: skill.description,
3083
+ inputSchema: skill.inputJsonSchema,
3084
+ annotations: { title, ...hints }
3085
+ };
3086
+ }
3075
3087
  function findHostedSkill(name) {
3076
3088
  const wanted = name.replace(/^pixeldojo:/, "pixeldojo_");
3077
3089
  return HOSTED_SKILLS.find((s) => s.name === wanted);
@@ -3080,7 +3092,7 @@ function findSkill(name) {
3080
3092
  const wanted = name.replace(/^pixeldojo:/, "pixeldojo_");
3081
3093
  return ALL_SKILLS.find((s) => s.name === wanted);
3082
3094
  }
3083
- var ALL_SKILLS, isLocalPathField, HOSTED_SKILLS;
3095
+ var ALL_SKILLS, isLocalPathField, HOSTED_SKILLS, render, read, TOOL_ANNOTATIONS;
3084
3096
  var init_skills = __esm({
3085
3097
  "src/skills/index.ts"() {
3086
3098
  init_generate();
@@ -3135,6 +3147,29 @@ var init_skills = __esm({
3135
3147
  }
3136
3148
  };
3137
3149
  });
3150
+ render = (title) => ({ title, readOnlyHint: false, destructiveHint: false, openWorldHint: false });
3151
+ read = (title) => ({ title, readOnlyHint: true, destructiveHint: false, openWorldHint: false });
3152
+ TOOL_ANNOTATIONS = {
3153
+ pixeldojo_generate: render("Generate image or video"),
3154
+ pixeldojo_edit: render("Edit image"),
3155
+ pixeldojo_character: render("Consistent character image"),
3156
+ pixeldojo_storyboard: render("Storyboard preview video"),
3157
+ pixeldojo_upscale: render("Upscale image or video"),
3158
+ pixeldojo_audio: render("Generate music, speech or sound"),
3159
+ pixeldojo_video: render("Change, animate or extend video"),
3160
+ pixeldojo_ad: render("Make video ad"),
3161
+ pixeldojo_campaign: render("Make product launch campaign"),
3162
+ pixeldojo_film: render("Make short film"),
3163
+ pixeldojo_episode: render("Make faceless video"),
3164
+ pixeldojo_run_workflow: render("Run saved workflow"),
3165
+ pixeldojo_upload: render("Upload local file"),
3166
+ pixeldojo_save_workflow: { ...render("Save workflow"), destructiveHint: true },
3167
+ pixeldojo_status: read("Check job status"),
3168
+ pixeldojo_campaign_status: read("Check campaign status"),
3169
+ pixeldojo_library: read("Search media library"),
3170
+ pixeldojo_list_workflows: read("List saved workflows"),
3171
+ pixeldojo_from_url: { ...read("Read product page"), openWorldHint: true }
3172
+ };
3138
3173
  }
3139
3174
  });
3140
3175
  function makeAttributedClient(options) {
@@ -3188,7 +3223,7 @@ function makeRedactedLogger(target = console) {
3188
3223
  }
3189
3224
 
3190
3225
  // src/server.ts
3191
- var PACKAGE_VERSION = "0.15.1" ;
3226
+ var PACKAGE_VERSION = "0.16.0" ;
3192
3227
  var 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.";
3193
3228
  function buildServer(options) {
3194
3229
  if (!options.apiKey) {
@@ -3213,11 +3248,7 @@ function buildServer(options) {
3213
3248
  );
3214
3249
  server.setRequestHandler(ListToolsRequestSchema, async () => {
3215
3250
  return {
3216
- tools: ALL_SKILLS.map((skill) => ({
3217
- name: skill.name,
3218
- description: skill.description,
3219
- inputSchema: skill.inputJsonSchema
3220
- }))
3251
+ tools: ALL_SKILLS.map(toolListing)
3221
3252
  };
3222
3253
  });
3223
3254
  server.setRequestHandler(CallToolRequestSchema, async (req) => {