noverload-mcp 0.7.2 → 0.7.7

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,35 +1,183 @@
1
1
  import { z } from "zod";
2
2
  const inputSchema = z.object({
3
- originalQuery: z.string().describe("The original search query that returned few/no results"),
4
- noResultsFound: z.boolean().optional().default(false).describe("Whether the original search returned no results"),
5
- context: z.string().optional().describe("Additional context about what the user is looking for"),
6
- limit: z.number().optional().default(5).describe("Maximum number of expanded queries to return"),
3
+ originalQuery: z
4
+ .string()
5
+ .describe("The original search query that returned few/no results"),
6
+ noResultsFound: z
7
+ .boolean()
8
+ .optional()
9
+ .default(false)
10
+ .describe("Whether the original search returned no results"),
11
+ context: z
12
+ .string()
13
+ .optional()
14
+ .describe("Additional context about what the user is looking for"),
15
+ limit: z
16
+ .number()
17
+ .optional()
18
+ .default(5)
19
+ .describe("Maximum number of expanded queries to return"),
7
20
  });
8
21
  // Concept mapping for semantic expansion
9
22
  const CONCEPT_MAP = {
10
23
  // Business & Growth
11
- "storytelling": ["narrative", "pitch", "story", "presentation", "messaging", "communication", "branding"],
12
- "growth": ["scaling", "expansion", "increase", "development", "progress", "evolution", "traction"],
13
- "marketing": ["promotion", "advertising", "branding", "outreach", "campaign", "content", "social media"],
14
- "sales": ["selling", "revenue", "conversion", "closing", "pipeline", "deals", "customers"],
15
- "startup": ["founder", "entrepreneur", "venture", "bootstrap", "launch", "MVP", "product-market fit"],
24
+ storytelling: [
25
+ "narrative",
26
+ "pitch",
27
+ "story",
28
+ "presentation",
29
+ "messaging",
30
+ "communication",
31
+ "branding",
32
+ ],
33
+ growth: [
34
+ "scaling",
35
+ "expansion",
36
+ "increase",
37
+ "development",
38
+ "progress",
39
+ "evolution",
40
+ "traction",
41
+ ],
42
+ marketing: [
43
+ "promotion",
44
+ "advertising",
45
+ "branding",
46
+ "outreach",
47
+ "campaign",
48
+ "content",
49
+ "social media",
50
+ ],
51
+ sales: [
52
+ "selling",
53
+ "revenue",
54
+ "conversion",
55
+ "closing",
56
+ "pipeline",
57
+ "deals",
58
+ "customers",
59
+ ],
60
+ startup: [
61
+ "founder",
62
+ "entrepreneur",
63
+ "venture",
64
+ "bootstrap",
65
+ "launch",
66
+ "MVP",
67
+ "product-market fit",
68
+ ],
16
69
  // Technology
17
- "ai": ["artificial intelligence", "machine learning", "ML", "deep learning", "neural network", "LLM", "GPT"],
18
- "framework": ["methodology", "system", "process", "structure", "approach", "model", "pattern"],
19
- "api": ["interface", "endpoint", "integration", "webhook", "REST", "GraphQL", "service"],
20
- "database": ["DB", "SQL", "NoSQL", "data storage", "postgres", "mongodb", "schema"],
70
+ ai: [
71
+ "artificial intelligence",
72
+ "machine learning",
73
+ "ML",
74
+ "deep learning",
75
+ "neural network",
76
+ "LLM",
77
+ "GPT",
78
+ ],
79
+ framework: [
80
+ "methodology",
81
+ "system",
82
+ "process",
83
+ "structure",
84
+ "approach",
85
+ "model",
86
+ "pattern",
87
+ ],
88
+ api: [
89
+ "interface",
90
+ "endpoint",
91
+ "integration",
92
+ "webhook",
93
+ "REST",
94
+ "GraphQL",
95
+ "service",
96
+ ],
97
+ database: [
98
+ "DB",
99
+ "SQL",
100
+ "NoSQL",
101
+ "data storage",
102
+ "postgres",
103
+ "mongodb",
104
+ "schema",
105
+ ],
21
106
  // Content & Learning
22
- "tutorial": ["guide", "how-to", "walkthrough", "instruction", "lesson", "course", "training"],
23
- "example": ["case study", "instance", "sample", "demonstration", "illustration", "use case", "scenario"],
24
- "best practices": ["guidelines", "standards", "recommendations", "tips", "advice", "patterns", "conventions"],
107
+ tutorial: [
108
+ "guide",
109
+ "how-to",
110
+ "walkthrough",
111
+ "instruction",
112
+ "lesson",
113
+ "course",
114
+ "training",
115
+ ],
116
+ example: [
117
+ "case study",
118
+ "instance",
119
+ "sample",
120
+ "demonstration",
121
+ "illustration",
122
+ "use case",
123
+ "scenario",
124
+ ],
125
+ "best practices": [
126
+ "guidelines",
127
+ "standards",
128
+ "recommendations",
129
+ "tips",
130
+ "advice",
131
+ "patterns",
132
+ "conventions",
133
+ ],
25
134
  // Strategy & Planning
26
- "strategy": ["plan", "approach", "tactics", "roadmap", "blueprint", "methodology", "framework"],
27
- "metrics": ["KPIs", "analytics", "measurements", "data", "statistics", "tracking", "performance"],
28
- "optimization": ["improvement", "enhancement", "efficiency", "performance", "refinement", "tuning"],
135
+ strategy: [
136
+ "plan",
137
+ "approach",
138
+ "tactics",
139
+ "roadmap",
140
+ "blueprint",
141
+ "methodology",
142
+ "framework",
143
+ ],
144
+ metrics: [
145
+ "KPIs",
146
+ "analytics",
147
+ "measurements",
148
+ "data",
149
+ "statistics",
150
+ "tracking",
151
+ "performance",
152
+ ],
153
+ optimization: [
154
+ "improvement",
155
+ "enhancement",
156
+ "efficiency",
157
+ "performance",
158
+ "refinement",
159
+ "tuning",
160
+ ],
29
161
  // Product & Development
30
- "feature": ["functionality", "capability", "component", "module", "tool", "service", "option"],
31
- "bug": ["issue", "problem", "error", "defect", "glitch", "fault", "failure"],
32
- "design": ["UX", "UI", "interface", "layout", "architecture", "structure", "pattern"],
162
+ feature: [
163
+ "functionality",
164
+ "capability",
165
+ "component",
166
+ "module",
167
+ "tool",
168
+ "service",
169
+ "option",
170
+ ],
171
+ bug: ["issue", "problem", "error", "defect", "glitch", "fault", "failure"],
172
+ design: [
173
+ "UX",
174
+ "UI",
175
+ "interface",
176
+ "layout",
177
+ "architecture",
178
+ "structure",
179
+ "pattern",
180
+ ],
33
181
  };
