@qikdev/mcp 6.6.28 → 6.6.29

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,4 +1,23 @@
1
1
  import { Tool } from "@modelcontextprotocol/sdk/types.js";
2
+ export interface ContentTypeIndex {
3
+ title: string;
4
+ plural: string;
5
+ key: string;
6
+ definesType?: string;
7
+ urls: {
8
+ documentation: {
9
+ method: string;
10
+ description: string;
11
+ url: string;
12
+ };
13
+ create: {
14
+ method: string;
15
+ description: string;
16
+ url: string;
17
+ };
18
+ [key: string]: any;
19
+ };
20
+ }
2
21
  export interface ContentTypeDefinition {
3
22
  key: string;
4
23
  title: string;
@@ -7,11 +26,33 @@ export interface ContentTypeDefinition {
7
26
  permissions?: string[];
8
27
  [key: string]: any;
9
28
  }
10
- export declare const glossaryTool: Tool;
11
- export declare function handleGetGlossary(): Promise<{
29
+ export declare const glossaryIndexTool: Tool;
30
+ export declare const glossaryDetailTool: Tool;
31
+ export declare function handleGetGlossaryIndex(): Promise<{
32
+ content: Array<{
33
+ type: string;
34
+ text: string;
35
+ }>;
36
+ }>;
37
+ export declare function handleGetContentTypeDetails(contentTypeKey: string): Promise<{
12
38
  content: Array<{
13
39
  type: string;
14
40
  text: string;
15
41
  }>;
16
42
  }>;
43
+ export declare const glossaryTool: import("zod").objectOutputType<{
44
+ name: import("zod").ZodString;
45
+ description: import("zod").ZodOptional<import("zod").ZodString>;
46
+ inputSchema: import("zod").ZodObject<{
47
+ type: import("zod").ZodLiteral<"object">;
48
+ properties: import("zod").ZodOptional<import("zod").ZodObject<{}, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{}, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{}, import("zod").ZodTypeAny, "passthrough">>>;
49
+ }, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{
50
+ type: import("zod").ZodLiteral<"object">;
51
+ properties: import("zod").ZodOptional<import("zod").ZodObject<{}, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{}, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{}, import("zod").ZodTypeAny, "passthrough">>>;
52
+ }, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{
53
+ type: import("zod").ZodLiteral<"object">;
54
+ properties: import("zod").ZodOptional<import("zod").ZodObject<{}, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{}, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{}, import("zod").ZodTypeAny, "passthrough">>>;
55
+ }, import("zod").ZodTypeAny, "passthrough">>;
56
+ }, import("zod").ZodTypeAny, "passthrough">;
57
+ export declare const handleGetGlossary: typeof handleGetGlossaryIndex;
17
58
  //# sourceMappingURL=glossary.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"glossary.d.ts","sourceRoot":"","sources":["../../../src/tools/glossary.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAM1D,MAAM,WAAW,qBAAqB;IACpC,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,GAAG,EAAE,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACpB;AAED,eAAO,MAAM,YAAY,EAAE,IAO1B,CAAC;AAEF,wBAAsB,iBAAiB,IAAI,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAAE,CAAC,CAuCrG"}
1
+ {"version":3,"file":"glossary.d.ts","sourceRoot":"","sources":["../../../src/tools/glossary.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAM1D,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,EAAE;QACJ,aAAa,EAAE;YACb,MAAM,EAAE,MAAM,CAAC;YACf,WAAW,EAAE,MAAM,CAAC;YACpB,GAAG,EAAE,MAAM,CAAC;SACb,CAAC;QACF,MAAM,EAAE;YACN,MAAM,EAAE,MAAM,CAAC;YACf,WAAW,EAAE,MAAM,CAAC;YACpB,GAAG,EAAE,MAAM,CAAC;SACb,CAAC;QACF,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;KACpB,CAAC;CACH;AAED,MAAM,WAAW,qBAAqB;IACpC,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,GAAG,EAAE,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACpB;AAGD,eAAO,MAAM,iBAAiB,EAAE,IAO/B,CAAC;AAGF,eAAO,MAAM,kBAAkB,EAAE,IAahC,CAAC;AAEF,wBAAsB,sBAAsB,IAAI,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAAE,CAAC,CAyC1G;AAED,wBAAsB,2BAA2B,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAAE,CAAC,CAmErI;AAqED,eAAO,MAAM,YAAY;;;;;;;;;;;;;2CAAoB,CAAC;AAC9C,eAAO,MAAM,iBAAiB,+BAAyB,CAAC"}
@@ -1,21 +1,36 @@
1
1
  import { ConfigManager } from "../config.js";
2
- export const glossaryTool = {
2
+ // Tool for getting the lightweight index of all content types
3
+ export const glossaryIndexTool = {
3
4
  name: "get_glossary",
4
- description: "📚 Get all available content types and their definitions",
5
+ description: "📚 Get a lightweight index of all available content types",
5
6
  inputSchema: {
6
7
  type: "object",
7
8
  properties: {},
8
9
  },
9
10
  };
10
- export async function handleGetGlossary() {
11
+ // Tool for getting detailed information about a specific content type
12
+ export const glossaryDetailTool = {
13
+ name: "get_content_type_details",
14
+ description: "🔍 Get detailed information about a specific content type including all field definitions and examples",
15
+ inputSchema: {
16
+ type: "object",
17
+ properties: {
18
+ contentTypeKey: {
19
+ type: "string",
20
+ description: "The key of the content type to get details for (e.g., 'incidentReportComment', 'article')"
21
+ }
22
+ },
23
+ required: ["contentTypeKey"]
24
+ },
25
+ };
26
+ export async function handleGetGlossaryIndex() {
11
27
  try {
12
28
  const configManager = new ConfigManager();
13
29
  const config = await configManager.loadConfig();
14
30
  if (!config) {
15
31
  throw new Error('Qik MCP server not configured. Run setup first.');
16
32
  }
17
- // TODO: Replace this with Qik SDK implementation
18
- // For now, we'll use a basic fetch approach until we understand the SDK structure
33
+ // Fetch the new lightweight index from the API
19
34
  const response = await fetch(`${config.apiUrl || 'https://api.qik.dev'}/glossary/ai`, {
20
35
  headers: {
21
36
  'Authorization': `Bearer ${config.accessToken}`,
@@ -25,11 +40,13 @@ export async function handleGetGlossary() {
25
40
  if (!response.ok) {
26
41
  throw new Error(`HTTP ${response.status}: ${response.statusText}`);
27
42
  }
28
- const glossaryData = await response.json();
43
+ const indexData = await response.json();
44
+ // Create a formatted index display
45
+ const index = createContentTypeIndex(indexData);
29
46
  return {
30
47
  content: [{
31
48
  type: "text",
32
- text: JSON.stringify(glossaryData, null, 2)
49
+ text: index
33
50
  }]
34
51
  };
35
52
  }
@@ -37,9 +54,132 @@ export async function handleGetGlossary() {
37
54
  return {
38
55
  content: [{
39
56
  type: "text",
40
- text: `Failed to fetch glossary: ${error.message}`
57
+ text: `Failed to fetch glossary index: ${error.message}`
41
58
  }]
42
59
  };
43
60
  }
44
61
  }
62
+ export async function handleGetContentTypeDetails(contentTypeKey) {
63
+ try {
64
+ const configManager = new ConfigManager();
65
+ const config = await configManager.loadConfig();
66
+ if (!config) {
67
+ throw new Error('Qik MCP server not configured. Run setup first.');
68
+ }
69
+ // First, get the index to find the content type and its documentation URL
70
+ const indexResponse = await fetch(`${config.apiUrl || 'https://api.qik.dev'}/glossary/ai`, {
71
+ headers: {
72
+ 'Authorization': `Bearer ${config.accessToken}`,
73
+ 'Content-Type': 'application/json',
74
+ },
75
+ });
76
+ if (!indexResponse.ok) {
77
+ throw new Error(`HTTP ${indexResponse.status}: ${indexResponse.statusText}`);
78
+ }
79
+ const indexData = await indexResponse.json();
80
+ // Find the specific content type
81
+ const contentTypeInfo = indexData.find(ct => ct.key === contentTypeKey);
82
+ if (!contentTypeInfo) {
83
+ return {
84
+ content: [{
85
+ type: "text",
86
+ text: `❌ Content type '${contentTypeKey}' not found. Use get_glossary to see available content types.`
87
+ }]
88
+ };
89
+ }
90
+ // Now fetch the detailed documentation from the specific endpoint
91
+ const detailResponse = await fetch(`${config.apiUrl || 'https://api.qik.dev'}${contentTypeInfo.urls.documentation.url}`, {
92
+ headers: {
93
+ 'Authorization': `Bearer ${config.accessToken}`,
94
+ 'Content-Type': 'application/json',
95
+ },
96
+ });
97
+ if (!detailResponse.ok) {
98
+ throw new Error(`HTTP ${detailResponse.status}: ${detailResponse.statusText}`);
99
+ }
100
+ const detailData = await detailResponse.json();
101
+ // Create detailed view for this specific content type
102
+ const details = createContentTypeDetails(detailData, contentTypeInfo);
103
+ return {
104
+ content: [{
105
+ type: "text",
106
+ text: details
107
+ }]
108
+ };
109
+ }
110
+ catch (error) {
111
+ return {
112
+ content: [{
113
+ type: "text",
114
+ text: `Failed to fetch content type details: ${error.message}`
115
+ }]
116
+ };
117
+ }
118
+ }
119
+ function createContentTypeIndex(indexData) {
120
+ return `# Qik Content Types Index
121
+
122
+ ## Summary
123
+ - **Total Content Types**: ${indexData.length}
124
+
125
+ ## Available Content Types
126
+
127
+ ${indexData.map(ct => `### ${ct.title} (${ct.plural})
128
+ - **Key**: \`${ct.key}\`
129
+ - **Type**: ${ct.definesType ? `Extends ${ct.definesType}` : 'Base type'}
130
+ - **Create Endpoint**: \`${ct.urls.create.url}\`
131
+ - **Get Details**: Use \`get_content_type_details\` with key \`${ct.key}\`
132
+ `).join('\n')}
133
+
134
+ ---
135
+ 💡 **Next Steps:**
136
+ - Use \`get_content_type_details\` with any content type key to see full field definitions and examples
137
+ - Use \`create_content\` with any content type key to create new content`;
138
+ }
139
+ function createContentTypeDetails(contentType, indexInfo) {
140
+ const requiredFields = contentType.fields?.filter(field => field.required) || [];
141
+ const optionalFields = contentType.fields?.filter(field => !field.required) || [];
142
+ return `# ${indexInfo.title} (${contentType.key})
143
+
144
+ ## Description
145
+ ${contentType.description || 'No description available'}
146
+
147
+ ## Type Information
148
+ - **Key**: \`${contentType.key}\`
149
+ - **Plural**: ${indexInfo.plural}
150
+ - **Base Type**: ${indexInfo.definesType || 'Base content type'}
151
+ - **Create Endpoint**: \`${indexInfo.urls.create.url}\`
152
+
153
+ ## Field Summary
154
+ - **Total Fields**: ${contentType.fields?.length || 0}
155
+ - **Required Fields**: ${requiredFields.length}
156
+ - **Optional Fields**: ${optionalFields.length}
157
+
158
+ ## Required Fields
159
+ ${requiredFields.length > 0 ? requiredFields.map(field => `### ${field.title || field.key}
160
+ - **Key**: \`${field.key}\`
161
+ - **Type**: ${field.type || 'Unknown'}
162
+ - **Description**: ${field.description || 'No description'}
163
+ ${field.validation ? `- **Validation**: ${JSON.stringify(field.validation)}` : ''}
164
+ ${field.example ? `- **Example**: ${typeof field.example === 'string' ? field.example : JSON.stringify(field.example)}` : ''}
165
+ `).join('\n') : 'None'}
166
+
167
+ ## Optional Fields
168
+ ${optionalFields.length > 0 ? optionalFields.map(field => `### ${field.title || field.key}
169
+ - **Key**: \`${field.key}\`
170
+ - **Type**: ${field.type || 'Unknown'}
171
+ - **Description**: ${field.description || 'No description'}
172
+ ${field.validation ? `- **Validation**: ${JSON.stringify(field.validation)}` : ''}
173
+ ${field.example ? `- **Example**: ${typeof field.example === 'string' ? field.example : JSON.stringify(field.example)}` : ''}
174
+ `).join('\n') : 'None'}
175
+
176
+ ${contentType.permissions ? `## Permissions
177
+ ${contentType.permissions.map(perm => `- ${perm}`).join('\n')}` : ''}
178
+
179
+ ---
180
+ 💡 **Create Content**: Use \`create_content\` with key \`${contentType.key}\` to create new content of this type.`;
181
+ }
182
+ // Legacy export for backward compatibility
183
+ export const glossaryTool = glossaryIndexTool;
184
+ export const handleGetGlossary = handleGetGlossaryIndex;
45
185
  //# sourceMappingURL=glossary.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"glossary.js","sourceRoot":"","sources":["../../../src/tools/glossary.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAc7C,MAAM,CAAC,MAAM,YAAY,GAAS;IAChC,IAAI,EAAE,cAAc;IACpB,WAAW,EAAE,0DAA0D;IACvE,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE,EAAE;KACf;CACF,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,iBAAiB;IACrC,IAAI,CAAC;QACH,MAAM,aAAa,GAAG,IAAI,aAAa,EAAE,CAAC;QAC1C,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,UAAU,EAAE,CAAC;QAEhD,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;QACrE,CAAC;QAED,iDAAiD;QACjD,kFAAkF;QAClF,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,MAAM,CAAC,MAAM,IAAI,qBAAqB,cAAc,EAAE;YACpF,OAAO,EAAE;gBACP,eAAe,EAAE,UAAU,MAAM,CAAC,WAAW,EAAE;gBAC/C,cAAc,EAAE,kBAAkB;aACnC;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,QAAQ,QAAQ,CAAC,MAAM,KAAK,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;QACrE,CAAC;QAED,MAAM,YAAY,GAA4B,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QAEpE,OAAO;YACL,OAAO,EAAE,CAAC;oBACR,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC;iBAC5C,CAAC;SACH,CAAC;IAEJ,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QACpB,OAAO;YACL,OAAO,EAAE,CAAC;oBACR,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,6BAA6B,KAAK,CAAC,OAAO,EAAE;iBACnD,CAAC;SACH,CAAC;IACJ,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"glossary.js","sourceRoot":"","sources":["../../../src/tools/glossary.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/tools/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAM1D,eAAO,MAAM,KAAK,EAAE,IAAI,EAIvB,CAAC;AAGF,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAIjD,CAAC;AAGF,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,QAAQ,GAAG,SAAS,CAEjE;AAGD,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEpD"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/tools/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAM1D,eAAO,MAAM,KAAK,EAAE,IAAI,EAKvB,CAAC;AAGF,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAKjD,CAAC;AAGF,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,QAAQ,GAAG,SAAS,CAEjE;AAGD,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEpD"}
@@ -1,15 +1,17 @@
1
- import { glossaryTool, handleGetGlossary } from "./glossary.js";
1
+ import { glossaryTool, glossaryDetailTool, handleGetGlossary, handleGetContentTypeDetails } from "./glossary.js";
2
2
  import { createContentTool, handleCreateContent } from "./create.js";
3
3
  import { getUserSessionTool, handleGetUserSession } from "./user.js";
4
4
  // Registry of all available tools
5
5
  export const tools = [
6
6
  glossaryTool,
7
+ glossaryDetailTool,
7
8
  createContentTool,
8
9
  getUserSessionTool,
9
10
  ];
10
11
  // Registry of all tool handlers
11
12
  export const toolHandlers = {
12
13
  "get_glossary": handleGetGlossary,
14
+ "get_content_type_details": handleGetContentTypeDetails,
13
15
  "create_content": handleCreateContent,
14
16
  "get_user_session": handleGetUserSession,
15
17
  };
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/tools/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AACrE,OAAO,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AAErE,kCAAkC;AAClC,MAAM,CAAC,MAAM,KAAK,GAAW;IAC3B,YAAY;IACZ,iBAAiB;IACjB,kBAAkB;CACnB,CAAC;AAEF,gCAAgC;AAChC,MAAM,CAAC,MAAM,YAAY,GAA6B;IACpD,cAAc,EAAE,iBAAiB;IACjC,gBAAgB,EAAE,mBAAmB;IACrC,kBAAkB,EAAE,oBAAoB;CACzC,CAAC;AAEF,gDAAgD;AAChD,MAAM,UAAU,cAAc,CAAC,IAAY;IACzC,OAAO,YAAY,CAAC,IAAI,CAAC,CAAC;AAC5B,CAAC;AAED,4CAA4C;AAC5C,MAAM,UAAU,cAAc,CAAC,IAAY;IACzC,OAAO,IAAI,IAAI,YAAY,CAAC;AAC9B,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/tools/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,2BAA2B,EAAE,MAAM,eAAe,CAAC;AACjH,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AACrE,OAAO,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AAErE,kCAAkC;AAClC,MAAM,CAAC,MAAM,KAAK,GAAW;IAC3B,YAAY;IACZ,kBAAkB;IAClB,iBAAiB;IACjB,kBAAkB;CACnB,CAAC;AAEF,gCAAgC;AAChC,MAAM,CAAC,MAAM,YAAY,GAA6B;IACpD,cAAc,EAAE,iBAAiB;IACjC,0BAA0B,EAAE,2BAA2B;IACvD,gBAAgB,EAAE,mBAAmB;IACrC,kBAAkB,EAAE,oBAAoB;CACzC,CAAC;AAEF,gDAAgD;AAChD,MAAM,UAAU,cAAc,CAAC,IAAY;IACzC,OAAO,YAAY,CAAC,IAAI,CAAC,CAAC;AAC5B,CAAC;AAED,4CAA4C;AAC5C,MAAM,UAAU,cAAc,CAAC,IAAY;IACzC,OAAO,IAAI,IAAI,YAAY,CAAC;AAC9B,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@qikdev/mcp",
3
- "version": "6.6.28",
3
+ "version": "6.6.29",
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",