@qikdev/mcp 6.6.19 → 6.6.20

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;AAK1D,eAAO,MAAM,iBAAiB,EAAE,IAqB/B,CAAC;AAEF,wBAAsB,mBAAmB,CAAC,IAAI,EAAE;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,GAAG,CAAA;CAAE,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAAE,CAAC,CAuH5J"}
1
+ {"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../../src/tools/create.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAK1D,eAAO,MAAM,iBAAiB,EAAE,IAqB/B,CAAC;AAEF,wBAAsB,mBAAmB,CAAC,IAAI,EAAE;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,GAAG,CAAA;CAAE,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAAE,CAAC,CA4D5J"}
@@ -1,5 +1,5 @@
1
1
  import { ConfigManager } from "../config.js";
2
- import { getUserSessionData, hasPermission, getAvailableScopes } from "./user.js";
2
+ import { getUserSessionData } 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",
@@ -12,7 +12,7 @@ export const createContentTool = {
12
12
  },
13
13
  scope: {
14
14
  type: "string",
15
- description: "The scope to create the content in (optional - will prompt if not provided)"
15
+ description: "The scope to create the content in (optional - will prompt if not provided and multiple scopes available)"
16
16
  },
17
17
  data: {
18
18
  type: "object",
@@ -29,161 +29,140 @@ export async function handleCreateContent(args) {
29
29
  if (!config) {
30
30
  throw new Error('Qik MCP server not configured. Run setup first.');
31
31
  }
32
- const { typeKey, scope, data } = args;
33
- // STEP 1: User asks to create something - we have the typeKey
34
- // STEP 2: Load and check the glossary for the relevant entry
35
- const glossaryResponse = await fetch(`${config.apiUrl || 'https://api.qik.dev'}/glossary/ai`, {
36
- headers: {
37
- 'Authorization': `Bearer ${config.accessToken}`,
38
- 'Content-Type': 'application/json',
39
- },
40
- });
41
- if (!glossaryResponse.ok) {
42
- throw new Error(`Failed to fetch glossary: HTTP ${glossaryResponse.status}`);
43
- }
44
- const glossaryData = await glossaryResponse.json();
45
- // Find the content type
46
- let contentType = glossaryData.find(ct => ct.key === typeKey);
47
- // If not found by key, try natural language matching
48
- if (!contentType) {
49
- contentType = findContentTypeByDescription(glossaryData, typeKey);
50
- }
32
+ const { typeKey, scope, data = {} } = args;
33
+ // STEP 1: Load glossary and find the most appropriate content type
34
+ const contentType = await findContentType(config, typeKey);
51
35
  if (!contentType) {
52
- const availableTypes = glossaryData.map(ct => `${ct.key} (${ct.title})`).join(', ');
53
- throw new Error(`Content type '${typeKey}' not found. Available types: ${availableTypes}`);
36
+ return createErrorResponse(`Content type '${typeKey}' not found. Please check available types using get_glossary.`);
54
37
  }
55
- // STEP 3: Understand how to create the JSON object from the glossary entry
56
- const payload = buildPayloadFromGlossary(contentType, data, scope);
57
- // Get user session for permissions and scope validation
38
+ // STEP 2: Get user session and determine available scopes for this content type
58
39
  const userSession = await getUserSessionData();
59
- const requiredPermission = `create.${contentType.key}`;
60
- if (!hasPermission(userSession, requiredPermission)) {
61
- throw new Error(`You don't have permission to create ${contentType.title} content. Required permission: ${requiredPermission}`);
40
+ const createPermission = `create.${contentType.key}`;
41
+ const availableScopes = getAvailableScopesForPermission(userSession, createPermission);
42
+ if (availableScopes.length === 0) {
43
+ return createErrorResponse(`You don't have permission to create ${contentType.title} content. Required permission: ${createPermission}`);
62
44
  }
63
- // Handle scope selection if not provided
64
- if (!payload.meta?.scopes) {
65
- const availableScopes = getAvailableScopes(userSession, requiredPermission);
66
- if (availableScopes.length === 0) {
67
- throw new Error(`No scopes available for creating ${contentType.title} content`);
68
- }
45
+ // STEP 3: Handle scope selection
46
+ let selectedScope = scope;
47
+ if (!selectedScope) {
69
48
  if (availableScopes.length === 1) {
70
- payload.meta = payload.meta || {};
71
- payload.meta.scopes = [availableScopes[0]];
49
+ selectedScope = availableScopes[0];
72
50
  }
73
51
  else {
74
- return {
75
- content: [{
76
- type: "text",
77
- text: `🎯 Multiple scopes available for creating ${contentType.title}:\n\n${availableScopes.map((s, i) => `${i + 1}. ${s}`).join('\n')}\n\nPlease call create_content again with the scope parameter set to one of: ${availableScopes.join(', ')}`
78
- }]
79
- };
52
+ return createScopeSelectionPrompt(contentType.title, availableScopes);
80
53
  }
81
54
  }
82
- // Check if we have all required data
83
- const missingFields = getMissingRequiredFields(contentType, payload);
84
- if (missingFields.length > 0) {
85
- const fieldPrompts = missingFields.map(field => {
86
- return `• ${field.title || field.path}: ${field.description || 'No description'}`;
87
- }).join('\n');
88
- return {
89
- content: [{
90
- type: "text",
91
- text: `📝 Missing required fields for ${contentType.title}:\n\n${fieldPrompts}\n\nPlease call create_content again with a 'data' object containing these fields.`
92
- }]
93
- };
55
+ else {
56
+ // Validate the provided scope is available
57
+ if (!availableScopes.includes(selectedScope)) {
58
+ return createErrorResponse(`Scope '${selectedScope}' is not available. Available scopes: ${availableScopes.join(', ')}`);
59
+ }
94
60
  }
95
- // Create the content
96
- const createResponse = await fetch(`${config.apiUrl || 'https://api.qik.dev'}/content`, {
97
- method: 'POST',
98
- headers: {
99
- 'Authorization': `Bearer ${config.accessToken}`,
100
- 'Content-Type': 'application/json',
101
- },
102
- body: JSON.stringify(payload)
103
- });
104
- if (!createResponse.ok) {
105
- const errorText = await createResponse.text();
106
- throw new Error(`Failed to create content: HTTP ${createResponse.status} - ${errorText}`);
61
+ // STEP 4: Analyze fields and check for missing required data
62
+ const requiredFields = getRequiredNonReadOnlyFields(contentType);
63
+ const missingFields = findMissingRequiredFields(requiredFields, data);
64
+ if (missingFields.length > 0) {
65
+ return createFieldPrompt(contentType.title, missingFields);
107
66
  }
108
- const createdContent = await createResponse.json();
109
- return {
110
- content: [{
111
- type: "text",
112
- text: `✅ Successfully created ${contentType.title}!\n\nContent ID: ${createdContent.id || 'Unknown'}\nScope: ${payload.meta?.scopes?.[0] || 'Unknown'}\n\nCreated content:\n${JSON.stringify(createdContent, null, 2)}`
113
- }]
114
- };
67
+ // STEP 5: Build the payload from the glossary fields and user data
68
+ const payload = buildPayloadFromFields(contentType, data, selectedScope);
69
+ // STEP 6: Create the content via API
70
+ const createdContent = await createContentViaAPI(config, payload);
71
+ return createSuccessResponse(contentType.title, createdContent, selectedScope);
115
72
  }
116
73
  catch (error) {
117
- return {
118
- content: [{
119
- type: "text",
120
- text: `❌ Failed to create content: ${error.message}`
121
- }]
122
- };
74
+ return createErrorResponse(`Failed to create content: ${error.message}`);
123
75
  }
124
76
  }
125
- function findContentTypeByDescription(glossaryData, description) {
126
- const desc = description.toLowerCase();
127
- return glossaryData.find(contentType => {
128
- const title = (contentType.title || '').toLowerCase();
129
- const plural = (contentType.plural || '').toLowerCase();
130
- const key = (contentType.key || '').toLowerCase();
131
- return desc.includes(title) ||
132
- desc.includes(plural) ||
133
- desc.includes(key) ||
134
- title.includes(desc) ||
135
- plural.includes(desc);
77
+ // STEP 1: Find content type in glossary
78
+ async function findContentType(config, typeKey) {
79
+ const response = await fetch(`${config.apiUrl || 'https://api.qik.dev'}/glossary/ai`, {
80
+ headers: {
81
+ 'Authorization': `Bearer ${config.accessToken}`,
82
+ 'Content-Type': 'application/json',
83
+ },
136
84
  });
85
+ if (!response.ok) {
86
+ throw new Error(`Failed to fetch glossary: HTTP ${response.status}`);
87
+ }
88
+ const glossaryData = await response.json();
89
+ // Try exact key match first
90
+ let contentType = glossaryData.find(ct => ct.key === typeKey);
91
+ // If not found, try fuzzy matching on title, plural, and key
92
+ if (!contentType) {
93
+ const searchTerm = typeKey.toLowerCase();
94
+ contentType = glossaryData.find(ct => {
95
+ const title = (ct.title || '').toLowerCase();
96
+ const plural = (ct.plural || '').toLowerCase();
97
+ const key = (ct.key || '').toLowerCase();
98
+ return title.includes(searchTerm) ||
99
+ plural.includes(searchTerm) ||
100
+ key.includes(searchTerm) ||
101
+ searchTerm.includes(title) ||
102
+ searchTerm.includes(plural) ||
103
+ searchTerm.includes(key);
104
+ });
105
+ }
106
+ return contentType || null;
137
107
  }
138
- function buildPayloadFromGlossary(contentType, userData = {}, scope) {
139
- const payload = {};
140
- // Set the content type
141
- payload.type = contentType.key;
142
- // Initialize meta object
143
- payload.meta = {};
144
- // Set scope if provided
145
- if (scope) {
146
- payload.meta.scopes = [scope];
108
+ // STEP 2: Get available scopes for a permission from user session
109
+ function getAvailableScopesForPermission(userSession, permission) {
110
+ const scopes = [];
111
+ if (!userSession.permissionSets || !Array.isArray(userSession.permissionSets)) {
112
+ console.warn('Permission sets not found in user session');
113
+ return [];
147
114
  }
148
- // Process fields from glossary definition
149
- if (contentType.fields && Array.isArray(contentType.fields)) {
150
- contentType.fields.forEach(field => {
151
- if (!field.path)
152
- return;
153
- let value = getUserDataValue(userData, field);
154
- // Use default value if no user value and default exists
155
- if (value === undefined && field.defaultValues && field.defaultValues.length > 0) {
156
- const defaultValue = field.defaultValues[0];
157
- if (defaultValue === 'now' && field.type === 'date') {
158
- value = new Date().toISOString();
115
+ userSession.permissionSets.forEach(permissionSet => {
116
+ if (permissionSet.permissions && Array.isArray(permissionSet.permissions)) {
117
+ permissionSet.permissions.forEach(perm => {
118
+ if (perm.permission === permission && perm.scopes && Array.isArray(perm.scopes)) {
119
+ scopes.push(...perm.scopes);
159
120
  }
160
- else {
161
- value = defaultValue;
162
- }
163
- }
164
- // Set the value in the payload
165
- if (value !== undefined) {
166
- setNestedValue(payload, field.path, value);
167
- }
168
- });
121
+ });
122
+ }
123
+ });
124
+ // Remove duplicates
125
+ return [...new Set(scopes)];
126
+ }
127
+ // STEP 3: Get required fields that are not readOnly and not reference types (for now)
128
+ function getRequiredNonReadOnlyFields(contentType) {
129
+ if (!contentType.fields || !Array.isArray(contentType.fields)) {
130
+ return [];
169
131
  }
170
- return payload;
132
+ return contentType.fields.filter(field => field.required === true &&
133
+ field.readOnly !== true &&
134
+ field.type !== 'reference' // Skip reference types for now as per conversation
135
+ );
136
+ }
137
+ // STEP 4: Find missing required fields from user data
138
+ function findMissingRequiredFields(requiredFields, userData) {
139
+ const missingFields = [];
140
+ for (const field of requiredFields) {
141
+ if (!field.path)
142
+ continue;
143
+ const value = getValueFromUserData(userData, field);
144
+ if (value === undefined || value === null || value === '') {
145
+ missingFields.push(field);
146
+ }
147
+ }
148
+ return missingFields;
171
149
  }
172
- function getUserDataValue(userData, field) {
150
+ // Get value from user data for a specific field
151
+ function getValueFromUserData(userData, field) {
173
152
  if (!userData || typeof userData !== 'object')
174
153
  return undefined;
175
154
  // Try exact path match first
176
155
  if (userData[field.path] !== undefined) {
177
156
  return userData[field.path];
178
157
  }
179
- // Try field title match
158
+ // Try field title match (case insensitive)
180
159
  if (field.title) {
181
160
  const titleKey = Object.keys(userData).find(key => key.toLowerCase() === field.title.toLowerCase());
182
161
  if (titleKey && userData[titleKey] !== undefined) {
183
162
  return userData[titleKey];
184
163
  }
185
164
  }
186
- // Try last part of path (e.g., "title" for "content.title")
165
+ // Try last part of path (e.g., "title" for "meta.title")
187
166
  const pathParts = field.path.split('.');
188
167
  const lastPart = pathParts[pathParts.length - 1].replace('[]', '');
189
168
  const lastPartKey = Object.keys(userData).find(key => key.toLowerCase() === lastPart.toLowerCase());
@@ -192,12 +171,52 @@ function getUserDataValue(userData, field) {
192
171
  }
193
172
  return undefined;
194
173
  }
174
+ // STEP 5: Build payload from glossary fields and user data
175
+ function buildPayloadFromFields(contentType, userData, selectedScope) {
176
+ const payload = {};
177
+ if (!contentType.fields || !Array.isArray(contentType.fields)) {
178
+ return payload;
179
+ }
180
+ // Process each field in the glossary definition
181
+ contentType.fields.forEach(field => {
182
+ if (!field.path)
183
+ return;
184
+ let value = undefined;
185
+ // Skip readOnly fields - they shouldn't be set by user
186
+ if (field.readOnly === true) {
187
+ return;
188
+ }
189
+ // Get value from user data
190
+ value = getValueFromUserData(userData, field);
191
+ // If no user value, try default values
192
+ if (value === undefined && field.defaultValues && field.defaultValues.length > 0) {
193
+ const defaultValue = field.defaultValues[0];
194
+ if (defaultValue === 'now' && field.type === 'date') {
195
+ value = new Date().toISOString();
196
+ }
197
+ else {
198
+ value = defaultValue;
199
+ }
200
+ }
201
+ // Special handling for meta.scopes - always set to selected scope
202
+ if (field.path === 'meta.scopes') {
203
+ value = [selectedScope];
204
+ }
205
+ // Set the value in the payload using the field's path
206
+ if (value !== undefined) {
207
+ setNestedValue(payload, field.path, value);
208
+ }
209
+ });
210
+ return payload;
211
+ }
212
+ // Set nested value in object using dot notation path
195
213
  function setNestedValue(obj, path, value) {
196
214
  const parts = path.split('.');
197
215
  let current = obj;
198
216
  for (let i = 0; i < parts.length - 1; i++) {
199
217
  const part = parts[i];
200
218
  if (part.includes('[]')) {
219
+ // Handle array notation like "some.nested[]"
201
220
  const arrayName = part.replace('[]', '');
202
221
  if (!current[arrayName]) {
203
222
  current[arrayName] = [];
@@ -205,6 +224,7 @@ function setNestedValue(obj, path, value) {
205
224
  current = current[arrayName];
206
225
  }
207
226
  else {
227
+ // Handle regular object notation
208
228
  if (!current[part]) {
209
229
  current[part] = {};
210
230
  }
@@ -213,6 +233,7 @@ function setNestedValue(obj, path, value) {
213
233
  }
214
234
  const finalPart = parts[parts.length - 1];
215
235
  if (finalPart.includes('[]')) {
236
+ // Handle final array part like "title[]"
216
237
  const arrayName = finalPart.replace('[]', '');
217
238
  if (!current[arrayName]) {
218
239
  current[arrayName] = [];
@@ -225,43 +246,72 @@ function setNestedValue(obj, path, value) {
225
246
  }
226
247
  }
227
248
  else {
249
+ // Handle regular final part
228
250
  current[finalPart] = value;
229
251
  }
230
252
  }
231
- function getMissingRequiredFields(contentType, payload) {
232
- if (!contentType.fields || !Array.isArray(contentType.fields)) {
233
- return [];
234
- }
235
- const requiredFields = contentType.fields.filter(field => field.required === true);
236
- const missingFields = [];
237
- for (const field of requiredFields) {
238
- if (!field.path)
239
- continue;
240
- const value = getNestedValue(payload, field.path);
241
- if (value === undefined || value === null || value === '') {
242
- missingFields.push(field);
243
- }
253
+ // STEP 6: Create content via API
254
+ async function createContentViaAPI(config, payload) {
255
+ const response = await fetch(`${config.apiUrl || 'https://api.qik.dev'}/content`, {
256
+ method: 'POST',
257
+ headers: {
258
+ 'Authorization': `Bearer ${config.accessToken}`,
259
+ 'Content-Type': 'application/json',
260
+ },
261
+ body: JSON.stringify(payload)
262
+ });
263
+ if (!response.ok) {
264
+ const errorText = await response.text();
265
+ throw new Error(`HTTP ${response.status} - ${errorText}`);
244
266
  }
245
- return missingFields;
267
+ return await response.json();
246
268
  }
247
- function getNestedValue(obj, path) {
248
- const parts = path.split('.');
249
- let current = obj;
250
- for (const part of parts) {
251
- if (part.includes('[]')) {
252
- const arrayName = part.replace('[]', '');
253
- if (!current[arrayName] || !Array.isArray(current[arrayName])) {
254
- return undefined;
255
- }
256
- current = current[arrayName];
269
+ // Helper functions for creating responses
270
+ function createErrorResponse(message) {
271
+ return {
272
+ content: [{
273
+ type: "text",
274
+ text: `❌ ${message}`
275
+ }]
276
+ };
277
+ }
278
+ function createScopeSelectionPrompt(contentTitle, availableScopes) {
279
+ const scopeList = availableScopes.map((scope, i) => `${i + 1}. ${scope}`).join('\n');
280
+ return {
281
+ content: [{
282
+ type: "text",
283
+ 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(', ')}`
284
+ }]
285
+ };
286
+ }
287
+ function createFieldPrompt(contentTitle, missingFields) {
288
+ const fieldPrompts = missingFields.map(field => {
289
+ let prompt = `• **${field.title || field.path}**`;
290
+ if (field.description) {
291
+ prompt += `: ${field.description}`;
257
292
  }
258
- else {
259
- if (current === null || current === undefined || !(part in current)) {
260
- return undefined;
261
- }
262
- current = current[part];
293
+ if (field.type) {
294
+ prompt += ` (${field.type})`;
263
295
  }
264
- }
265
- return current;
296
+ if (field.options && Array.isArray(field.options)) {
297
+ const optionsList = field.options.map((opt) => opt.value || opt.title).join(', ');
298
+ prompt += ` - Options: ${optionsList}`;
299
+ }
300
+ return prompt;
301
+ }).join('\n');
302
+ return {
303
+ content: [{
304
+ type: "text",
305
+ text: `📝 Missing required fields for ${contentTitle}:\n\n${fieldPrompts}\n\nPlease call create_content again with a 'data' object containing these fields.`
306
+ }]
307
+ };
308
+ }
309
+ function createSuccessResponse(contentTitle, createdContent, scope) {
310
+ return {
311
+ content: [{
312
+ type: "text",
313
+ text: `✅ Successfully created ${contentTitle}!\n\nContent ID: ${createdContent._id || createdContent.id || 'Unknown'}\nScope: ${scope}\n\nCreated content:\n${JSON.stringify(createdContent, null, 2)}`
314
+ }]
315
+ };
266
316
  }
267
317
  //# sourceMappingURL=create.js.map
@@ -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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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@qikdev/mcp",
3
- "version": "6.6.19",
3
+ "version": "6.6.20",
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",