34
182
  // Reverse mapping for bidirectional expansion
35
183
  const REVERSE_MAP = new Map();
@@ -49,27 +197,27 @@ function expandConcepts(query) {
49
197
  for (const word of words) {
50
198
  // Check direct mappings
51
199
  if (CONCEPT_MAP[word]) {
52
- CONCEPT_MAP[word].forEach(term => expandedTerms.add(term));
200
+ CONCEPT_MAP[word].forEach((term) => expandedTerms.add(term));
53
201
  }
54
202
  // Check reverse mappings
55
203
  if (REVERSE_MAP.has(word)) {
56
- REVERSE_MAP.get(word).forEach(term => expandedTerms.add(term));
204
+ REVERSE_MAP.get(word).forEach((term) => expandedTerms.add(term));
57
205
  }
58
206
  // Check if word is part of any concept
59
207
  for (const [concept, related] of Object.entries(CONCEPT_MAP)) {
60
208
  if (concept.includes(word) || word.includes(concept)) {
61
- related.forEach(term => expandedTerms.add(term));
209
+ related.forEach((term) => expandedTerms.add(term));
62
210
  }
63
211
  for (const rel of related) {
64
212
  if (rel.includes(word) || word.includes(rel)) {
65
213
  expandedTerms.add(concept);
66
- related.forEach(term => expandedTerms.add(term));
214
+ related.forEach((term) => expandedTerms.add(term));
67
215
  }
68
216
  }
69
217
  }
70
218
  }
71
219
  // Remove original words and return unique expansions
72
- words.forEach(w => expandedTerms.delete(w));
220
+ words.forEach((w) => expandedTerms.delete(w));
73
221
  return Array.from(expandedTerms);
74
222
  }
