@qikdev/mcp 6.6.32 → 6.6.35

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.
@@ -1 +1 @@
1
- {"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../../src/tools/create.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAa1D,eAAO,MAAM,iBAAiB,EAAE,IAkB/B,CAAC;AAEF,wBAAsB,mBAAmB,CAAC,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAAE,CAAC,CAwFhH"}
1
+ {"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../../src/tools/create.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAa1D,eAAO,MAAM,iBAAiB,EAAE,IAc/B,CAAC;AAEF,wBAAsB,mBAAmB,CAAC,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAAE,CAAC,CA2DhH"}
@@ -1,5 +1,5 @@
1
1
  import { ConfigManager } from "../config.js";
2
- import { getUserSessionData, getAvailableScopes, getScopeTitle } from "./user.js";
2
+ import { getUserSessionData, getAvailableScopes } from "./user.js";
3
3
  export const createContentTool = {
4
4
  name: "create_content",
5
5
  description: "✨ Create new content items using Qik content types with guided field collection",
@@ -9,14 +9,10 @@ export const createContentTool = {
9
9
  typeKey: {
10
10
  type: "string",
11
11
  description: "The content type key to create (e.g., 'article', 'incidentReportComment') OR a natural language description (e.g., 'incident report', 'blog post')"
12
- },
13
- scope: {
14
- type: "string",
15
- description: "The scope to create the content in (optional - will prompt if not provided and multiple scopes available)"
16
12
  }
17
13
  },
18
14
  required: ["typeKey"],
19
- additionalProperties: true // Allow dynamic properties based on glossary fields
15
+ additionalProperties: true // Allow any additional properties for field values
20
16
  },
21
17
  };
