noverload-mcp 0.6.0 → 0.7.0

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.
Files changed (125) hide show
  1. package/dist/client.d.ts +8 -0
  2. package/dist/client.d.ts.map +1 -1
  3. package/dist/client.js +77 -0
  4. package/dist/client.js.map +1 -1
  5. package/dist/llm-instructions.d.ts +87 -0
  6. package/dist/llm-instructions.d.ts.map +1 -0
  7. package/dist/llm-instructions.js +257 -0
  8. package/dist/llm-instructions.js.map +1 -0
  9. package/dist/tools/helpers/connections.d.ts +7 -0
  10. package/dist/tools/helpers/connections.d.ts.map +1 -0
  11. package/dist/tools/helpers/connections.js +85 -0
  12. package/dist/tools/helpers/connections.js.map +1 -0
  13. package/dist/tools/helpers/content-processing.d.ts +7 -0
  14. package/dist/tools/helpers/content-processing.d.ts.map +1 -0
  15. package/dist/tools/helpers/content-processing.js +136 -0
  16. package/dist/tools/helpers/content-processing.js.map +1 -0
  17. package/dist/tools/helpers/insights.d.ts +2 -0
  18. package/dist/tools/helpers/insights.d.ts.map +1 -0
  19. package/dist/tools/helpers/insights.js +62 -0
  20. package/dist/tools/helpers/insights.js.map +1 -0
  21. package/dist/tools/implementations/actions.d.ts +4 -0
  22. package/dist/tools/implementations/actions.d.ts.map +1 -0
  23. package/dist/tools/implementations/actions.js +73 -0
  24. package/dist/tools/implementations/actions.js.map +1 -0
  25. package/dist/tools/implementations/batch-get.d.ts +3 -0
  26. package/dist/tools/implementations/batch-get.d.ts.map +1 -0
  27. package/dist/tools/implementations/batch-get.js +102 -0
  28. package/dist/tools/implementations/batch-get.js.map +1 -0
  29. package/dist/tools/implementations/build-narrative.d.ts +3 -0
  30. package/dist/tools/implementations/build-narrative.d.ts.map +1 -0
  31. package/dist/tools/implementations/build-narrative.js +352 -0
  32. package/dist/tools/implementations/build-narrative.js.map +1 -0
  33. package/dist/tools/implementations/estimate-tokens.d.ts +3 -0
  34. package/dist/tools/implementations/estimate-tokens.d.ts.map +1 -0
  35. package/dist/tools/implementations/estimate-tokens.js +54 -0
  36. package/dist/tools/implementations/estimate-tokens.js.map +1 -0
  37. package/dist/tools/implementations/expand-search.d.ts +3 -0
  38. package/dist/tools/implementations/expand-search.d.ts.map +1 -0
  39. package/dist/tools/implementations/expand-search.js +223 -0
  40. package/dist/tools/implementations/expand-search.js.map +1 -0
  41. package/dist/tools/implementations/explore-topic.d.ts +3 -0
  42. package/dist/tools/implementations/explore-topic.d.ts.map +1 -0
  43. package/dist/tools/implementations/explore-topic.js +137 -0
  44. package/dist/tools/implementations/explore-topic.js.map +1 -0
  45. package/dist/tools/implementations/extract-frameworks.d.ts +3 -0
  46. package/dist/tools/implementations/extract-frameworks.d.ts.map +1 -0
  47. package/dist/tools/implementations/extract-frameworks.js +192 -0
  48. package/dist/tools/implementations/extract-frameworks.js.map +1 -0
  49. package/dist/tools/implementations/extract-insights.d.ts +3 -0
  50. package/dist/tools/implementations/extract-insights.d.ts.map +1 -0
  51. package/dist/tools/implementations/extract-insights.js +130 -0
  52. package/dist/tools/implementations/extract-insights.js.map +1 -0
  53. package/dist/tools/implementations/find-connections.d.ts +3 -0
  54. package/dist/tools/implementations/find-connections.d.ts.map +1 -0
  55. package/dist/tools/implementations/find-connections.js +106 -0
  56. package/dist/tools/implementations/find-connections.js.map +1 -0
  57. package/dist/tools/implementations/find-examples.d.ts +3 -0
  58. package/dist/tools/implementations/find-examples.d.ts.map +1 -0
  59. package/dist/tools/implementations/find-examples.js +242 -0
  60. package/dist/tools/implementations/find-examples.js.map +1 -0
  61. package/dist/tools/implementations/get-content.d.ts +3 -0
  62. package/dist/tools/implementations/get-content.d.ts.map +1 -0
  63. package/dist/tools/implementations/get-content.js +96 -0
  64. package/dist/tools/implementations/get-content.js.map +1 -0
  65. package/dist/tools/implementations/goals.d.ts +3 -0
  66. package/dist/tools/implementations/goals.d.ts.map +1 -0
  67. package/dist/tools/implementations/goals.js +22 -0
  68. package/dist/tools/implementations/goals.js.map +1 -0
  69. package/dist/tools/implementations/instructions.d.ts +3 -0
  70. package/dist/tools/implementations/instructions.d.ts.map +1 -0
  71. package/dist/tools/implementations/instructions.js +88 -0
  72. package/dist/tools/implementations/instructions.js.map +1 -0
  73. package/dist/tools/implementations/knowledge-graph.d.ts +3 -0
  74. package/dist/tools/implementations/knowledge-graph.d.ts.map +1 -0
  75. package/dist/tools/implementations/knowledge-graph.js +278 -0
  76. package/dist/tools/implementations/knowledge-graph.js.map +1 -0
  77. package/dist/tools/implementations/list-content.d.ts +3 -0
  78. package/dist/tools/implementations/list-content.d.ts.map +1 -0
  79. package/dist/tools/implementations/list-content.js +87 -0
  80. package/dist/tools/implementations/list-content.js.map +1 -0
  81. package/dist/tools/implementations/plan-query.d.ts +3 -0
  82. package/dist/tools/implementations/plan-query.d.ts.map +1 -0
  83. package/dist/tools/implementations/plan-query.js +63 -0
  84. package/dist/tools/implementations/plan-query.js.map +1 -0
  85. package/dist/tools/implementations/raw-content.d.ts +3 -0
  86. package/dist/tools/implementations/raw-content.d.ts.map +1 -0
  87. package/dist/tools/implementations/raw-content.js +208 -0
  88. package/dist/tools/implementations/raw-content.js.map +1 -0
  89. package/dist/tools/implementations/save-content.d.ts +3 -0
  90. package/dist/tools/implementations/save-content.d.ts.map +1 -0
  91. package/dist/tools/implementations/save-content.js +33 -0
  92. package/dist/tools/implementations/save-content.js.map +1 -0
  93. package/dist/tools/implementations/search.d.ts +3 -0
  94. package/dist/tools/implementations/search.d.ts.map +1 -0
  95. package/dist/tools/implementations/search.js +245 -0
  96. package/dist/tools/implementations/search.js.map +1 -0
  97. package/dist/tools/implementations/similar-content.d.ts +3 -0
  98. package/dist/tools/implementations/similar-content.d.ts.map +1 -0
  99. package/dist/tools/implementations/similar-content.js +64 -0
  100. package/dist/tools/implementations/similar-content.js.map +1 -0
  101. package/dist/tools/implementations/smart-sections.d.ts +3 -0
  102. package/dist/tools/implementations/smart-sections.d.ts.map +1 -0
  103. package/dist/tools/implementations/smart-sections.js +347 -0
  104. package/dist/tools/implementations/smart-sections.js.map +1 -0
  105. package/dist/tools/implementations/synthesize.d.ts +3 -0
  106. package/dist/tools/implementations/synthesize.d.ts.map +1 -0
  107. package/dist/tools/implementations/synthesize.js +148 -0
  108. package/dist/tools/implementations/synthesize.js.map +1 -0
  109. package/dist/tools/implementations/timeline.d.ts +3 -0
  110. package/dist/tools/implementations/timeline.d.ts.map +1 -0
  111. package/dist/tools/implementations/timeline.js +191 -0
  112. package/dist/tools/implementations/timeline.js.map +1 -0
  113. package/dist/tools/index-old.d.ts +16 -0
  114. package/dist/tools/index-old.d.ts.map +1 -0
  115. package/dist/tools/index-old.js +2176 -0
  116. package/dist/tools/index-old.js.map +1 -0
  117. package/dist/tools/index.d.ts +25 -14
  118. package/dist/tools/index.d.ts.map +1 -1
  119. package/dist/tools/index.js +57 -1079
  120. package/dist/tools/index.js.map +1 -1
  121. package/dist/tools/types.d.ts +22 -0
  122. package/dist/tools/types.d.ts.map +1 -0
  123. package/dist/tools/types.js +2 -0
  124. package/dist/tools/types.js.map +1 -0
  125. package/package.json +5 -5