75
223
  function generateRelatedQueries(originalQuery, expansions) {
@@ -77,10 +225,11 @@ function generateRelatedQueries(originalQuery, expansions) {
77
225
  const words = originalQuery.toLowerCase().split(/\s+/);
78
226
  // Replace each word with its expansions
79
227
  for (let i = 0; i < words.length; i++) {
80
- for (const expansion of expansions.slice(0, 3)) { // Limit to top 3 expansions per word
228
+ for (const expansion of expansions.slice(0, 3)) {
229
+ // Limit to top 3 expansions per word
81
230
  const newWords = [...words];
82
231
  newWords[i] = expansion;
83
- queries.push(newWords.join(' '));
232
+ queries.push(newWords.join(" "));
84
233
  }
85
234
  }
86
235
  // Add queries with appended expansions
@@ -89,12 +238,35 @@ function generateRelatedQueries(originalQuery, expansions) {
89
238
  queries.push(`${expansion} ${originalQuery}`);
90
239
  }
91
240
  // Remove duplicates and original
92
- return [...new Set(queries)].filter(q => q.toLowerCase() !== originalQuery.toLowerCase());
241
+ return [...new Set(queries)].filter((q) => q.toLowerCase() !== originalQuery.toLowerCase());
93
242
  }
94
243
  export const expandSearchTool = {
95
244
  name: "noverload_expand_search",
96
245
  description: "Intelligently expand search queries to find related content when original searches return few results. Uses concept mapping and semantic expansion.",
97
- inputSchema: inputSchema.strict(),
246
+ inputSchema: {
247
+ type: "object",
248
+ properties: {
249
+ originalQuery: {
250
+ type: "string",
251
+ description: "The original search query that returned few/no results",
252
+ },
253
+ noResultsFound: {
254
+ type: "boolean",
255
+ description: "Whether the original search returned no results",
256
+ default: false,
257
+ },
258
+ context: {
259
+ type: "string",
260
+ description: "Additional context about what the user is looking for",
261
+ },
262
+ limit: {
263
+ type: "number",
264
+ description: "Maximum number of expanded queries to return",
265
+ default: 5,
266
+ },
267
+ },
268
+ required: ["originalQuery"],
269
+ },
98
270
  modifies: false,
99
271
  handler: async (client, args) => {
100
272
  const input = inputSchema.parse(args);
@@ -135,25 +307,27 @@ export const expandSearchTool = {
135
307
  }
136
308
  // Step 5: Try to understand intent and add specific suggestions
137
309
  const queryLower = input.originalQuery.toLowerCase();
138
- if (queryLower.includes("how") || queryLower.includes("guide") || queryLower.includes("tutorial")) {
310
+ if (queryLower.includes("how") ||
311
+ queryLower.includes("guide") ||
312
+ queryLower.includes("tutorial")) {
139
313
  suggestions.push({
140
314
  query: `${input.originalQuery} step by step`,
141
315
  rationale: "Looking for instructional content",
142
- confidence: "high"
316
+ confidence: "high",
143
317
  });
144
318
  }
145
319
  if (queryLower.includes("example") || queryLower.includes("case")) {
146
320
  suggestions.push({
147
321
  query: `${input.originalQuery} case study success story`,
148
322
  rationale: "Looking for real-world examples",
149
- confidence: "high"
323
+ confidence: "high",
150
324
  });
151
325
  }
152
326
  if (queryLower.includes("best") || queryLower.includes("top")) {
153
327
  suggestions.push({
154
328
  query: `${input.originalQuery} recommendations tips`,
155
329
  rationale: "Looking for curated advice",
156
- confidence: "medium"
330
+ confidence: "medium",
157
331
  });
158
332
  }
159
333
  // Format response
@@ -167,13 +341,16 @@ export const expandSearchTool = {
167
341
  // Add expanded concepts
168
342
  if (conceptExpansions.length > 0) {
169
343
  responseText += `**Related Concepts Found:**\n`;
170
- responseText += `${conceptExpansions.slice(0, 10).join(', ')}\n\n`;
344
+ responseText += `${conceptExpansions.slice(0, 10).join(", ")}\n\n`;
171
345
  }
172
346
  // Add suggested queries
173
347
  responseText += `**Suggested Searches:**\n\n`;
174
348
  for (const suggestion of suggestions.slice(0, input.limit)) {
175
- const icon = suggestion.confidence === "high" ? "šŸŽÆ" :
176
- suggestion.confidence === "medium" ? "šŸ”¹" : "ā—½";
349
+ const icon = suggestion.confidence === "high"
350
+ ? "šŸŽÆ"
351
+ : suggestion.confidence === "medium"
352
+ ? "šŸ”¹"
353
+ : "ā—½";
177
354
  responseText += `${icon} **"${suggestion.query}"**\n`;
178
355
  responseText += ` *${suggestion.rationale}*\n\n`;
179
356
  }
@@ -194,16 +371,16 @@ export const expandSearchTool = {
194
371
  content: [
195
372
  {
196
373
  type: "text",
197
- text: responseText
198
- }
374
+ text: responseText,
375
+ },
199
376
  ],
200
377
  data: {
201
378
  originalQuery: input.originalQuery,
202
379
  expandedConcepts: conceptExpansions,
203
380
  suggestedQueries: suggestions,
204
381
  totalExpansions: expandedQueries.length,
205
- strategies: strategies
206
- }
382
+ strategies: strategies,
383
+ },
207
384
  };
208
385
  }
209
386
  catch (error) {
@@ -212,12 +389,12 @@ export const expandSearchTool = {
212
389
  content: [
213
390
  {
214
391
  type: "text",
215
- text: `āŒ Error expanding search: ${error instanceof Error ? error.message : 'Unknown error'}`
216
- }
392
+ text: `āŒ Error expanding search: ${error instanceof Error ? error.message : "Unknown error"}`,
393
+ },
217
394
  ],
218
- error: true
395
+ error: true,
219
396
  };
220
397
  }
221
- }
398
+ },
222
399
  };
