thumbnail-generator-mcp 1.0.0 → 1.0.2

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.js CHANGED
@@ -3,7 +3,8 @@ import { Server } from "@modelcontextprotocol/sdk/server/index.js";
3
3
  import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
4
4
  import { CallToolRequestSchema, ListToolsRequestSchema, } from "@modelcontextprotocol/sdk/types.js";
5
5
  import { GoogleGenerativeAI } from "@google/generative-ai";
6
- import { machineIdSync } from "node-machine-id";
6
+ import nodeMachineId from "node-machine-id";
7
+ const { machineIdSync } = nodeMachineId;
7
8
  import * as fs from "fs";
8
9
  import * as path from "path";
9
10
  import * as os from "os";
@@ -50,46 +51,68 @@ async function validateLicense() {
50
51
  }
51
52
  // ─── Prompt builders ─────────────────────────────────────────────────────────
52
53
  function buildPhotoEditPrompt(opts) {
53
- const { background, textOverlay, textPosition, textColor, outfitChange } = opts;
54
+ const { background, textOverlay, textPosition, textColor, outfitChange, expression, lightingStyle, mood, videoTopic } = opts;
55
+ const lightingDirective = lightingStyle === "bright"
56
+ ? "Bright, even studio lighting — soft shadows, no harsh contrast, clean and professional"
57
+ : lightingStyle === "moody"
58
+ ? "Low-key moody lighting — one side lit, deep shadows on the other, atmospheric and dramatic"
59
+ : lightingStyle === "natural"
60
+ ? "Natural daylight — soft diffused light, no artificial feel, warm and organic"
61
+ : "Cinematic dramatic lighting — strong rim light from top-behind, high contrast punchy shadows, light source top-front. This is the default for high-performing thumbnails.";
54
62
  return `TASK: Transform this selfie into a professional YouTube thumbnail.
55
-
63
+ ${videoTopic ? `\nVideo context: This thumbnail is for a video about "${videoTopic}". Use this to inform the mood, background details, and overall composition.\n` : ""}
56
64
  === PRESERVE EXACTLY — DO NOT CHANGE THESE ===
57
- - Face: exact facial structure, bone structure, skin tone, eye color, eyebrows, nose shape, mouth shape, jawline
58
- - Hair: exact color, length, texture, style
59
- - Expression: intensify the existing expression do NOT change it to something neutral
60
- - Any accessories already visible (glasses, earrings, etc.)
65
+ - Face: exact facial structure, bone structure, skin tone, eye color, eyebrows, nose shape, mouth shape, jawline — this is NON-NEGOTIABLE
66
+ - Hair: exact color, length, texture, and style
67
+ - Any accessories already visible (glasses, earrings, jewelry, etc.)
68
+ - Approximate body position and pose from the original photo
69
+
70
+ === EXPRESSION ===
71
+ ${expression
72
+ ? `Required expression: ${expression}. Intensify this significantly — push it further than in the original. Exaggerate it. Big expressions win clicks on YouTube.`
73
+ : "Intensify the existing expression dramatically — push it much further than in the original photo. Exaggerate it. Big, bold, unambiguous expressions win clicks. Do NOT neutralize or soften the expression."}
61
74
 
62
75
  === CHANGE ===
63
76
  Background: ${background}
64
- Lighting: cinematic, strong rim light, high contrast, dramatic — light source from top-front
65
- Skin: smooth, professional retouching, keep natural skin tone
66
- ${outfitChange ? `Outfit: ${outfitChange}` : "Outfit: keep as-is, ensure it looks polished"}
77
+ Lighting: ${lightingDirective}
78
+ Skin: smooth, professional retouching keep natural skin tone, remove blemishes, no heavy filters or airbrushing
79
+ ${outfitChange ? `Outfit: ${outfitChange}` : "Outfit: keep the original outfit as-is ensure it looks sharp and intentional"}
80
+ ${mood ? `Overall mood/vibe: ${mood}` : ""}
67
81
 
68
82
  === ADD ===
69
- Text overlay: "${textOverlay}" — massive bold block letters (Impact or similar), ${textColor} fill, thick black outline 4px, drop shadow, placed ${textPosition} of image
70
- Composition: person takes up 60-70% of frame, slightly off-center to leave room for text
83
+ Text overlay: "${textOverlay}" — massive bold block letters (Impact or Bebas Neue), ${textColor} fill, thick black outline 4–5px, hard drop shadow offset bottom-right. Place text ${textPosition} of image. Text must be readable at 320×180px (small thumbnail size).
84
+ Composition: person fills 6070% of frame, positioned to leave clear negative space for the text. Face is the undisputed focal point of the entire image.
71
85
 
72
86
  === OUTPUT REQUIREMENTS ===
73
- - Dimensions: 1280×720 (16:9)
74
- - Style: hyper-realistic, vibrant colors, NOT illustrated or painted
75
- - Quality: ultra-sharp, professional YouTube thumbnail quality
76
- - The person's face must be the focal point — do NOT obscure it with text`;
87
+ - Dimensions: exactly 1280×720 pixels (16:9 widescreen)
88
+ - Style: hyper-realistic photograph NOT illustrated, NOT painted, NOT AI-art stylized
89
+ - Quality: ultra-sharp, vibrant saturated colors, professional broadcast quality
90
+ - Do NOT add watermarks, logos, borders, or decorative frames`;
77
91
  }
78
92
  function buildTextOnlyPrompt(opts) {
79
- const { subject, background, textOverlay, textPosition, textColor } = opts;
93
+ const { subject, background, textOverlay, textPosition, textColor, lightingStyle, mood, videoTopic } = opts;
94
+ const lightingDirective = lightingStyle === "bright"
95
+ ? "Bright even studio lighting — soft shadows, clean professional look"
96
+ : lightingStyle === "moody"
97
+ ? "Low-key moody lighting — deep shadows, single-sided light source, atmospheric"
98
+ : lightingStyle === "natural"
99
+ ? "Natural daylight, soft and diffused, warm and organic"
100
+ : "Cinematic dramatic lighting — strong rim light, high contrast, punchy shadows, light source from top-front";
80
101
  return `Create a professional YouTube thumbnail (1280×720, 16:9).
81
-
102
+ ${videoTopic ? `\nVideo topic: "${videoTopic}"\n` : ""}
82
103
  Subject: ${subject}
83
104
  Background: ${background}
84
- Style: cinematic, vibrant, high contrast, dramatic lighting
105
+ Lighting: ${lightingDirective}
106
+ ${mood ? `Mood/vibe: ${mood}` : ""}
85
107
 
86
- Text overlay: "${textOverlay}" — massive bold block letters (Impact or similar), ${textColor} fill, thick black outline 4px, drop shadow, placed ${textPosition} of image
108
+ Text overlay: "${textOverlay}" — massive bold block letters (Impact or Bebas Neue), ${textColor} fill, thick black outline 4–5px, hard drop shadow. Place text ${textPosition} of image. Must be readable at small thumbnail size.
87
109
 
88
110
  Requirements:
89
- - Hyper-realistic, NOT illustrated or painted
90
- - Ultra-sharp, professional YouTube thumbnail quality
91
- - Text must be large and immediately readable at small sizes
92
- - Vibrant, eye-catching colors`;
111
+ - Hyper-realistic photograph style — NOT illustrated or painted
112
+ - Ultra-sharp, vibrant, professional YouTube thumbnail quality
113
+ - Subject must be the clear focal point
114
+ - Text must be large and immediately readable at 320×180px
115
+ - Do NOT add watermarks, borders, or decorative frames`;
93
116
  }