22
18
  export async function handleCreateContent(args) {
@@ -26,86 +22,47 @@ export async function handleCreateContent(args) {
26
22
  if (!config) {
27
23
  throw new Error('Qik MCP server not configured. Run setup first.');
28
24
  }
29
- // CRITICAL: Validate and extract arguments properly
30
- let typeKey;
31
- let scope;
32
- let userFieldData = {};
33
- // Handle different argument structures that might come from MCP
34
- if (typeof args === 'string') {
35
- typeKey = args;
36
- }
37
- else if (args && typeof args === 'object') {
38
- // Extract typeKey - handle both direct property and nested structures
39
- if (typeof args.typeKey === 'string') {
40
- typeKey = args.typeKey;
41
- }
42
- else if (typeof args.typeKey === 'object' && args.typeKey !== null && typeof args.typeKey.value === 'string') {
43
- typeKey = args.typeKey.value;
44
- }
45
- else if (typeof args.typeKey === 'object' && args.typeKey !== null) {
46
- // Don't use toString() for objects as it returns '[object Object]'
47
- return createErrorResponse(`Invalid typeKey provided. Expected string or object with 'value' property, got object: ${JSON.stringify(args.typeKey)}`);
48
- }
49
- else {
50
- return createErrorResponse(`Invalid typeKey provided. Expected string, got: ${typeof args.typeKey}. Raw value: ${JSON.stringify(args.typeKey)}`);
51
- }
52
- // Extract scope
53
- if (typeof args.scope === 'string') {
54
- scope = args.scope;
55
- }
56
- else if (typeof args.scope === 'object' && args.scope?.value) {
57
- scope = args.scope.value;
58
- }
59
- // Extract other field data
60
- const { typeKey: _, scope: __, ...rest } = args;
61
- userFieldData = rest;
62
- }
63
- else {
64
- return createErrorResponse(`Invalid arguments provided. Expected object or string, got: ${typeof args}`);
25
+ // Extract the natural language description
26
+ const naturalLanguage = args.typeKey;
27
+ if (!naturalLanguage || typeof naturalLanguage !== 'string') {
28
+ return createErrorResponse('Please provide a description of what you want to create (e.g., "article", "incident report")');
65
29
  }
66
- // STEP 1: Load glossary and find the content type
67
- const contentType = await findContentType(config, typeKey);
30
+ // STEP 1: Translate natural language to content type
31
+ const contentType = await findContentTypeFromNaturalLanguage(config, naturalLanguage);
68
32
  if (!contentType) {
69
- return createErrorResponse(`Content type '${typeKey}' not found. Please check available types using get_glossary.`);
33
+ return createErrorResponse(`I couldn't find a content type matching "${naturalLanguage}". Please check available types using get_glossary.`);
70
34
  }
71
- // STEP 2: Get user session and determine available scopes
35
+ // STEP 2: Get user session to check permissions and scopes
72
36
  const userSession = await getUserSessionData();
73
37
  const createPermission = `${contentType.key}.create`;
74
38
  const availableScopes = getAvailableScopes(userSession, createPermission);
75
39
  if (availableScopes.length === 0) {
76
40
  return createErrorResponse(`You don't have permission to create ${contentType.title} content. Required permission: ${createPermission}`);
77
41
  }
78
- // STEP 3: Handle scope selection
79
- let selectedScope = scope;
80
- if (!selectedScope) {
81
- if (availableScopes.length === 1) {
82
- selectedScope = availableScopes[0];
83
- }
84
- else {
85
- return createScopeSelectionPrompt(contentType.title, availableScopes, userSession);
86
- }
87
- }
88
- else {
89
- if (!availableScopes.includes(selectedScope)) {
90
- return createErrorResponse(`Scope '${selectedScope}' is not available. Available scopes: ${availableScopes.join(', ')}`);
91
- }
42
+ // STEP 3: Check if we have the create example payload
43
+ if (!contentType.examples || !contentType.examples.create) {
44
+ return createErrorResponse(`No create example found for ${contentType.title}. Cannot proceed without API example.`);
92
45
  }
93
- // STEP 4: Build payload using EXACT glossary field structure
94
- const { payload, missingFields } = buildPayloadFromGlossaryStructure(contentType, userFieldData, selectedScope);
46
+ // STEP 4: Extract field values from user input (everything except typeKey)
47
+ const { typeKey, ...userFieldValues } = args;
48
+ // STEP 5: Build the exact payload using the API example as template
49
+ const { payload, missingFields } = buildExactPayloadFromExample(contentType.examples.create, contentType.fields || [], userFieldValues, availableScopes[0] // Use first available scope as default
50
+ );
51
+ // STEP 6: If fields are missing, ask user for them
95
52
  if (missingFields.length > 0) {
96
- return createFieldPrompt(contentType.title, missingFields);
53
+ return createFieldCollectionPrompt(contentType.title, missingFields, contentType.examples.create);
97
54
  }
98
- // STEP 5: Create the content via API
55
+ // STEP 7: Create the content using the exact payload
99
56
  const createdContent = await createContentViaAPI(config, payload, contentType.key);
100
- return createSuccessResponse(contentType.title, createdContent, selectedScope);
57
+ return createSuccessResponse(contentType.title, createdContent);
101
58
  }
102
59
  catch (error) {
103
60
  return createErrorResponse(`Failed to create content: ${error.message}`);
104
61
  }
105
62
  }
106
- // STEP 1: Find content type in glossary AND fetch detailed documentation with examples
107
- async function findContentType(config, typeKey) {
108
- // First, get the index to find the content type
63
+ // STEP 1: Find content type from natural language
64
+ async function findContentTypeFromNaturalLanguage(config, naturalLanguage) {
65
+ // Get the glossary index
109
66
  const indexResponse = await fetch(`${config.apiUrl || 'https://api.qik.dev'}/glossary/ai`, {
110
67
  headers: {
111
68
  'Authorization': `Bearer ${config.accessToken}`,
@@ -113,15 +70,17 @@ async function findContentType(config, typeKey) {
113
70
  },
114
71
  });
115
72
  if (!indexResponse.ok) {
116
- throw new Error(`Failed to fetch glossary index: HTTP ${indexResponse.status}`);
73
+ throw new Error(`Failed to fetch glossary: HTTP ${indexResponse.status}`);
117
74
  }
118
- const indexData = await indexResponse.json();
75
+ const glossary = await indexResponse.json();
76
+ // Find matching content type
77
+ const searchTerm = naturalLanguage.toLowerCase().trim();
78
+ let matchedType = null;
119
79
  // Try exact key match first
120
- let contentTypeInfo = indexData.find(ct => ct.key === typeKey);
121
- // If not found, try fuzzy matching on title, plural, and key
122
- if (!contentTypeInfo) {
123
- const searchTerm = typeKey.toLowerCase();
124
- contentTypeInfo = indexData.find(ct => {
80
+ matchedType = glossary.find(ct => ct.key === searchTerm);
81
+ // Try fuzzy matching on title, plural, and key
82
+ if (!matchedType) {
83
+ matchedType = glossary.find(ct => {
125
84
  const title = (ct.title || '').toLowerCase();
126
85
  const plural = (ct.plural || '').toLowerCase();
127
86
  const key = (ct.key || '').toLowerCase();
@@ -133,11 +92,11 @@ async function findContentType(config, typeKey) {
133
92
  searchTerm.includes(key);
134
93
  });
135
94
  }
136
- if (!contentTypeInfo) {
95
+ if (!matchedType) {
137
96
  return null;
138
97
  }
139
- // Now fetch the detailed documentation with examples using the absolute URL
140
- const detailResponse = await fetch(contentTypeInfo.urls.documentation.url, {
98
+ // Fetch detailed documentation with examples
99
+ const detailResponse = await fetch(matchedType.urls.documentation.url, {
141
100
  headers: {
142
101
  'Authorization': `Bearer ${config.accessToken}`,
143
102
  'Content-Type': 'application/json',
@@ -147,256 +106,83 @@ async function findContentType(config, typeKey) {
147
106
  throw new Error(`Failed to fetch content type details: HTTP ${detailResponse.status}`);
148
107
  }
149
108
  const detailData = await detailResponse.json();
150
- // Merge index info with detailed data
151
109
  return {
152
110
  ...detailData,
153
- title: contentTypeInfo.title,
154
- plural: contentTypeInfo.plural,
155
- urls: contentTypeInfo.urls
111
+ title: matchedType.title,
112
+ plural: matchedType.plural,
113
+ urls: matchedType.urls
156
114
  };
157
115
  }
158
- // STEP 4: NEW APPROACH - Use examples.create STRUCTURE as template (not values)
159
- function buildPayloadFromGlossaryStructure(contentType, userFieldData, selectedScope) {
116
+ // STEP 5: Build exact payload using the API example as template
117
+ function buildExactPayloadFromExample(examplePayload, fields, userValues, defaultScope) {
118
+ // Start with a deep copy of the example payload
119
+ const payload = JSON.parse(JSON.stringify(examplePayload));
160
120
  const missingFields = [];
161
- // Create empty payload with structure from examples.create template
162
- let payload = {};
163
- if (contentType.examples && contentType.examples.create) {
164
- // Use the structure from examples.create but clear all values
165
- payload = createEmptyStructureFromTemplate(contentType.examples.create);
166
- }
167
- if (!contentType.fields || !Array.isArray(contentType.fields)) {
168
- return { payload, missingFields };
169
- }
170
- // FIRST PASS: Populate template structure with user data and defaults
171
- contentType.fields.forEach(field => {
172
- if (!field.path) {
173
- return;
174
- }
175
- // Skip readOnly fields
176
- if (field.readOnly === true) {
121
+ // Go through each field definition and try to populate it
122
+ fields.forEach(field => {
123
+ if (!field.path || field.readOnly === true) {
177
124
  return;
178
125
  }
179
- let value = undefined;
180
- // Get value from user data using intelligent strategies
181
- value = getFieldValueFromUserData(userFieldData, field);
182
- // Apply default values if no user value provided
183
- if (value === undefined && field.defaultValues && field.defaultValues.length > 0) {
184
- const defaultValue = field.defaultValues[0];
185
- if (defaultValue === 'now' && field.type === 'date') {
186
- value = new Date().toISOString();
126
+ // Try to get value from user input
127
+ let value = getUserValueForField(userValues, field);
128
+ // Apply defaults for common fields
129
+ if (value === undefined) {
130
+ if (field.path === 'meta.status' && field.defaultValues && field.defaultValues.length > 0) {
131
+ value = field.defaultValues[0];
187
132
  }
188
- else {
189
- value = defaultValue;
133
+ else if (field.path === 'meta.security' && field.defaultValues && field.defaultValues.length > 0) {
134
+ value = field.defaultValues[0];
135
+ }
136
+ else if (field.path === 'meta.scopes') {
137
+ value = [defaultScope];
138
+ }
139
+ else if (field.path === 'meta.created' && field.type === 'date') {
140
+ value = new Date().toISOString();
190
141
  }
191
142
  }
192
- // Special handling for meta.scopes - always set to selected scope
193
- if (field.path === 'meta.scopes') {
194
- value = [selectedScope];
195
- }
196
- // Set the value at the exact path if we have a value
197
- if (value !== undefined) {
198
- setValueAtExactPath(payload, field.path, value);
199
- }
200
- });
201
- // SECOND PASS: Check for missing required fields
202
- contentType.fields.forEach(field => {
203
- if (!field.path || field.readOnly === true) {
143
+ // If still no value and field is required, mark as missing (but skip group fields)
144
+ if (value === undefined && field.required === true && field.type !== 'group') {
145
+ missingFields.push(field);
204
146
  return;
205
147
  }
206
- // Check if required field is missing
207
- if (field.required === true) {
208
- const currentValue = getValueAtPath(payload, field.path);
209
- if (currentValue === undefined || currentValue === null || currentValue === '') {
210
- missingFields.push(field);
211
- }
148
+ // Set the value in the payload if we have one
149
+ if (value !== undefined) {
150
+ setValueAtPath(payload, field.path, value);
212
151
  }
213
152
  });
214
153
  return { payload, missingFields };
215
154
  }
216
- // Helper function to create empty structure from template (preserving structure, clearing values)
217
- function createEmptyStructureFromTemplate(template) {
218
- if (Array.isArray(template)) {
219
- return [];
220
- }
221
- else if (template && typeof template === 'object') {
222
- const result = {};
223
- for (const key in template) {
224
- if (template.hasOwnProperty(key)) {
225
- result[key] = createEmptyStructureFromTemplate(template[key]);
226
- }
227
- }
228
- return result;
229
- }
230
- else {
231
- // For primitive values, return undefined to be filled later
232
- return undefined;
233
- }
234
- }
235
- // Helper function to get value at a specific path in the payload
236
- function getValueAtPath(obj, path) {
237
- const parts = path.split('.');
238
- let current = obj;
239
- for (const part of parts) {
240
- if (current && typeof current === 'object' && current[part] !== undefined) {
241
- current = current[part];
242
- }
243
- else {
244
- return undefined;
245
- }
155
+ // Get user value for a specific field
156
+ function getUserValueForField(userValues, field) {
157
+ // Try exact field path first
158
+ if (userValues[field.path] !== undefined) {
159
+ return userValues[field.path];
246
160
  }
247
- return current;
248
- }
249
- // INTELLIGENT: Get field value using AI common sense based on glossary field definition
250
- function getFieldValueFromUserData(userFieldData, field) {
251
- if (!userFieldData || typeof userFieldData !== 'object')
252
- return undefined;
253
- // Strategy 1: Exact path match (e.g., "meta.title") - BUT check for type conflicts first
254
- if (userFieldData[field.path] !== undefined) {
255
- const exactValue = userFieldData[field.path];
256
- // CRITICAL: Don't use exact match if it would cause type conflicts
257
- if (field.type === 'group' && typeof exactValue === 'string') {
258
- // Don't return here, continue to other strategies
259
- }
260
- else {
261
- return exactValue;
262
- }
161
+ // Try field title
162
+ if (field.title && userValues[field.title] !== undefined) {
163
+ return userValues[field.title];
263
164
  }
264
- // Strategy 2: Nested object navigation (e.g., userFieldData.meta.title)
165
+ // Try last part of path (e.g., "title" for "meta.title")
265
166
  const pathParts = field.path.split('.');
266
- let current = userFieldData;
267
- let foundNested = true;
268
- for (const part of pathParts) {
269
- if (current && typeof current === 'object' && current[part] !== undefined) {
270
- current = current[part];
271
- }
272
- else {
273
- foundNested = false;
274
- break;
275
- }
276
- }
277
- if (foundNested && current !== userFieldData) {
278
- // CRITICAL: Check for type conflicts in nested navigation too
279
- if (field.type === 'group' && typeof current === 'string') {
280
- // Don't return here, continue to other strategies
281
- }
282
- else {
283
- return current;
284
- }
285
- }
286
- // Strategy 3: Field title match (case insensitive)
287
- if (field.title) {
288
- const titleKey = Object.keys(userFieldData).find(key => key.toLowerCase() === field.title.toLowerCase());
289
- if (titleKey && userFieldData[titleKey] !== undefined) {
290
- const titleValue = userFieldData[titleKey];
291
- // CRITICAL: Check for type conflicts in title matching too
292
- if (field.type === 'group' && typeof titleValue === 'string') {
293
- // Don't return here, continue to other strategies
294
- }
295
- else {
296
- return titleValue;
297
- }
298
- }
299
- }
300
- // Strategy 4: Last part of path (e.g., "title" for "meta.title") - EXACT MATCH ONLY
301
- const lastPart = pathParts[pathParts.length - 1].replace('[]', '');
302
- if (userFieldData[lastPart] !== undefined) {
303
- const lastPartValue = userFieldData[lastPart];
304
- // CRITICAL: Check for type conflicts in last part matching too
305
- if (field.type === 'group' && typeof lastPartValue === 'string') {
306
- // Don't return here, continue to other strategies
307
- }
308
- else {
309
- return lastPartValue;
310
- }
311
- }
312
- // Strategy 5: INTELLIGENT SEMANTIC MAPPING using field context - VERY CONSERVATIVE
313
- const value = findSemanticMatch(userFieldData, field);
314
- if (value !== undefined) {
315
- return value;
316
- }
317
- return undefined;
318
- }
319
- // INTELLIGENT: Find semantic matches based on field meaning and user input
320
- function findSemanticMatch(userFieldData, field) {
321
- const fieldPath = field.path.toLowerCase();
322
- const fieldTitle = (field.title || '').toLowerCase();
323
- const fieldDescription = (field.description || '').toLowerCase();
324
- // Create a semantic context for this field
325
- const fieldContext = `${fieldPath} ${fieldTitle} ${fieldDescription}`.toLowerCase();
326
- // Look through user data for semantic matches
327
- for (const [userKey, userValue] of Object.entries(userFieldData)) {
328
- if (userValue === undefined || userValue === null)
329
- continue;
330
- const userKeyLower = userKey.toLowerCase();
331
- // Intelligent semantic matching based on field context
332
- if (isSemanticMatch(fieldContext, userKeyLower, field, userValue)) {
333
- return userValue;
334
- }
167
+ const lastPart = pathParts[pathParts.length - 1];
168
+ if (userValues[lastPart] !== undefined) {
169
+ return userValues[lastPart];
335
170
  }
336
171
  return undefined;
337
172
  }
338
- // INTELLIGENT: Determine if user input semantically matches a glossary field
339
- function isSemanticMatch(fieldContext, userKey, field, userValue) {
340
- // CRITICAL: Don't match group/object fields with string content
341
- if (field.type === 'group' && typeof userValue === 'string') {
342
- return false;
343
- }
344
- // ULTRA CONSERVATIVE: Only match very specific cases
345
- // ONLY match body field if user provided "meta" key with long text content
346
- if (field.path === 'body' && userKey === 'meta' && typeof userValue === 'string' && userValue.length > 10) {
347
- return true;
348
- }
349
- // ONLY match exact key matches for specific fields
350
- if (userKey === 'description' && field.path.includes('description')) {
351
- return true;
352
- }
353
- if (userKey === 'status' && field.path.includes('status')) {
354
- return true;
355
- }
356
- if (userKey === 'security' && field.path.includes('security')) {
357
- return true;
358
- }
359
- // Don't match anything else - be ultra conservative
360
- return false;
361
- }
362
- // CRITICAL: Set value at exact field path as specified in glossary
363
- function setValueAtExactPath(obj, path, value) {
173
+ // Set value at specific path in object
174
+ function setValueAtPath(obj, path, value) {
364
175
  const parts = path.split('.');
365
176
  let current = obj;
366
- // Navigate to the parent of the final property
367
177
  for (let i = 0; i < parts.length - 1; i++) {
368
178
  const part = parts[i];
369
- if (part.includes('[]')) {
370
- const arrayName = part.replace('[]', '');
371
- if (!current[arrayName]) {
372
- current[arrayName] = [];
373
- }
374
- current = current[arrayName];
375
- }
376
- else {
377
- if (!current[part]) {
378
- current[part] = {};
379
- }
380
- current = current[part];
179
+ if (!current[part]) {
180
+ current[part] = {};
381
181
  }
182
+ current = current[part];
382
183
  }
383
- // Set the final property
384
184
  const finalPart = parts[parts.length - 1];
385
- if (finalPart.includes('[]')) {
386
- const arrayName = finalPart.replace('[]', '');
387
- if (!current[arrayName]) {
388
- current[arrayName] = [];
389
- }
390
- if (Array.isArray(value)) {
391
- current[arrayName] = value;
392
- }
393
- else {
394
- current[arrayName].push(value);
395
- }
396
- }
397
- else {
398
- current[finalPart] = value;
399
- }
185
+ current[finalPart] = value;
400
186
  }
401
187
  // Create content via API
402
188
  async function createContentViaAPI(config, payload, contentTypeKey) {
@@ -414,7 +200,7 @@ async function createContentViaAPI(config, payload, contentTypeKey) {
414
200
  }
415
201
  return await response.json();
416
202
  }
417
- // Helper functions for creating responses
203
+ // Helper functions for responses
418
204
  function createErrorResponse(message) {
419
205
  return {
420
206
  content: [{
@@ -423,21 +209,9 @@ function createErrorResponse(message) {
423
209
  }]
424
210
  };
425
211
  }
426
- function createScopeSelectionPrompt(contentTitle, availableScopes, userSession) {
427
- const scopeList = availableScopes.map((scope, i) => {
428
- const title = userSession ? getScopeTitle(userSession, scope) : scope;
429
- return `${i + 1}. ${title} (${scope})`;
430
- }).join('\n');
431
- return {
432
- content: [{
433
- type: "text",
434
- text: `🎯 Multiple scopes available for creating ${contentTitle}:\n\n${scopeList}\n\nPlease call create_content again with the 'scope' parameter set to one of: ${availableScopes.join(', ')}`
435
- }]
436
- };
437
- }
438
- function createFieldPrompt(contentTitle, missingFields) {
212
+ function createFieldCollectionPrompt(contentTitle, missingFields, examplePayload) {
439
213
  const fieldPrompts = missingFields.map(field => {
440
- let prompt = `• **${field.path}**`;
214
+ let prompt = `**${field.path}**`;
441
215
  if (field.title && field.title !== field.path) {
442
216
  prompt += ` (${field.title})`;
443
217
  }
@@ -445,26 +219,44 @@ function createFieldPrompt(contentTitle, missingFields) {
445
219
  prompt += `: ${field.description}`;
446
220
  }
447
221
  if (field.type) {
448
- prompt += ` (${field.type})`;
222
+ prompt += ` [${field.type}]`;
449
223
  }
450
224
  if (field.options && Array.isArray(field.options)) {
451
225
  const optionsList = field.options.map((opt) => opt.value || opt.title).join(', ');
452
226
  prompt += ` - Options: ${optionsList}`;
453
227
  }
454
- return prompt;
228
+ return `• ${prompt}`;
455
229
  }).join('\n');
456
230
  return {
457
231
  content: [{
458
232
  type: "text",
459
- text: `📝 Missing required fields for ${contentTitle}:\n\n${fieldPrompts}\n\nPlease call create_content again with these fields using their exact paths as parameter names.`
233
+ text: `📝 To create ${contentTitle}, I need the following information:\n\n${fieldPrompts}\n\nPlease call create_content again with these fields. For example:\n\`\`\`json\n${JSON.stringify({ typeKey: contentTitle.toLowerCase(), ...getExampleFieldValues(missingFields) }, null, 2)}\n\`\`\``
460
234
  }]
461
235
  };
462
236
  }
463
- function createSuccessResponse(contentTitle, createdContent, scope) {
237
+ function getExampleFieldValues(fields) {
238
+ const example = {};
239
+ fields.forEach(field => {
240
+ if (field.type === 'string') {
241
+ example[field.path] = `Your ${field.title || field.path} here`;
242
+ }
243
+ else if (field.type === 'number') {
244
+ example[field.path] = 123;
245
+ }
246
+ else if (field.type === 'boolean') {
247
+ example[field.path] = true;
248
+ }
249
+ else {
250
+ example[field.path] = `Your ${field.title || field.path} here`;
251
+ }
252
+ });
253
+ return example;
254
+ }
255
+ function createSuccessResponse(contentTitle, createdContent) {
464
256
  return {
465
257
  content: [{
466
258
  type: "text",
467
- text: `✅ Successfully created ${contentTitle}!\n\nContent ID: ${createdContent._id || createdContent.id || 'Unknown'}\nScope: ${scope}\n\nCreated content:\n${JSON.stringify(createdContent, null, 2)}`
259
+ text: `✅ Successfully created ${contentTitle}!\n\nContent ID: ${createdContent._id || createdContent.id || 'Unknown'}\n\n${JSON.stringify(createdContent, null, 2)}`
468
260
  }]
469
261
  };
470
262
  }
@@ -1 +1 @@
1
- {"version":3,"file":"create.js","sourceRoot":"","sources":["../../../src/tools/create.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"create.js","sourceRoot":"","sources":["../../../src/tools/create.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,10 @@ import { Tool } from "@modelcontextprotocol/sdk/types.js";
2
2
  export interface ScopePermissions {
3
3
  title: string;
4
4
  _id: string;
5
- children: string[];
5
+ children: (string | {
6
+ _id: string;
7
+ [key: string]: any;
8
+ })[];
6
9
  permissions: string[];
7
10
  }
8
11
  export interface UserSession {
@@ -1 +1 @@
1
- {"version":3,"file":"user.d.ts","sourceRoot":"","sources":["../../../src/tools/user.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAG1D,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB;AAED,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,YAAY,CAAC,EAAE;QACb,GAAG,EAAE,MAAM,CAAC;QACZ,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC;IACF,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE;QACL,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;KACd,CAAC;IACF,WAAW,EAAE;QACX,CAAC,OAAO,EAAE,MAAM,GAAG,gBAAgB,CAAC;KACrC,CAAC;IACF,kBAAkB,CAAC,EAAE,GAAG,EAAE,CAAC;IAC3B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACpB;AAED,eAAO,MAAM,kBAAkB,EAAE,IAOhC,CAAC;AAEF,wBAAsB,oBAAoB,IAAI,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAAE,CAAC,CAqCxG;AAGD,wBAAgB,aAAa,CAAC,WAAW,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAiBnF;AAGD,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,CAyBzF;AAGD,wBAAgB,oBAAoB,CAAC,WAAW,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAW3G;AAGD,wBAAgB,aAAa,CAAC,WAAW,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAO/E;AAGD,wBAAsB,kBAAkB,IAAI,OAAO,CAAC,WAAW,CAAC,CAoB/D"}
1
+ {"version":3,"file":"user.d.ts","sourceRoot":"","sources":["../../../src/tools/user.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAG1D,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,CAAC,MAAM,GAAG;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,CAAC,EAAE,CAAC;IAC3D,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB;AAED,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,YAAY,CAAC,EAAE;QACb,GAAG,EAAE,MAAM,CAAC;QACZ,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC;IACF,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE;QACL,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;KACd,CAAC;IACF,WAAW,EAAE;QACX,CAAC,OAAO,EAAE,MAAM,GAAG,gBAAgB,CAAC;KACrC,CAAC;IACF,kBAAkB,CAAC,EAAE,GAAG,EAAE,CAAC;IAC3B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACpB;AAED,eAAO,MAAM,kBAAkB,EAAE,IAOhC,CAAC;AAEF,wBAAsB,oBAAoB,IAAI,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAAE,CAAC,CAqCxG;AAGD,wBAAgB,aAAa,CAAC,WAAW,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAiBnF;AAGD,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,CA+BzF;AAGD,wBAAgB,oBAAoB,CAAC,WAAW,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAW3G;AAGD,wBAAgB,aAAa,CAAC,WAAW,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAO/E;AAGD,wBAAsB,kBAAkB,IAAI,OAAO,CAAC,WAAW,CAAC,CAoB/D"}
@@ -70,9 +70,16 @@ export function getAvailableScopes(userSession, permission) {
70
70
  if (scope.permissions && Array.isArray(scope.permissions)) {
71
71
  if (scope.permissions.includes(permission)) {
72
72
  scopes.push(scopeId);
73
- // Also include child scopes if they exist
73
+ // Also include child scopes if they exist - but extract IDs properly
74
74
  if (scope.children && Array.isArray(scope.children)) {
75
- scopes.push(...scope.children);
75
+ for (const child of scope.children) {
76
+ if (typeof child === 'string') {
77
+ scopes.push(child);
78
+ }
79
+ else if (child && typeof child === 'object' && child._id) {
80
+ scopes.push(child._id);
81
+ }
82
+ }
76
83
  }
77
84
  }
78
85
  }
@@ -1 +1 @@
1
- {"version":3,"file":"user.js","sourceRoot":"","sources":["../../../src/tools/user.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"user.js","sourceRoot":"","sources":["../../../src/tools/user.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@qikdev/mcp",
3
- "version": "6.6.32",
3
+ "version": "6.6.35",
4
4
  "description": "A plug-and-play Model Context Protocol server for the Qik platform - enabling AI assistants to interact with Qik's content management system, user management, forms, files, and more.",
5
5
  "keywords": [
6
6
  "mcp",