223
400
  //# sourceMappingURL=expand-search.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"expand-search.js","sourceRoot":"","sources":["../../../src/tools/implementations/expand-search.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"expand-search.js","sourceRoot":"","sources":["../../../src/tools/implementations/expand-search.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"extract-frameworks.d.ts","sourceRoot":"","sources":["../../../src/tools/implementations/extract-frameworks.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AA0CnC,eAAO,MAAM,qBAAqB,EAAE,IA+MnC,CAAC"}
1
+ {"version":3,"file":"extract-frameworks.d.ts","sourceRoot":"","sources":["../../../src/tools/implementations/extract-frameworks.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAsDnC,eAAO,MAAM,qBAAqB,EAAE,IA6PnC,CAAC"}
@@ -1,24 +1,65 @@
1
1
  import { z } from "zod";
2
2
  const inputSchema = z.object({
3
- query: z.string().optional().describe("Optional: specific framework type to find"),
4
- contentTypes: z.array(z.enum(["youtube", "x_twitter", "reddit", "article", "pdf"]))
3
+ query: z
4
+ .string()
5
+ .optional()
6
+ .describe("Optional: specific framework type to find"),
7
+ contentTypes: z
8
+ .array(z.enum(["youtube", "x_twitter", "reddit", "article", "pdf"]))
5
9
  .optional()
6
10
  .describe("Filter by content types"),
7
- minConfidence: z.number().min(0).max(1).optional().default(0.7)
11
+ minConfidence: z
12
+ .number()
13
+ .min(0)
14
+ .max(1)
15
+ .optional()
16
+ .default(0.7)
8
17
  .describe("Minimum confidence score for frameworks (0-1)"),
9
- limit: z.number().optional().default(20)
18
+ limit: z
19
+ .number()
20
+ .optional()
21
+ .default(20)
10
22
  .describe("Maximum number of frameworks to return"),
11
23
  });
12
24
  export const extractFrameworksTool = {
13
25
  name: "noverload_extract_frameworks",
14
26
  description: "Extract methodologies, frameworks, and step-by-step processes from your saved content. Finds structured approaches, patterns, and repeatable techniques.",
15
- inputSchema: inputSchema.strict(),
27
+ inputSchema: {
28
+ type: "object",
29
+ properties: {
30
+ query: {
31
+ type: "string",
32
+ description: "Optional: specific framework type to find",
33
+ },
34
+ contentTypes: {
35
+ type: "array",
36
+ items: {
37
+ type: "string",
38
+ enum: ["youtube", "x_twitter", "reddit", "article", "pdf"],
39
+ },
40
+ description: "Filter by content types",
41
+ },
42
+ minConfidence: {
43
+ type: "number",
44
+ minimum: 0,
45
+ maximum: 1,
46
+ default: 0.7,
47
+ description: "Minimum confidence score for frameworks (0-1)",
48
+ },
49
+ limit: {
50
+ type: "number",
51
+ default: 20,
52
+ description: "Maximum number of frameworks to return",
53
+ },
54
+ },
55
+ },
16
56
  modifies: false,
17
57
  handler: async (client, args) => {
18
58
  const input = inputSchema.parse(args);
19
59
  try {
20
60
  // First, get content that might contain frameworks
21
- const searchQuery = input.query || "framework methodology process steps guide how to tutorial";
61
+ const searchQuery = input.query ||
62
+ "framework methodology process steps guide how to tutorial";
22
63
  // Search for relevant content
23
64
  const searchResults = await client.searchContentV2({
24
65
  query: searchQuery,
@@ -31,14 +72,14 @@ export const extractFrameworksTool = {
31
72
  content: [
32
73
  {
33
74
  type: "text",
34
- text: "šŸ” No content found that might contain frameworks. Try saving content about methodologies, tutorials, or how-to guides first."
35
- }
75
+ text: "šŸ” No content found that might contain frameworks. Try saving content about methodologies, tutorials, or how-to guides first.",
76
+ },
36
77
  ],
37
78
  data: {
38
79
  frameworks: [],
39
80
  totalFound: 0,
40
- searchQuery: searchQuery
41
- }
81
+ searchQuery: searchQuery,
82
+ },
42
83
  };
43
84
  }
44
85
  // Collect all frameworks from content with ai_insights
@@ -56,8 +97,8 @@ export const extractFrameworksTool = {
56
97
  id: result.id,
57
98
  title: result.title || "Untitled",
58
99
  url: result.url,
59
- type: result.contentType
60
- }
100
+ type: result.contentType,
101
+ },
61
102
  });