94
117
  // ─── Gemini image call ────────────────────────────────────────────────────────
95
118
  async function generateImage(prompt, imageBase64, imageMimeType) {
@@ -139,44 +162,123 @@ server.setRequestHandler(ListToolsRequestSchema, async () => ({
139
162
  tools: [
140
163
  {
141
164
  name: "generate_thumbnail",
142
- description: "Generate a YouTube thumbnail (1280×720). Optionally provide a selfie photo to edit. Returns the file path of the saved image on the Desktop.",
165
+ description: `YouTube thumbnail generator powered by Gemini. Saves the result to the user's Desktop.
166
+
167
+ ⚠️ IMPORTANT: Do NOT call this tool immediately. You must run a full intake conversation first to collect all the details Gemini needs to produce a great result. Vague inputs produce generic thumbnails. Specific inputs produce professional ones.
168
+
169
+ ## INTAKE CONVERSATION — follow this exact sequence, one question at a time
170
+
171
+ ### Phase 1 — Photo
172
+ Ask: "Do you have a photo or selfie you want to use as the base? Even a quick iPhone shot works great — drag it into the chat or tell me the file path on your Desktop."
173
+ - YES → get the file path → continue
174
+ - NO → ask for a subject description → continue
175
+
176
+ ### Phase 2 — Video context
177
+ Ask: "What's this thumbnail for? Give me the video title or a quick description of the topic. This helps me choose the right background mood."
178
+
179
+ ### Phase 3 — Expression (photo mode only)
180
+ Ask: "Describe the expression in your photo. The best thumbnails have big, exaggerated expressions — shocked, excited, disgusted, smug, terrified. Should I keep your expression as-is, or intensify/change it? Be specific."
181
+ Good examples: "jaw dropped, eyes wide open", "huge excited grin, eyebrows raised", "looking sideways with a smug smirk"
182
+
183
+ ### Phase 4 — Background
184
+ Ask: "Describe the background you want. Think cinematically — what's in the scene, what colors dominate, what's the mood?"
185
+ DO NOT accept vague answers like "dark" or "office". Push for specifics:
186
+ - If they say "dark background" → ask: "Dark how? Pure black void? Stormy night sky? Underground parking garage? Moody dimly-lit office?"
187
+ - If they say "something cool" → suggest 3 specific options based on their video topic
188
+ Good examples:
189
+ • "Floor-to-ceiling windows overlooking a rainy city at night, blurred bokeh lights"
190
+ • "Bright explosion with orange and red fire debris mid-air, smoke trails"
191
+ • "Dark luxury office, single desk lamp, city skyline visible through windows behind me"
192
+ • "Clean gradient from deep navy to black, professional and minimal"
193
+ • "Stock market charts on glowing monitors filling the background, red and green candlesticks"
194
+
195
+ ### Phase 5 — Text
196
+ Ask: "What text goes on the thumbnail? Keep it short and punchy — 2–5 words, ALL CAPS usually hits hardest."
197
+ Then: "What color? White with black outline is most readable. Yellow pops on dark backgrounds. Red creates urgency."
198
+ Then: "Where should it sit — left side, right side, top, or bottom?"
199
+
200
+ ### Phase 6 — Lighting
201
+ Ask: "What lighting style fits this thumbnail?"
202
+ - Dramatic/cinematic — strong shadows, rim light from behind (default, works for most thumbnails)
203
+ - Bright/clean — even studio light, soft shadows, professional
204
+ - Moody — low-key, one side lit, deep shadows
205
+ - Natural — soft daylight, organic feel
206
+
207
+ ### Phase 7 — Outfit (photo mode only)
208
+ Ask: "Do you want to change your outfit? I can swap it out — just describe what you'd like (e.g. 'dark navy suit', 'casual grey hoodie', 'business casual blazer'). Or say 'keep it' to leave it as-is."
209
+
210
+ ### Phase 8 — Variations
211
+ Ask: "Should I generate 1 version, or 2–3 variations so you can compare and pick the best?"
212
+
213
+ ## Before calling the tool — read back a summary
214
+ "Here's what I'm generating:
215
+ - Photo: [path or subject description]
216
+ - Video: [topic]
217
+ - Expression: [description]
218
+ - Background: [full description]
219
+ - Lighting: [style]
220
+ - Text: '[TEXT]' in [color] — [position]
221
+ - Outfit: [change or keep]
222
+ - Variations: [number]
223
+
224
+ Ready? Say yes and I'll generate it."
225
+
226
+ Only call the tool after the user confirms.`,
143
227
  inputSchema: {
144
228
  type: "object",
145
229
  properties: {
146
230
  background: {
147
231
  type: "string",
148
- description: "Describe the background scene (e.g. 'dark dramatic office with city lights', 'bright outdoor park', 'stock market charts on screens behind me')",
232
+ description: "Cinematic, specific background description. Must include scene details, colors, time of day, and mood. Not just 'dark' — e.g. 'Dark luxury office at night, single desk lamp casting a warm pool of light, blurred city skyline visible through rain-streaked windows behind me'",
149
233
  },
150
234
  text_overlay: {
151
235
  type: "string",
152
- description: "The text to display on the thumbnail in bold (e.g. 'I LOST EVERYTHING', 'THIS CHANGED MY LIFE', '$10K/MONTH')",
236
+ description: "The exact text to display on the thumbnail in massive bold letters. Short and punchy — 2–5 words, ALL CAPS (e.g. 'I LOST EVERYTHING', 'STEAL THIS FROM ME', '$10K IN 30 DAYS')",
153
237
  },
154
238
  text_position: {
155
239
  type: "string",
156
240
  enum: ["left", "right", "top", "bottom", "top-left", "top-right", "bottom-left", "bottom-right"],
157
- description: "Where to place the text overlay",
241
+ description: "Where to place the text overlay — choose based on where the person is NOT positioned to avoid overlap",
158
242
  default: "left",
159
243
  },
160
244
  text_color: {
161
245
  type: "string",
162
- description: "Text color (e.g. 'white', 'yellow', 'red')",
246
+ description: "Text color. 'white' is most readable, 'yellow' pops on dark backgrounds, 'red' creates urgency. Always paired with a thick black outline.",
163
247
  default: "white",
164
248
  },
165
249
  photo_path: {
166
250
  type: "string",
167
- description: "Absolute path to a selfie/photo to use as the base image for editing. If omitted, generates from text description only.",
251
+ description: "Absolute file path to the selfie/photo to use as the base image (e.g. /Users/jordan/Desktop/selfie.jpg). If omitted, Gemini generates the subject from subject_description.",
168
252
  },
169
253
  subject_description: {
170
254
  type: "string",
171
- description: "Required only when photo_path is omitted. Describe the person or subject to generate (e.g. 'professional man in his 30s, dark suit, surprised expression').",
255
+ description: "Only when photo_path is omitted. Describe the person and their expression in detail (e.g. 'professional man in his 30s, dark stubble, wearing a navy suit, jaw dropped in shock, eyes wide open, pointing at camera').",
256
+ },
257
+ expression: {
258
+ type: "string",
259
+ description: "The expression to apply or intensify on the person's face. Be very specific — Gemini performs better with explicit direction (e.g. 'jaw dropped, eyes wide, eyebrows raised as high as possible', 'huge grin, teeth showing, eyebrows up', 'disgusted face, nose wrinkled, one eyebrow raised')",
260
+ },
261
+ lighting_style: {
262
+ type: "string",
263
+ enum: ["dramatic", "bright", "moody", "natural"],
264
+ description: "Lighting mood: 'dramatic' = cinematic rim light + high contrast (default, best for most thumbnails), 'bright' = clean even studio light, 'moody' = low-key one-sided, 'natural' = soft daylight",
265
+ default: "dramatic",
266
+ },
267
+ mood: {
268
+ type: "string",
269
+ description: "Optional overall vibe description to guide Gemini's artistic choices (e.g. 'high-stakes and urgent', 'aspirational and premium', 'shocking and alarming', 'confident and authoritative')",
270
+ },
271
+ video_topic: {
272
+ type: "string",
273
+ description: "The video title or topic — helps Gemini make contextually appropriate decisions about composition and mood (e.g. 'How I made $10k in one month dropshipping', 'I quit my corporate job — here is what happened')",
172
274
  },
173
275
  outfit_change: {
174
276
  type: "string",
175
- description: "Optional. Describe an outfit change (e.g. 'dark navy suit, no tie'). Only applies when photo_path is provided.",
277
+ description: "Optional outfit to swap onto the person in photo mode (e.g. 'dark navy slim-fit suit, no tie, white shirt', 'casual grey hoodie, relaxed fit'). Omit to keep original outfit.",
176
278
  },
177
279
  variations: {
178
280
  type: "number",
179
- description: "Number of variations to generate (1–4). Default 1.",
281
+ description: "Number of variations to generate (1–4). Default 1. Use 2–3 for A/B testing.",
180
282
  minimum: 1,
181
283
  maximum: 4,
182
284
  default: 1,
@@ -202,7 +304,7 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
202
304
  };
203
305
  }
204
306
  const args = request.params.arguments;
205
- const { background, text_overlay, text_position = "left", text_color = "white", photo_path, subject_description, outfit_change, variations = 1, } = args;
307
+ const { background, text_overlay, text_position = "left", text_color = "white", photo_path, subject_description, outfit_change, expression, lighting_style, mood, video_topic, variations = 1, } = args;
206
308
  if (!photo_path && !subject_description) {
207
309
  return {
208
310
  content: [{ type: "text", text: "Provide either photo_path (selfie) or subject_description." }],
@@ -229,8 +331,8 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
229
331
  }
230
332
  }
231
333
  const prompt = photo_path
232
- ? buildPhotoEditPrompt({ background, textOverlay: text_overlay, textPosition: text_position, textColor: text_color, outfitChange: outfit_change })
233
- : buildTextOnlyPrompt({ subject: subject_description, background, textOverlay: text_overlay, textPosition: text_position, textColor: text_color });
334
+ ? buildPhotoEditPrompt({ background, textOverlay: text_overlay, textPosition: text_position, textColor: text_color, outfitChange: outfit_change, expression, lightingStyle: lighting_style, mood, videoTopic: video_topic })
335
+ : buildTextOnlyPrompt({ subject: subject_description, background, textOverlay: text_overlay, textPosition: text_position, textColor: text_color, lightingStyle: lighting_style, mood, videoTopic: video_topic });
234
336
  let result;
235
337
  try {
236
338
  result = await generateImage(prompt, imageBase64, imageMimeType);
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EACL,qBAAqB,EACrB,sBAAsB,GACvB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,kBAAkB,EAAQ,MAAM,uBAAuB,CAAC;AACjE,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AAEzB,+EAA+E;AAE/E,MAAM,WAAW,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;AACzE,MAAM,cAAc,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,EAAE,CAAC;AACxD,MAAM,YAAY,GAChB,OAAO,CAAC,GAAG,CAAC,YAAY;IACxB,+DAA+D,CAAC;AAClE,MAAM,WAAW,GAAG,4BAA4B,CAAC;AAMjD,IAAI,cAAc,GAA4B,IAAI,CAAC;AAEnD,KAAK,UAAU,eAAe;IAC5B,IAAI,cAAc;QAAE,OAAO,cAAc,CAAC;IAE1C,IAAI,SAAiB,CAAC;IACtB,IAAI,CAAC;QACH,SAAS,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,uBAAuB;IAC1D,CAAC;IAAC,MAAM,CAAC;QACP,SAAS,GAAG,YAAY,EAAE,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC;IACpE,CAAC;IAED,IAAI,GAAa,CAAC;IAClB,IAAI,CAAC;QACH,GAAG,GAAG,MAAM,KAAK,CAAC,YAAY,EAAE;YAC9B,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;YAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,WAAW,EAAE,WAAW,EAAE,UAAU,EAAE,SAAS,EAAE,CAAC;SAC1E,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CACb,oEAAoE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,GAAG,CAChH,CAAC;IACJ,CAAC;IAED,MAAM,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAK7B,CAAC;IAEF,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;QAChB,MAAM,GAAG,GACP,IAAI,CAAC,OAAO;YACZ,CAAC,IAAI,CAAC,MAAM,KAAK,eAAe;gBAC9B,CAAC,CAAC,sEAAsE;gBACxE,CAAC,CAAC,IAAI,CAAC,MAAM,KAAK,SAAS;oBACzB,CAAC,CAAC,mCAAmC;oBACrC,CAAC,CAAC,4DAA4D,CAAC,CAAC;QACtE,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC;IACvB,CAAC;IAED,cAAc,GAAG,IAAI,CAAC,QAAQ,IAAI,CAAC,WAAW,CAAC,CAAC;IAChD,OAAO,cAAc,CAAC;AACxB,CAAC;AAED,gFAAgF;AAEhF,SAAS,oBAAoB,CAAC,IAM7B;IACC,MAAM,EAAE,UAAU,EAAE,WAAW,EAAE,YAAY,EAAE,SAAS,EAAE,YAAY,EAAE,GACtE,IAAI,CAAC;IACP,OAAO;;;;;;;;;cASK,UAAU;;;EAGtB,YAAY,CAAC,CAAC,CAAC,WAAW,YAAY,EAAE,CAAC,CAAC,CAAC,8CAA8C;;;iBAG1E,WAAW,uDAAuD,SAAS,uDAAuD,YAAY;;;;;;;0EAOrF,CAAC;AAC3E,CAAC;AAED,SAAS,mBAAmB,CAAC,IAM5B;IACC,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,YAAY,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC;IAC3E,OAAO;;WAEE,OAAO;cACJ,UAAU;;;iBAGP,WAAW,uDAAuD,SAAS,uDAAuD,YAAY;;;;;;+BAMhI,CAAC;AAChC,CAAC;AAED,iFAAiF;AAEjF,KAAK,UAAU,aAAa,CAC1B,MAAc,EACd,WAAoB,EACpB,aAAsB;IAEtB,MAAM,KAAK,GAAG,IAAI,kBAAkB,CAAC,cAAc,CAAC,CAAC;IACrD,MAAM,KAAK,GAAG,KAAK,CAAC,kBAAkB,CAAC;QACrC,KAAK,EAAE,WAAW;QAClB,gBAAgB,EAAE;YAChB,yDAAyD;YACzD,kBAAkB,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC;SACtC;KACF,CAAC,CAAC;IAEH,MAAM,KAAK,GAAW,EAAE,CAAC;IACzB,IAAI,WAAW,IAAI,aAAa,EAAE,CAAC;QACjC,KAAK,CAAC,IAAI,CAAC;YACT,UAAU,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,aAA0D,EAAE;SACxG,CAAC,CAAC;IACL,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;IAE7B,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;IAClD,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;IAEjC,KAAK,MAAM,IAAI,IAAI,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,IAAI,EAAE,EAAE,CAAC;QAClE,IAAI,IAAI,CAAC,UAAU,EAAE,IAAI,EAAE,CAAC;YAC1B,OAAO;gBACL,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,IAAI;gBAC5B,QAAQ,EAAE,IAAI,CAAC,UAAU,CAAC,QAAQ,IAAI,WAAW;aAClD,CAAC;QACJ,CAAC;IACH,CAAC;IAED,MAAM,IAAI,KAAK,CAAC,2DAA2D,CAAC,CAAC;AAC/E,CAAC;AAED,iFAAiF;AAEjF,SAAS,aAAa,CAAC,MAAc,EAAE,QAAgB;IACrD,MAAM,GAAG,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC;IAC5C,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE;SACzB,WAAW,EAAE;SACb,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC;SACrB,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAChB,MAAM,QAAQ,GAAG,aAAa,SAAS,IAAI,GAAG,EAAE,CAAC;IACjD,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,SAAS,CAAC,CAAC;IACnD,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IAC7C,EAAE,CAAC,aAAa,CAAC,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;IACzD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,iFAAiF;AAEjF,MAAM,MAAM,GAAG,IAAI,MAAM,CACvB,EAAE,IAAI,EAAE,qBAAqB,EAAE,OAAO,EAAE,OAAO,EAAE,EACjD,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,CAChC,CAAC;AAEF,MAAM,CAAC,iBAAiB,CAAC,sBAAsB,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC;IAC5D,KAAK,EAAE;QACL;YACE,IAAI,EAAE,oBAAoB;YAC1B,WAAW,EACT,8IAA8I;YAChJ,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,UAAU,EAAE;wBACV,IAAI,EAAE,QAAQ;wBACd,WAAW,EACT,iJAAiJ;qBACpJ;oBACD,YAAY,EAAE;wBACZ,IAAI,EAAE,QAAQ;wBACd,WAAW,EACT,+GAA+G;qBAClH;oBACD,aAAa,EAAE;wBACb,IAAI,EAAE,QAAQ;wBACd,IAAI,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,WAAW,EAAE,aAAa,EAAE,cAAc,CAAC;wBAChG,WAAW,EAAE,iCAAiC;wBAC9C,OAAO,EAAE,MAAM;qBAChB;oBACD,UAAU,EAAE;wBACV,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,4CAA4C;wBACzD,OAAO,EAAE,OAAO;qBACjB;oBACD,UAAU,EAAE;wBACV,IAAI,EAAE,QAAQ;wBACd,WAAW,EACT,yHAAyH;qBAC5H;oBACD,mBAAmB,EAAE;wBACnB,IAAI,EAAE,QAAQ;wBACd,WAAW,EACT,6JAA6J;qBAChK;oBACD,aAAa,EAAE;wBACb,IAAI,EAAE,QAAQ;wBACd,WAAW,EACT,gHAAgH;qBACnH;oBACD,UAAU,EAAE;wBACV,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,oDAAoD;wBACjE,OAAO,EAAE,CAAC;wBACV,OAAO,EAAE,CAAC;wBACV,OAAO,EAAE,CAAC;qBACX;iBACF;gBACD,QAAQ,EAAE,CAAC,YAAY,EAAE,cAAc,CAAC;aACzC;SACF;KACF;CACF,CAAC,CAAC,CAAC;AAEJ,MAAM,CAAC,iBAAiB,CAAC,qBAAqB,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;IAChE,IAAI,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,oBAAoB,EAAE,CAAC;QACjD,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,iBAAiB,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IACtG,CAAC;IAED,6CAA6C;IAC7C,IAAI,CAAC;QACH,MAAM,eAAe,EAAE,CAAC;IAC1B,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,kBAAkB,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC;YAC/F,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;IAED,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,SAS3B,CAAC;IAEF,MAAM,EACJ,UAAU,EACV,YAAY,EACZ,aAAa,GAAG,MAAM,EACtB,UAAU,GAAG,OAAO,EACpB,UAAU,EACV,mBAAmB,EACnB,aAAa,EACb,UAAU,GAAG,CAAC,GACf,GAAG,IAAI,CAAC;IAET,IAAI,CAAC,UAAU,IAAI,CAAC,mBAAmB,EAAE,CAAC;QACxC,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,4DAA4D,EAAE,CAAC;YAC/F,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;IAED,MAAM,UAAU,GAAa,EAAE,CAAC;IAChC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAE/D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC;QAC/B,IAAI,WAA+B,CAAC;QACpC,IAAI,aAAiC,CAAC;QAEtC,IAAI,UAAU,EAAE,CAAC;YACf,IAAI,CAAC;gBACH,MAAM,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;gBACxC,WAAW,GAAG,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;gBACrC,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;gBACpE,aAAa,GAAG,GAAG,KAAK,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,GAAG,KAAK,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,YAAY,CAAC;YAC5F,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO;oBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,yBAAyB,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC;oBACtG,OAAO,EAAE,IAAI;iBACd,CAAC;YACJ,CAAC;QACH,CAAC;QAED,MAAM,MAAM,GAAG,UAAU;YACvB,CAAC,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,WAAW,EAAE,YAAY,EAAE,YAAY,EAAE,aAAa,EAAE,SAAS,EAAE,UAAU,EAAE,YAAY,EAAE,aAAa,EAAE,CAAC;YAClJ,CAAC,CAAC,mBAAmB,CAAC,EAAE,OAAO,EAAE,mBAAoB,EAAE,UAAU,EAAE,WAAW,EAAE,YAAY,EAAE,YAAY,EAAE,aAAa,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,CAAC;QAEtJ,IAAI,MAA4C,CAAC;QACjD,IAAI,CAAC;YACH,MAAM,GAAG,MAAM,aAAa,CAAC,MAAM,EAAE,WAAW,EAAE,aAAa,CAAC,CAAC;QACnE,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,iBAAiB,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC;gBAC9F,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;QAED,MAAM,SAAS,GAAG,aAAa,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;QAChE,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC7B,CAAC;IAED,MAAM,QAAQ,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC5D,OAAO;QACL,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,YAAY,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,4BAA4B,QAAQ,oBAAoB,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,0FAA0F;aACrO;SACF;KACF,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,gFAAgF;AAEhF,KAAK,UAAU,IAAI;IACjB,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,OAAO,CAAC,KAAK,CAAC,qDAAqD,CAAC,CAAC;QACrE,OAAO,CAAC,KAAK,CACX,yFAAyF,CAC1F,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,IAAI,CAAC,cAAc,EAAE,CAAC;QACpB,OAAO,CAAC,KAAK,CAAC,wDAAwD,CAAC,CAAC;QACxE,OAAO,CAAC,KAAK,CAAC,0DAA0D,CAAC,CAAC;QAC1E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;IAC7C,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;AAClC,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;IACnB,OAAO,CAAC,KAAK,CAAC,QAAQ,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IAClE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "thumbnail-generator-mcp",
3
- "version": "1.0.0",
3
+ "version": "1.0.2",
4
4
  "description": "YouTube thumbnail generator MCP server for Claude Desktop",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",