@@ -0,0 +1,130 @@
1
+ import { z } from "zod";
2
+ import { extractTypedInsights } from "../helpers/insights.js";
3
+ export const extractInsightsTool = {
4
+ name: "extract_insights",
5
+ description: "Extract specific types of insights across multiple content sources. Finds patterns, contradictions, consensus, or evolution of ideas.",
6
+ inputSchema: {
7
+ type: "object",
8
+ properties: {
9
+ query: {
10
+ type: "string",
11
+ description: "What insights to extract (e.g., 'productivity tips', 'AI risks', 'investment strategies')",
12
+ },
13
+ insightType: {
14
+ type: "string",
15
+ enum: ["patterns", "contradictions", "consensus", "evolution", "actionable", "warnings"],
16
+ description: "Type of insights to extract",
17
+ default: "patterns",
18
+ },
19
+ maxSources: {
20
+ type: "number",
21
+ description: "Maximum number of sources to analyze",
22
+ default: 15,
23
+ },
24
+ minConfidence: {
25
+ type: "number",
26
+ description: "Minimum confidence score for insights (0-1)",
27
+ default: 0.7,
28
+ },
29
+ },
30
+ required: ["query"],
31
+ },
32
+ modifies: false,
33
+ handler: async (client, args) => {
34
+ const schema = z.object({
35
+ query: z.string(),
36
+ insightType: z.enum(["patterns", "contradictions", "consensus", "evolution", "actionable", "warnings"]).optional().default("patterns"),
37
+ maxSources: z.number().optional().default(15),
38
+ minConfidence: z.number().min(0).max(1).optional().default(0.7),
39
+ });
40
+ const params = schema.parse(args);
41
+ // Search for relevant content
42
+ const searchResults = await client.searchContent(params.query, {
43
+ limit: params.maxSources,
44
+ enableConceptExpansion: true,
45
+ });
46
+ if (!searchResults || searchResults.length === 0) {
47
+ return {
48
+ content: [
49
+ {
50
+ type: "text",
51
+ text: `No content found for extracting insights about: "${params.query}"`,
52
+ },
53
+ ],
54
+ data: null,
55
+ };
56
+ }
57
+ // Extract insights based on type
58
+ const insights = extractTypedInsights(searchResults, params.query, params.insightType, params.minConfidence);
59
+ let responseText = `# 💡 Insight Extraction: "${params.query}"\n`;
60
+ responseText += `**Type:** ${params.insightType} | **Sources:** ${searchResults.length} | **Min Confidence:** ${(params.minConfidence * 100).toFixed(0)}%\n\n`;
61
+ if (insights.length === 0) {
62
+ responseText += `No ${params.insightType} insights found with confidence >= ${params.minConfidence}.\n`;
63
+ responseText += `Try lowering the confidence threshold or using a different insight type.\n`;
64
+ }
65
+ else {
66
+ // Display insights by type
67
+ switch (params.insightType) {
68
+ case "patterns":
69
+ responseText += `## 🔄 Recurring Patterns\n\n`;
70
+ insights.forEach((insight, idx) => {
71
+ responseText += `### Pattern ${idx + 1}: ${insight.pattern}\n`;
72
+ responseText += `**Frequency:** Appears in ${insight.frequency}/${searchResults.length} sources\n`;
73
+ responseText += `**Confidence:** ${(insight.confidence * 100).toFixed(0)}%\n`;
74
+ responseText += `**Examples:**\n`;
75
+ insight.examples.slice(0, 3).forEach((ex) => {
76
+ responseText += `- "${ex.text}" *(${ex.source})*\n`;
77
+ });
78
+ responseText += `\n`;
79
+ });
80
+ break;
81
+ case "actionable":
82
+ responseText += `## 🎯 Actionable Insights\n\n`;
83
+ insights.forEach((insight, idx) => {
84
+ responseText += `### ${idx + 1}. ${insight.action}\n`;
85
+ responseText += `**Why:** ${insight.reasoning}\n`;
86
+ responseText += `**Priority:** ${insight.priority}\n`;
87
+ responseText += `**Evidence from:** ${insight.sources.length} sources\n`;
88
+ if (insight.steps && insight.steps.length > 0) {
89
+ responseText += `**Steps:**\n`;
90
+ insight.steps.forEach((step, i) => {
91
+ responseText += `${i + 1}. ${step}\n`;
92
+ });
93
+ }
94
+ responseText += `\n`;
95
+ });
96
+ break;
97
+ default:
98
+ responseText += `## Insights Found\n\n`;
99
+ insights.forEach((insight, idx) => {
100
+ responseText += `${idx + 1}. ${insight.text || insight.pattern || "Insight"}\n`;
101
+ if (insight.confidence) {
102
+ responseText += ` Confidence: ${(insight.confidence * 100).toFixed(0)}%\n`;
103
+ }
104
+ });
105
+ }
106
+ // Summary statistics
107
+ responseText += `\n## 📊 Extraction Summary\n`;
108
+ responseText += `- **Total Insights:** ${insights.length}\n`;
109
+ responseText += `- **Average Confidence:** ${(insights.reduce((sum, i) => sum + i.confidence, 0) / insights.length * 100).toFixed(0)}%\n`;
110
+ responseText += `- **Sources Analyzed:** ${searchResults.length}\n`;
111
+ const contributingSources = new Set(insights.flatMap((i) => i.sources || []));
112
+ responseText += `- **Contributing Sources:** ${contributingSources.size}\n`;
113
+ }
114
+ return {
115
+ content: [
116
+ {
117
+ type: "text",
118
+ text: responseText,
119
+ },
120
+ ],
121
+ data: {
122
+ query: params.query,
123
+ insightType: params.insightType,
124
+ insights,
125
+ sources: searchResults,
126
+ },
127
+ };
128
+ },
129
+ };
130
+ //# sourceMappingURL=extract-insights.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"extract-insights.js","sourceRoot":"","sources":["../../../src/tools/implementations/extract-insights.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAE9D,MAAM,CAAC,MAAM,mBAAmB,GAAS;IACvC,IAAI,EAAE,kBAAkB;IACxB,WAAW,EAAE,uIAAuI;IACpJ,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,KAAK,EAAE;gBACL,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,2FAA2F;aACzG;YACD,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,CAAC,UAAU,EAAE,gBAAgB,EAAE,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,UAAU,CAAC;gBACxF,WAAW,EAAE,6BAA6B;gBAC1C,OAAO,EAAE,UAAU;aACpB;YACD,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,sCAAsC;gBACnD,OAAO,EAAE,EAAE;aACZ;YACD,aAAa,EAAE;gBACb,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,6CAA6C;gBAC1D,OAAO,EAAE,GAAG;aACb;SACF;QACD,QAAQ,EAAE,CAAC,OAAO,CAAC;KACpB;IACD,QAAQ,EAAE,KAAK;IACf,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE;QAC9B,MAAM,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC;YACtB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;YACjB,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,gBAAgB,EAAE,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,UAAU,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC;YACtI,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;YAC7C,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC;SAChE,CAAC,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAElC,8BAA8B;QAC9B,MAAM,aAAa,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,KAAK,EAAE;YAC7D,KAAK,EAAE,MAAM,CAAC,UAAU;YACxB,sBAAsB,EAAE,IAAI;SAC7B,CAAC,CAAC;QAEH,IAAI,CAAC,aAAa,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACjD,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,oDAAoD,MAAM,CAAC,KAAK,GAAG;qBAC1E;iBACF;gBACD,IAAI,EAAE,IAAI;aACX,CAAC;QACJ,CAAC;QAED,iCAAiC;QACjC,MAAM,QAAQ,GAAG,oBAAoB,CAAC,aAAa,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,aAAa,CAAC,CAAC;QAE7G,IAAI,YAAY,GAAG,6BAA6B,MAAM,CAAC,KAAK,KAAK,CAAC;QAClE,YAAY,IAAI,aAAa,MAAM,CAAC,WAAW,mBAAmB,aAAa,CAAC,MAAM,0BAA0B,CAAC,MAAM,CAAC,aAAa,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC;QAE/J,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC1B,YAAY,IAAI,MAAM,MAAM,CAAC,WAAW,sCAAsC,MAAM,CAAC,aAAa,KAAK,CAAC;YACxG,YAAY,IAAI,4EAA4E,CAAC;QAC/F,CAAC;aAAM,CAAC;YACN,2BAA2B;YAC3B,QAAQ,MAAM,CAAC,WAAW,EAAE,CAAC;gBAC3B,KAAK,UAAU;oBACb,YAAY,IAAI,8BAA8B,CAAC;oBAC/C,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAY,EAAE,GAAW,EAAE,EAAE;wBAC7C,YAAY,IAAI,eAAe,GAAG,GAAG,CAAC,KAAK,OAAO,CAAC,OAAO,IAAI,CAAC;wBAC/D,YAAY,IAAI,6BAA6B,OAAO,CAAC,SAAS,IAAI,aAAa,CAAC,MAAM,YAAY,CAAC;wBACnG,YAAY,IAAI,mBAAmB,CAAC,OAAO,CAAC,UAAU,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC;wBAC9E,YAAY,IAAI,iBAAiB,CAAC;wBAClC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAO,EAAE,EAAE;4BAC/C,YAAY,IAAI,MAAM,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,MAAM,MAAM,CAAC;wBACtD,CAAC,CAAC,CAAC;wBACH,YAAY,IAAI,IAAI,CAAC;oBACvB,CAAC,CAAC,CAAC;oBACH,MAAM;gBAER,KAAK,YAAY;oBACf,YAAY,IAAI,+BAA+B,CAAC;oBAChD,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAY,EAAE,GAAW,EAAE,EAAE;wBAC7C,YAAY,IAAI,OAAO,GAAG,GAAG,CAAC,KAAK,OAAO,CAAC,MAAM,IAAI,CAAC;wBACtD,YAAY,IAAI,YAAY,OAAO,CAAC,SAAS,IAAI,CAAC;wBAClD,YAAY,IAAI,iBAAiB,OAAO,CAAC,QAAQ,IAAI,CAAC;wBACtD,YAAY,IAAI,sBAAsB,OAAO,CAAC,OAAO,CAAC,MAAM,YAAY,CAAC;wBACzE,IAAI,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;4BAC9C,YAAY,IAAI,cAAc,CAAC;4BAC/B,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAY,EAAE,CAAS,EAAE,EAAE;gCAChD,YAAY,IAAI,GAAG,CAAC,GAAG,CAAC,KAAK,IAAI,IAAI,CAAC;4BACxC,CAAC,CAAC,CAAC;wBACL,CAAC;wBACD,YAAY,IAAI,IAAI,CAAC;oBACvB,CAAC,CAAC,CAAC;oBACH,MAAM;gBAER;oBACE,YAAY,IAAI,uBAAuB,CAAC;oBACxC,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAY,EAAE,GAAW,EAAE,EAAE;wBAC7C,YAAY,IAAI,GAAG,GAAG,GAAG,CAAC,KAAK,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,OAAO,IAAI,SAAS,IAAI,CAAC;wBAChF,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;4BACvB,YAAY,IAAI,kBAAkB,CAAC,OAAO,CAAC,UAAU,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC;wBAC/E,CAAC;oBACH,CAAC,CAAC,CAAC;YACP,CAAC;YAED,qBAAqB;YACrB,YAAY,IAAI,8BAA8B,CAAC;YAC/C,YAAY,IAAI,yBAAyB,QAAQ,CAAC,MAAM,IAAI,CAAC;YAC7D,YAAY,IAAI,6BAA6B,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAW,EAAE,CAAM,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,GAAG,QAAQ,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC;YACvJ,YAAY,IAAI,2BAA2B,aAAa,CAAC,MAAM,IAAI,CAAC;YACpE,MAAM,mBAAmB,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,CAAC;YACnF,YAAY,IAAI,+BAA+B,mBAAmB,CAAC,IAAI,IAAI,CAAC;QAC9E,CAAC;QAED,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,YAAY;iBACnB;aACF;YACD,IAAI,EAAE;gBACJ,KAAK,EAAE,MAAM,CAAC,KAAK;gBACnB,WAAW,EAAE,MAAM,CAAC,WAAW;gBAC/B,QAAQ;gBACR,OAAO,EAAE,aAAa;aACvB;SACF,CAAC;IACJ,CAAC;CACF,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { Tool } from "../types.js";
2
+ export declare const findConnectionsTool: Tool;
3
+ //# sourceMappingURL=find-connections.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"find-connections.d.ts","sourceRoot":"","sources":["../../../src/tools/implementations/find-connections.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAGnC,eAAO,MAAM,mBAAmB,EAAE,IA+GjC,CAAC"}
@@ -0,0 +1,106 @@
1
+ import { z } from "zod";
2
+ import { analyzeConnections, groupConnectionsByType, getConnectionTypeEmoji, calculateNetworkStats } from "../helpers/connections.js";
3
+ export const findConnectionsTool = {
4
+ name: "find_connections",
5
+ description: "Discover connections and relationships between different pieces of content. Identifies causal links, contradictions, and complementary information.",
6
+ inputSchema: {
7
+ type: "object",
8
+ properties: {
9
+ contentIds: {
10
+ type: "array",
11
+ items: {
12
+ type: "string",
13
+ },
14
+ description: "Array of content IDs to find connections between",
15
+ },
16
+ connectionType: {
17
+ type: "string",
18
+ enum: ["all", "causal", "contradictory", "complementary", "sequential"],
19
+ description: "Type of connections to find",
20
+ default: "all",
21
+ },
22
+ depth: {
23
+ type: "number",
24
+ description: "How many levels deep to search for connections (1-3)",
25
+ default: 1,
26
+ },
27
+ },
28
+ required: ["contentIds"],
29
+ },
30
+ modifies: false,
31
+ handler: async (client, args) => {
32
+ const schema = z.object({
33
+ contentIds: z.array(z.string()).min(2),
34
+ connectionType: z.enum(["all", "causal", "contradictory", "complementary", "sequential"]).optional().default("all"),
35
+ depth: z.number().min(1).max(3).optional().default(1),
36
+ });
37
+ const params = schema.parse(args);
38
+ // Fetch all content items
39
+ const contents = await client.batchGetContent(params.contentIds, false);
40
+ if (!contents.results || contents.results.length < 2) {
41
+ return {
42
+ content: [
43
+ {
44
+ type: "text",
45
+ text: "Unable to find connections. Need at least 2 valid content items.",
46
+ },
47
+ ],
48
+ data: null,
49
+ };
50
+ }
51
+ // Analyze connections between content
52
+ const connections = analyzeConnections(contents.results, params.connectionType);
53
+ let responseText = `# 🔗 Content Connections Analysis\n`;
54
+ responseText += `**Analyzing:** ${contents.results.length} pieces of content\n`;
55
+ responseText += `**Connection Type:** ${params.connectionType}\n`;
56
+ responseText += `**Connections Found:** ${connections.length}\n\n`;
57
+ if (connections.length === 0) {
58
+ responseText += `No ${params.connectionType} connections found between the provided content.\n`;
59
+ responseText += `Try using connectionType='all' for broader analysis.\n`;
60
+ }
61
+ else {
62
+ // Group connections by type
63
+ const byType = groupConnectionsByType(connections);
64
+ Object.entries(byType).forEach(([type, conns]) => {
65
+ responseText += `## ${getConnectionTypeEmoji(type)} ${type} Connections (${conns.length})\n\n`;
66
+ conns.slice(0, 5).forEach((conn) => {
67
+ responseText += `### ${conn.source1.title} ↔️ ${conn.source2.title}\n`;
68
+ responseText += `**Relationship:** ${conn.relationship}\n`;
69
+ responseText += `**Strength:** ${conn.strength.toFixed(2)}\n`;
70
+ if (conn.explanation) {
71
+ responseText += `**Why:** ${conn.explanation}\n`;
72
+ }
73
+ if (conn.sharedConcepts && conn.sharedConcepts.length > 0) {
74
+ responseText += `**Shared Concepts:** ${conn.sharedConcepts.join(', ')}\n`;
75
+ }
76
+ responseText += `\n`;
77
+ });
78
+ });
79
+ // Network summary
80
+ responseText += `## 🌐 Connection Network Summary\n`;
81
+ const networkStats = calculateNetworkStats(connections, contents.results);
82
+ responseText += `- **Most Connected:** ${networkStats.mostConnected.title} (${networkStats.mostConnected.connectionCount} connections)\n`;
83
+ responseText += `- **Central Theme:** ${networkStats.centralTheme}\n`;
84
+ responseText += `- **Network Density:** ${networkStats.density}\n`;
85
+ if (params.depth > 1) {
86
+ responseText += `\n## 🔍 Extended Connections (Depth ${params.depth})\n`;
87
+ responseText += `*Searching for indirect connections through related content...*\n`;
88
+ responseText += `Use find_similar_content on highly connected items to explore further.\n`;
89
+ }
90
+ }
91
+ return {
92
+ content: [
93
+ {
94
+ type: "text",
95
+ text: responseText,
96
+ },
97
+ ],
98
+ data: {
99
+ connections,
100
+ contents: contents.results,
101
+ networkStats: connections.length > 0 ? calculateNetworkStats(connections, contents.results) : null,
102
+ },
103
+ };
104
+ },
105
+ };
106
+ //# sourceMappingURL=find-connections.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"find-connections.js","sourceRoot":"","sources":["../../../src/tools/implementations/find-connections.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { Tool } from "../types.js";
2
+ export declare const findExamplesTool: Tool;
3
+ //# sourceMappingURL=find-examples.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"find-examples.d.ts","sourceRoot":"","sources":["../../../src/tools/implementations/find-examples.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAmCnC,eAAO,MAAM,gBAAgB,EAAE,IAiQ9B,CAAC"}
@@ -0,0 +1,242 @@
1
+ import { z } from "zod";
2
+ const inputSchema = z.object({
3
+ exampleType: z.enum(["case_study", "success_story", "failure", "transformation", "implementation", "all"])
4
+ .optional()
5
+ .default("all")
6
+ .describe("Type of examples to find"),
7
+ domain: z.string().optional()
8
+ .describe("Specific domain or topic area (e.g., 'marketing', 'growth', 'product development')"),
9
+ includeMetrics: z.boolean().optional().default(true)
10
+ .describe("Include quantitative metrics and numbers"),
11
+ limit: z.number().optional().default(10)
12
+ .describe("Maximum number of examples to return"),
13
+ });
14
+ export const findExamplesTool = {
15
+ name: "noverload_find_examples",
16
+ description: "Search for specific examples, case studies, success stories, or transformations in your saved content. Great for finding proof points and real-world applications.",
17
+ inputSchema: inputSchema.strict(),
18
+ modifies: false,
19
+ handler: async (client, args) => {
20
+ const input = inputSchema.parse(args);
21
+ try {
22
+ // Build search query based on example type
23
+ let searchQuery = "";
24
+ switch (input.exampleType) {
25
+ case "case_study":
26
+ searchQuery = "case study example real world implementation results";
27
+ break;
28
+ case "success_story":
29
+ searchQuery = "success story achievement milestone reached goal win victory";
30
+ break;
31
+ case "failure":
32
+ searchQuery = "failure mistake lesson learned wrong failed error problem";
33
+ break;
34
+ case "transformation":
35
+ searchQuery = "transformation before after change transition journey from to";
36
+ break;
37
+ case "implementation":
38
+ searchQuery = "implementation built created developed launched shipped deployed";
39
+ break;
40
+ default:
41
+ searchQuery = "example case study story results implementation real world";
42
+ }
43
+ if (input.domain) {
44
+ searchQuery = `${input.domain} ${searchQuery}`;
45
+ }
46
+ // Search for content with examples
47
+ const searchResults = await client.searchContentV2({
48
+ query: searchQuery,
49
+ mode: "any",
50
+ limit: 30, // Get more to filter through
51
+ });
52
+ if (!searchResults.results || searchResults.results.length === 0) {
53
+ return {
54
+ content: [
55
+ {
56
+ type: "text",
57
+ text: `🔍 No content found with ${input.exampleType === 'all' ? 'examples' : input.exampleType.replace('_', ' ')}. Try saving content with real-world case studies and stories.`
58
+ }
59
+ ],
60
+ data: {
61
+ examples: [],
62
+ totalFound: 0,
63
+ searchQuery: searchQuery
64
+ }
65
+ };
66
+ }
67
+ // Extract examples from content
68
+ const allExamples = [];
69
+ for (const result of searchResults.results) {
70
+ // Check if content has extracted examples in ai_insights
71
+ if (result.aiInsights?.extracted_examples) {
72
+ for (const ex of result.aiInsights.extracted_examples) {
73
+ // Filter by type if specified
74
+ if (input.exampleType !== "all" && ex.type !== input.exampleType) {
75
+ continue;
76
+ }
77
+ allExamples.push({
78
+ type: ex.type || input.exampleType,
79
+ title: ex.title || ex.description.substring(0, 50),
80
+ description: ex.description,
81
+ context: ex.context || "",
82
+ metrics: ex.key_numbers ? Object.entries(ex.key_numbers).map(([k, v]) => ({
83
+ metric: k,
84
+ value: String(v),
85
+ timeframe: ex.timeframe
86
+ })) : undefined,
87
+ lessons: ex.lessons || [],
88
+ sourceContent: {
89
+ id: result.id,
90
+ title: result.title || "Untitled",
91
+ url: result.url,
92
+ type: result.contentType
93
+ },
94
+ relevanceScore: result.relevance
95
+ });
96
+ }
97
+ }
98
+ // Also look for examples in the summary or key insights
99
+ if (result.summary && typeof result.summary === 'object') {
100
+ const summaryObj = result.summary;
101
+ // Check for case studies or examples mentioned
102
+ if (summaryObj.important_quotes) {
103
+ for (const quote of summaryObj.important_quotes) {
104
+ // Look for patterns indicating examples
105
+ if (quote.match(/\$[\d,]+|[\d]+%|[\d]+x|grew|increased|achieved/i)) {
106
+ allExamples.push({
107
+ type: "success_story",
108
+ title: "Success Metric",
109
+ description: quote,
110
+ context: "Found in content quotes",
111
+ sourceContent: {
112
+ id: result.id,
113
+ title: result.title || "Untitled",
114
+ url: result.url,
115
+ type: result.contentType
116
+ },
117
+ relevanceScore: result.relevance
118
+ });
119
+ }
120
+ }
121
+ }
122
+ }
123
+ }
124
+ // Sort by relevance and limit
125
+ allExamples.sort((a, b) => (b.relevanceScore || 0) - (a.relevanceScore || 0));
126
+ const limitedExamples = allExamples.slice(0, input.limit);
127
+ // Format response
128
+ let responseText = `📚 **Found ${allExamples.length} examples**\n\n`;
129
+ if (input.exampleType !== "all") {
130
+ responseText += `Type: ${input.exampleType.replace('_', ' ')}\n`;
131
+ }
132
+ if (input.domain) {
133
+ responseText += `Domain: ${input.domain}\n`;
134
+ }
135
+ responseText += `\n`;
136
+ // Group examples by type
137
+ const byType = limitedExamples.reduce((acc, ex) => {
138
+ if (!acc[ex.type])
139
+ acc[ex.type] = [];
140
+ acc[ex.type].push(ex);
141
+ return acc;
142
+ }, {});
143
+ for (const [type, examples] of Object.entries(byType)) {
144
+ const typeEmoji = type === 'case_study' ? '📊' :
145
+ type === 'success_story' ? '🎯' :
146
+ type === 'failure' ? '⚠️' :
147
+ type === 'transformation' ? '🔄' :
148
+ type === 'implementation' ? '🛠️' : '📌';
149
+ responseText += `\n## ${typeEmoji} ${type.replace('_', ' ').toUpperCase()}\n\n`;
150
+ for (const ex of examples) {
151
+ responseText += `### ${ex.title}\n`;
152
+ responseText += `${ex.description}\n\n`;
153
+ // Add metrics if available and requested
154
+ if (input.includeMetrics && ex.metrics && ex.metrics.length > 0) {
155
+ responseText += `**📈 Metrics:**\n`;
156
+ for (const metric of ex.metrics) {
157
+ responseText += `- **${metric.metric}**: ${metric.value}`;
158
+ if (metric.timeframe) {
159
+ responseText += ` (${metric.timeframe})`;
160
+ }
161
+ responseText += `\n`;
162
+ }
163
+ responseText += `\n`;
164
+ }
165
+ // Add lessons if available
166
+ if (ex.lessons && ex.lessons.length > 0) {
167
+ responseText += `**💡 Key Lessons:**\n`;
168
+ for (const lesson of ex.lessons) {
169
+ responseText += `- ${lesson}\n`;
170
+ }
171
+ responseText += `\n`;
172
+ }
173
+ // Add source
174
+ const icon = ex.sourceContent.type === 'youtube' ? '📺' :
175
+ ex.sourceContent.type === 'x_twitter' ? '𝕏' :
176
+ ex.sourceContent.type === 'reddit' ? '🟠' :
177
+ ex.sourceContent.type === 'pdf' ? '📄' : '📖';
178
+ responseText += `*Source: ${icon} [${ex.sourceContent.title}](${ex.sourceContent.url})*\n\n`;
179
+ }
180
+ }
181
+ // Count common themes
182
+ const themes = {};
183
+ // Add patterns observed
184
+ if (allExamples.length > 0) {
185
+ responseText += `\n---\n🔍 **Patterns Observed:**\n`;
186
+ for (const ex of allExamples) {
187
+ // Extract common words/themes from descriptions
188
+ const words = ex.description.toLowerCase().match(/\b(growth|revenue|users|customers|traffic|conversion|engagement|retention)\b/g);
189
+ if (words) {
190
+ for (const word of words) {
191
+ themes[word] = (themes[word] || 0) + 1;
192
+ }
193
+ }
194
+ }
195
+ // Show top themes
196
+ const topThemes = Object.entries(themes)
197
+ .sort(([, a], [, b]) => b - a)
198
+ .slice(0, 5);
199
+ if (topThemes.length > 0) {
200
+ responseText += `**Common themes:** ${topThemes.map(([theme, count]) => `${theme} (${count})`).join(', ')}\n`;
201
+ }
202
+ // Summary stats
203
+ responseText += `\n**Summary:**\n`;
204
+ responseText += `- Total examples found: ${allExamples.length}\n`;
205
+ responseText += `- Content sources: ${new Set(allExamples.map(e => e.sourceContent.id)).size}\n`;
206
+ if (allExamples.length > input.limit) {
207
+ responseText += `\n*Showing top ${input.limit} examples. Increase limit to see more.*`;
208
+ }
209
+ }
210
+ return {
211
+ content: [
212
+ {
213
+ type: "text",
214
+ text: responseText
215
+ }
216
+ ],
217
+ data: {
218
+ examples: limitedExamples,
219
+ totalFound: allExamples.length,
220
+ byType: Object.fromEntries(Object.entries(byType).map(([type, exs]) => [type, exs.length])),
221
+ searchQuery: searchQuery,
222
+ themes: Object.entries(themes || {})
223
+ .sort(([, a], [, b]) => b - a)
224
+ .slice(0, 10)
225
+ }
226
+ };
227
+ }
228
+ catch (error) {
229
+ console.error("Find examples error:", error);
230
+ return {
231
+ content: [
232
+ {
233
+ type: "text",
234
+ text: `❌ Error finding examples: ${error instanceof Error ? error.message : 'Unknown error'}`
235
+ }
236
+ ],
237
+ error: true
238
+ };
239
+ }
240
+ }
241
+ };
242
+ //# sourceMappingURL=find-examples.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"find-examples.js","sourceRoot":"","sources":["../../../src/tools/implementations/find-examples.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { Tool } from "../types.js";
2
+ export declare const getContentDetailsTool: Tool;
3
+ //# sourceMappingURL=get-content.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-content.d.ts","sourceRoot":"","sources":["../../../src/tools/implementations/get-content.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAEnC,eAAO,MAAM,qBAAqB,EAAE,IAwGnC,CAAC"}
@@ -0,0 +1,96 @@
1
+ import { z } from "zod";
2
+ export const getContentDetailsTool = {
3
+ name: "get_content_details",
4
+ description: "Get complete details about a specific saved content item including full transcript/article text, AI-generated summary, key insights, and all metadata",
5
+ inputSchema: {
6
+ type: "object",
7
+ properties: {
8
+ contentId: {
9
+ type: "string",
10
+ description: "The ID of the content to retrieve",
11
+ },
12
+ },
13
+ required: ["contentId"],
14
+ },
15
+ modifies: false,
16
+ handler: async (client, args) => {
17
+ const schema = z.object({
18
+ contentId: z.string(),
19
+ });
20
+ const { contentId } = schema.parse(args);
21
+ const content = await client.getContent(contentId);
22
+ // Build comprehensive response with all details
23
+ let responseText = `# Content Details: ${content.title || 'Untitled'}\n\n`;
24
+ responseText += `**ID:** ${content.id}\n`;
25
+ responseText += `**Type:** ${content.contentType}\n`;
26
+ responseText += `**Status:** ${content.status}\n`;
27
+ responseText += `**URL:** ${content.url}\n`;
28
+ responseText += `**Saved:** ${new Date(content.createdAt).toLocaleDateString()}\n`;
29
+ // Show content size information
30
+ if (content.tokenCount) {
31
+ responseText += `**Full Content Size:** ${content.tokenCount.toLocaleString()} tokens`;
32
+ if (content.tokenCount > 50000) {
33
+ responseText += ` 🚨 EXTREMELY LARGE`;
34
+ }
35
+ else if (content.tokenCount > 10000) {
36
+ responseText += ` ⚠️ LARGE`;
37
+ }
38
+ responseText += '\n';
39
+ }
40
+ if (content.tags && content.tags.length > 0) {
41
+ responseText += `**Tags:** ${content.tags.join(', ')}\n`;
42
+ }
43
+ responseText += '\n## Summary & Insights\n';
44
+ if (content.summary) {
45
+ const summaryObj = typeof content.summary === 'string'
46
+ ? { text: content.summary }
47
+ : content.summary;
48
+ if (summaryObj.one_sentence) {
49
+ responseText += `**One-line Summary:** ${summaryObj.one_sentence}\n\n`;
50
+ }
51
+ if (summaryObj.key_insights && Array.isArray(summaryObj.key_insights)) {
52
+ responseText += `**Key Insights:**\n`;
53
+ summaryObj.key_insights.forEach((insight, idx) => {
54
+ responseText += `${idx + 1}. ${insight}\n`;
55
+ });
56
+ responseText += '\n';
57
+ }
58
+ if (summaryObj.main_topics && Array.isArray(summaryObj.main_topics)) {
59
+ responseText += `**Main Topics:** ${summaryObj.main_topics.join(', ')}\n\n`;
60
+ }
61
+ if (summaryObj.actionable_takeaways && Array.isArray(summaryObj.actionable_takeaways)) {
62
+ responseText += `**Actionable Takeaways:**\n`;
63
+ summaryObj.actionable_takeaways.forEach((takeaway, idx) => {
64
+ responseText += `${idx + 1}. ${takeaway}\n`;
65
+ });
66
+ responseText += '\n';
67
+ }
68
+ }
69
+ // Include full text content info and preview
70
+ if (content.rawText) {
71
+ const wordCount = content.rawText.split(/\s+/).length;
72
+ responseText += `## Full Content\n`;
73
+ responseText += `**Word Count:** ${wordCount.toLocaleString()} words\n`;
74
+ // Show a reasonable preview (500 chars is about 100 tokens)
75
+ responseText += `**Preview (first 500 chars):**\n`;
76
+ responseText += `${content.rawText.slice(0, 500)}...\n\n`;
77
+ if (content.tokenCount && content.tokenCount > 10000) {
78
+ responseText += `⚠️ **Note:** The complete ${content.contentType} content (${wordCount.toLocaleString()} words, ~${content.tokenCount.toLocaleString()} tokens) is available in the data field.\n`;
79
+ responseText += `This is a large amount of content that will consume significant context if fully processed.\n`;
80
+ }
81
+ else {
82
+ responseText += `*Note: Complete content is available in the data field for analysis.*\n`;
83
+ }
84
+ }
85
+ return {
86
+ content: [
87
+ {
88
+ type: "text",
89
+ text: responseText,
90
+ },
91
+ ],
92
+ data: content, // Full content including complete rawText
93
+ };
94
+ },
95
+ };
96
+ //# sourceMappingURL=get-content.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-content.js","sourceRoot":"","sources":["../../../src/tools/implementations/get-content.ts"],"names":[],"mappings":"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"}