62
103
  }
63
104
  }
@@ -83,15 +124,16 @@ export const extractFrameworksTool = {
83
124
  content: [
84
125
  {
85
126
  type: "text",
86
- text: extractionMessage + "\nšŸ’” Tip: Content processing will extract frameworks automatically. Try again in a few moments, or use the 'noverload_process_content' tool to trigger processing."
87
- }
127
+ text: extractionMessage +
128
+ "\nšŸ’” Tip: Content processing will extract frameworks automatically. Try again in a few moments, or use the 'noverload_process_content' tool to trigger processing.",
129
+ },
88
130
  ],
89
131
  data: {
90
132
  frameworks: [],
91
133
  totalFound: 0,
92
134
  contentNeedingExtraction: topResults.map((r) => r.id),
93
- searchQuery: searchQuery
94
- }
135
+ searchQuery: searchQuery,
136
+ },
95
137
  };
96
138
  }
97
139
  // Sort frameworks by confidence and limit
@@ -131,22 +173,30 @@ export const extractFrameworksTool = {
131
173
  if (fw.components && fw.components.length > 0) {
132
174
  responseText += `**Components:**\n`;
133
175
  for (const comp of fw.components) {
134
- const importance = comp.importance === 'critical' ? 'šŸ”“' :
135
- comp.importance === 'important' ? '🟔' : '⚪';
176
+ const importance = comp.importance === "critical"
177
+ ? "šŸ”“"
178
+ : comp.importance === "important"
179
+ ? "🟔"
180
+ : "⚪";
136
181
  responseText += `- ${importance} **${comp.name}**: ${comp.description}\n`;
137
182
  }
138
183
  responseText += `\n`;
139
184
  }
140
185
  // Add use cases
141
186
  if (fw.useCases && fw.useCases.length > 0) {
142
- responseText += `**Use Cases:** ${fw.useCases.join(', ')}\n`;
187
+ responseText += `**Use Cases:** ${fw.useCases.join(", ")}\n`;
143
188
  }
144
189
  // Add source
145
190
  if (fw.sourceContent) {
146
- const icon = fw.sourceContent.type === 'youtube' ? 'šŸ“ŗ' :
147
- fw.sourceContent.type === 'x_twitter' ? 'š•' :
148
- fw.sourceContent.type === 'reddit' ? '🟠' :
149
- fw.sourceContent.type === 'pdf' ? 'šŸ“„' : 'šŸ“–';
191
+ const icon = fw.sourceContent.type === "youtube"
192
+ ? "šŸ“ŗ"
193
+ : fw.sourceContent.type === "x_twitter"
194
+ ? "š•"
195
+ : fw.sourceContent.type === "reddit"
196
+ ? "🟠"
197
+ : fw.sourceContent.type === "pdf"
198
+ ? "šŸ“„"
199
+ : "šŸ“–";
150
200
  responseText += `*Source: ${icon} [${fw.sourceContent.title}](${fw.sourceContent.url})*\n\n`;
151
201
  }
152
202
  }
@@ -154,7 +204,7 @@ export const extractFrameworksTool = {
154
204
  // Add summary statistics
155
205
  responseText += `\n---\nšŸ“Š **Summary:**\n`;
156
206
  responseText += `- Total frameworks found: ${allFrameworks.length}\n`;
157
- responseText += `- High confidence (>90%): ${allFrameworks.filter(f => f.confidence > 0.9).length}\n`;
207
+ responseText += `- High confidence (>90%): ${allFrameworks.filter((f) => f.confidence > 0.9).length}\n`;
158
208
  responseText += `- Content sources analyzed: ${contentWithFrameworks.length}\n`;
159
209
  if (allFrameworks.length > input.limit) {
160
210
  responseText += `\n*Showing top ${input.limit} frameworks. Increase limit to see more.*`;
@@ -163,16 +213,16 @@ export const extractFrameworksTool = {
163
213
  content: [
164
214
  {
165
215
  type: "text",
166
- text: responseText
167
- }
216
+ text: responseText,
217
+ },
168
218
  ],
169
219
  data: {
170
220
  frameworks: limitedFrameworks,
171
221
  totalFound: allFrameworks.length,
172
222
  byType: Object.fromEntries(Object.entries(byType).map(([type, fws]) => [type, fws.length])),
173
223
  contentSources: contentWithFrameworks,
174
- searchQuery: searchQuery
175
- }
224
+ searchQuery: searchQuery,
225
+ },
176
226
  };
177
227
  }
178
228
  catch (error) {
@@ -181,12 +231,12 @@ export const extractFrameworksTool = {
181
231
  content: [
182
232
  {
183
233
  type: "text",
184
- text: `āŒ Error extracting frameworks: ${error instanceof Error ? error.message : 'Unknown error'}`
185
- }
234
+ text: `āŒ Error extracting frameworks: ${error instanceof Error ? error.message : "Unknown error"}`,
235
+ },
186
236
  ],
187
- error: true
237
+ error: true,
188
238
  };
189
239
  }
190
- }
240
+ },
191
241
  };
192
242
  //# sourceMappingURL=extract-frameworks.js.map