@4da/mcp-server 3.2.0 → 4.1.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 (244) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +234 -62
  3. package/dist/auth.d.ts +36 -0
  4. package/dist/auth.d.ts.map +1 -0
  5. package/dist/auth.js +82 -0
  6. package/dist/auth.js.map +1 -0
  7. package/dist/db.d.ts +100 -2
  8. package/dist/db.d.ts.map +1 -1
  9. package/dist/db.js +707 -1
  10. package/dist/db.js.map +1 -1
  11. package/dist/doctor.d.ts +15 -0
  12. package/dist/doctor.d.ts.map +1 -0
  13. package/dist/doctor.js +124 -0
  14. package/dist/doctor.js.map +1 -0
  15. package/dist/http-transport.d.ts +25 -0
  16. package/dist/http-transport.d.ts.map +1 -0
  17. package/dist/http-transport.js +143 -0
  18. package/dist/http-transport.js.map +1 -0
  19. package/dist/index.d.ts +15 -18
  20. package/dist/index.d.ts.map +1 -1
  21. package/dist/index.js +195 -250
  22. package/dist/index.js.map +1 -1
  23. package/dist/live/cache.d.ts +16 -0
  24. package/dist/live/cache.d.ts.map +1 -0
  25. package/dist/live/cache.js +61 -0
  26. package/dist/live/cache.js.map +1 -0
  27. package/dist/live/hn-fetcher.d.ts +19 -0
  28. package/dist/live/hn-fetcher.d.ts.map +1 -0
  29. package/dist/live/hn-fetcher.js +123 -0
  30. package/dist/live/hn-fetcher.js.map +1 -0
  31. package/dist/live/index.d.ts +55 -0
  32. package/dist/live/index.d.ts.map +1 -0
  33. package/dist/live/index.js +131 -0
  34. package/dist/live/index.js.map +1 -0
  35. package/dist/live/osv-scanner.d.ts +19 -0
  36. package/dist/live/osv-scanner.d.ts.map +1 -0
  37. package/dist/live/osv-scanner.js +197 -0
  38. package/dist/live/osv-scanner.js.map +1 -0
  39. package/dist/live/rate-limiter.d.ts +19 -0
  40. package/dist/live/rate-limiter.d.ts.map +1 -0
  41. package/dist/live/rate-limiter.js +52 -0
  42. package/dist/live/rate-limiter.js.map +1 -0
  43. package/dist/live/types.d.ts +89 -0
  44. package/dist/live/types.d.ts.map +1 -0
  45. package/dist/live/types.js +3 -0
  46. package/dist/live/types.js.map +1 -0
  47. package/dist/live/version-resolver.d.ts +11 -0
  48. package/dist/live/version-resolver.d.ts.map +1 -0
  49. package/dist/live/version-resolver.js +321 -0
  50. package/dist/live/version-resolver.js.map +1 -0
  51. package/dist/live-singleton.d.ts +9 -0
  52. package/dist/live-singleton.d.ts.map +1 -0
  53. package/dist/live-singleton.js +14 -0
  54. package/dist/live-singleton.js.map +1 -0
  55. package/dist/llm.d.ts +20 -2
  56. package/dist/llm.d.ts.map +1 -1
  57. package/dist/llm.js +80 -22
  58. package/dist/llm.js.map +1 -1
  59. package/dist/output-manager.d.ts.map +1 -1
  60. package/dist/output-manager.js +1 -0
  61. package/dist/output-manager.js.map +1 -1
  62. package/dist/project-scanner.d.ts +27 -0
  63. package/dist/project-scanner.d.ts.map +1 -0
  64. package/dist/project-scanner.js +366 -0
  65. package/dist/project-scanner.js.map +1 -0
  66. package/dist/schema-registry.d.ts +31 -13
  67. package/dist/schema-registry.d.ts.map +1 -1
  68. package/dist/schema-registry.js +208 -32
  69. package/dist/schema-registry.js.map +1 -1
  70. package/dist/schemas/agent-feedback-stats.json +14 -0
  71. package/dist/schemas/agent-memory.json +49 -0
  72. package/dist/schemas/agent-session-brief.json +25 -0
  73. package/dist/schemas/attention-report.json +13 -0
  74. package/dist/schemas/autophagy-status.json +13 -0
  75. package/dist/schemas/compound-advantage.json +14 -0
  76. package/dist/schemas/decision-enforcement.json +22 -0
  77. package/dist/schemas/decision-memory.json +54 -0
  78. package/dist/schemas/decision-windows.json +22 -0
  79. package/dist/schemas/delegation-score.json +18 -0
  80. package/dist/schemas/developer-dna.json +219 -0
  81. package/dist/schemas/export-context.json +17 -0
  82. package/dist/schemas/knowledge-gaps.json +14 -0
  83. package/dist/schemas/preemption-feed.json +18 -0
  84. package/dist/schemas/project-health.json +13 -0
  85. package/dist/schemas/record-agent-feedback.json +28 -0
  86. package/dist/schemas/reverse-mentions.json +13 -0
  87. package/dist/schemas/semantic-shifts.json +17 -0
  88. package/dist/schemas/signal-chains.json +19 -0
  89. package/dist/schemas/tech-radar.json +23 -0
  90. package/dist/schemas/trust-summary.json +13 -0
  91. package/dist/schemas/vulnerability-scan.json +26 -0
  92. package/dist/schemas/what-should-i-know.json +19 -0
  93. package/dist/setup.d.ts +18 -0
  94. package/dist/setup.d.ts.map +1 -0
  95. package/dist/setup.js +171 -0
  96. package/dist/setup.js.map +1 -0
  97. package/dist/tool-dispatch.d.ts +33 -0
  98. package/dist/tool-dispatch.d.ts.map +1 -0
  99. package/dist/tool-dispatch.js +87 -0
  100. package/dist/tool-dispatch.js.map +1 -0
  101. package/dist/tools/agent-feedback-stats.d.ts +30 -0
  102. package/dist/tools/agent-feedback-stats.d.ts.map +1 -0
  103. package/dist/tools/agent-feedback-stats.js +41 -0
  104. package/dist/tools/agent-feedback-stats.js.map +1 -0
  105. package/dist/tools/agent-memory.d.ts +94 -0
  106. package/dist/tools/agent-memory.d.ts.map +1 -0
  107. package/dist/tools/agent-memory.js +262 -0
  108. package/dist/tools/agent-memory.js.map +1 -0
  109. package/dist/tools/agent-session-brief.d.ts +44 -0
  110. package/dist/tools/agent-session-brief.d.ts.map +1 -0
  111. package/dist/tools/agent-session-brief.js +179 -0
  112. package/dist/tools/agent-session-brief.js.map +1 -0
  113. package/dist/tools/attention-report.d.ts +6 -5
  114. package/dist/tools/attention-report.d.ts.map +1 -1
  115. package/dist/tools/attention-report.js +1 -0
  116. package/dist/tools/attention-report.js.map +1 -1
  117. package/dist/tools/autophagy-status.d.ts +25 -0
  118. package/dist/tools/autophagy-status.d.ts.map +1 -0
  119. package/dist/tools/autophagy-status.js +56 -0
  120. package/dist/tools/autophagy-status.js.map +1 -0
  121. package/dist/tools/compound-advantage.d.ts +30 -0
  122. package/dist/tools/compound-advantage.d.ts.map +1 -0
  123. package/dist/tools/compound-advantage.js +133 -0
  124. package/dist/tools/compound-advantage.js.map +1 -0
  125. package/dist/tools/config-validator.d.ts.map +1 -1
  126. package/dist/tools/config-validator.js +31 -0
  127. package/dist/tools/config-validator.js.map +1 -1
  128. package/dist/tools/context-analysis.d.ts.map +1 -1
  129. package/dist/tools/context-analysis.js +1 -0
  130. package/dist/tools/context-analysis.js.map +1 -1
  131. package/dist/tools/daily-briefing.d.ts.map +1 -1
  132. package/dist/tools/daily-briefing.js +17 -1
  133. package/dist/tools/daily-briefing.js.map +1 -1
  134. package/dist/tools/decision-enforcement.d.ts +59 -0
  135. package/dist/tools/decision-enforcement.d.ts.map +1 -0
  136. package/dist/tools/decision-enforcement.js +185 -0
  137. package/dist/tools/decision-enforcement.js.map +1 -0
  138. package/dist/tools/decision-memory.d.ts +132 -0
  139. package/dist/tools/decision-memory.d.ts.map +1 -0
  140. package/dist/tools/decision-memory.js +345 -0
  141. package/dist/tools/decision-memory.js.map +1 -0
  142. package/dist/tools/decision-windows.d.ts +37 -0
  143. package/dist/tools/decision-windows.d.ts.map +1 -0
  144. package/dist/tools/decision-windows.js +67 -0
  145. package/dist/tools/decision-windows.js.map +1 -0
  146. package/dist/tools/delegation-score.d.ts +34 -0
  147. package/dist/tools/delegation-score.d.ts.map +1 -0
  148. package/dist/tools/delegation-score.js +251 -0
  149. package/dist/tools/delegation-score.js.map +1 -0
  150. package/dist/tools/developer-dna.d.ts +79 -0
  151. package/dist/tools/developer-dna.d.ts.map +1 -0
  152. package/dist/tools/developer-dna.js +378 -0
  153. package/dist/tools/developer-dna.js.map +1 -0
  154. package/dist/tools/explain-relevance.d.ts.map +1 -1
  155. package/dist/tools/explain-relevance.js +1 -0
  156. package/dist/tools/explain-relevance.js.map +1 -1
  157. package/dist/tools/export-context.d.ts +23 -6
  158. package/dist/tools/export-context.d.ts.map +1 -1
  159. package/dist/tools/export-context.js +58 -14
  160. package/dist/tools/export-context.js.map +1 -1
  161. package/dist/tools/get-actionable-signals.d.ts.map +1 -1
  162. package/dist/tools/get-actionable-signals.js +60 -9
  163. package/dist/tools/get-actionable-signals.js.map +1 -1
  164. package/dist/tools/get-context.d.ts.map +1 -1
  165. package/dist/tools/get-context.js +1 -0
  166. package/dist/tools/get-context.js.map +1 -1
  167. package/dist/tools/get-relevant-content.d.ts.map +1 -1
  168. package/dist/tools/get-relevant-content.js +3 -0
  169. package/dist/tools/get-relevant-content.js.map +1 -1
  170. package/dist/tools/index.d.ts +26 -16
  171. package/dist/tools/index.d.ts.map +1 -1
  172. package/dist/tools/index.js +35 -16
  173. package/dist/tools/index.js.map +1 -1
  174. package/dist/tools/knowledge-gaps.d.ts +11 -1
  175. package/dist/tools/knowledge-gaps.d.ts.map +1 -1
  176. package/dist/tools/knowledge-gaps.js +9 -3
  177. package/dist/tools/knowledge-gaps.js.map +1 -1
  178. package/dist/tools/llm-status.d.ts.map +1 -1
  179. package/dist/tools/llm-status.js +1 -0
  180. package/dist/tools/llm-status.js.map +1 -1
  181. package/dist/tools/muse-context.d.ts +195 -0
  182. package/dist/tools/muse-context.d.ts.map +1 -0
  183. package/dist/tools/muse-context.js +284 -0
  184. package/dist/tools/muse-context.js.map +1 -0
  185. package/dist/tools/preemption-feed.d.ts +55 -0
  186. package/dist/tools/preemption-feed.d.ts.map +1 -0
  187. package/dist/tools/preemption-feed.js +124 -0
  188. package/dist/tools/preemption-feed.js.map +1 -0
  189. package/dist/tools/project-health.d.ts +12 -6
  190. package/dist/tools/project-health.d.ts.map +1 -1
  191. package/dist/tools/project-health.js +49 -10
  192. package/dist/tools/project-health.js.map +1 -1
  193. package/dist/tools/record-agent-feedback.d.ts +46 -0
  194. package/dist/tools/record-agent-feedback.d.ts.map +1 -0
  195. package/dist/tools/record-agent-feedback.js +71 -0
  196. package/dist/tools/record-agent-feedback.js.map +1 -0
  197. package/dist/tools/record-feedback.d.ts.map +1 -1
  198. package/dist/tools/record-feedback.js +1 -0
  199. package/dist/tools/record-feedback.js.map +1 -1
  200. package/dist/tools/reverse-mentions.d.ts +8 -8
  201. package/dist/tools/reverse-mentions.d.ts.map +1 -1
  202. package/dist/tools/reverse-mentions.js +1 -0
  203. package/dist/tools/reverse-mentions.js.map +1 -1
  204. package/dist/tools/score-autopsy.d.ts.map +1 -1
  205. package/dist/tools/score-autopsy.js +1 -0
  206. package/dist/tools/score-autopsy.js.map +1 -1
  207. package/dist/tools/semantic-shifts.d.ts +17 -1
  208. package/dist/tools/semantic-shifts.d.ts.map +1 -1
  209. package/dist/tools/semantic-shifts.js +1 -0
  210. package/dist/tools/semantic-shifts.js.map +1 -1
  211. package/dist/tools/signal-chains.d.ts +14 -7
  212. package/dist/tools/signal-chains.d.ts.map +1 -1
  213. package/dist/tools/signal-chains.js +5 -2
  214. package/dist/tools/signal-chains.js.map +1 -1
  215. package/dist/tools/source-health.d.ts.map +1 -1
  216. package/dist/tools/source-health.js +1 -0
  217. package/dist/tools/source-health.js.map +1 -1
  218. package/dist/tools/tech-radar.d.ts +38 -0
  219. package/dist/tools/tech-radar.d.ts.map +1 -0
  220. package/dist/tools/tech-radar.js +249 -0
  221. package/dist/tools/tech-radar.js.map +1 -0
  222. package/dist/tools/topic-connections.d.ts.map +1 -1
  223. package/dist/tools/topic-connections.js +1 -0
  224. package/dist/tools/topic-connections.js.map +1 -1
  225. package/dist/tools/trend-analysis.d.ts.map +1 -1
  226. package/dist/tools/trend-analysis.js +1 -0
  227. package/dist/tools/trend-analysis.js.map +1 -1
  228. package/dist/tools/trust-summary.d.ts +38 -0
  229. package/dist/tools/trust-summary.d.ts.map +1 -0
  230. package/dist/tools/trust-summary.js +89 -0
  231. package/dist/tools/trust-summary.js.map +1 -0
  232. package/dist/tools/vulnerability-scan.d.ts +89 -0
  233. package/dist/tools/vulnerability-scan.d.ts.map +1 -0
  234. package/dist/tools/vulnerability-scan.js +127 -0
  235. package/dist/tools/vulnerability-scan.js.map +1 -0
  236. package/dist/tools/what-should-i-know.d.ts +79 -0
  237. package/dist/tools/what-should-i-know.d.ts.map +1 -0
  238. package/dist/tools/what-should-i-know.js +376 -0
  239. package/dist/tools/what-should-i-know.js.map +1 -0
  240. package/dist/types.d.ts +221 -0
  241. package/dist/types.d.ts.map +1 -1
  242. package/dist/types.js +1 -0
  243. package/dist/types.js.map +1 -1
  244. package/package.json +53 -24
@@ -1,3 +1,4 @@
1
+ // SPDX-License-Identifier: FSL-1.1-Apache-2.0
1
2
  /**
2
3
  * Schema Registry for Dynamic Context Discovery
3
4
  *
@@ -5,100 +6,248 @@
5
6
  * - Returning only one-liner summaries in list_tools
6
7
  * - Storing full schemas as MCP Resources (lazy-loaded)
7
8
  *
9
+ * Also provides category/tag metadata for tool discovery and filtering.
10
+ *
8
11
  * Full schemas available at: 4da://schema/{tool_name}
12
+ * Category manifest at: 4da://categories
9
13
  */
10
14
  /**
11
- * Slim tool registry - one-liner descriptions only
12
- * Full schemas are stored in schemas/*.json and exposed as MCP Resources
15
+ * Slim tool registry — one-liner descriptions + category/tag metadata.
16
+ * Full schemas are stored in schemas/*.json and exposed as MCP Resources.
13
17
  */
14
18
  export const TOOL_REGISTRY = {
15
19
  // Core Tools
16
20
  get_relevant_content: {
17
21
  summary: "Query filtered content by relevance, source, time",
18
22
  schemaFile: "get-relevant-content.json",
23
+ category: "core",
24
+ tags: ["content", "feed", "relevance", "filter", "query"],
19
25
  },
20
26
  get_context: {
21
27
  summary: "Get user's interests, tech stack, learned affinities",
22
28
  schemaFile: "get-context.json",
29
+ category: "core",
30
+ tags: ["context", "interests", "tech-stack", "profile"],
23
31
  },
24
32
  explain_relevance: {
25
33
  summary: "Understand why an item scored the way it did",
26
34
  schemaFile: "explain-relevance.json",
35
+ category: "core",
36
+ tags: ["relevance", "scoring", "explanation", "debug"],
27
37
  },
28
38
  record_feedback: {
29
39
  summary: "Teach 4DA what you like/dislike (click, save, dismiss)",
30
40
  schemaFile: "record-feedback.json",
41
+ category: "core",
42
+ tags: ["feedback", "preference", "learning", "interaction"],
31
43
  },
32
- // Superpower Tools
44
+ // Intelligence Tools
33
45
  score_autopsy: {
34
46
  summary: "Deep forensic analysis of relevance scores (AI-powered)",
35
47
  schemaFile: "score-autopsy.json",
48
+ category: "intelligence",
49
+ tags: ["scoring", "forensic", "analysis", "ai", "debug"],
36
50
  },
37
51
  trend_analysis: {
38
52
  summary: "Statistical patterns, anomalies, and predictions (AI-powered)",
39
53
  schemaFile: "trend-analysis.json",
54
+ category: "intelligence",
55
+ tags: ["trends", "patterns", "predictions", "ai", "statistics"],
40
56
  },
41
57
  daily_briefing: {
42
58
  summary: "Executive summary of discoveries (AI-powered)",
43
59
  schemaFile: "daily-briefing.json",
60
+ category: "intelligence",
61
+ tags: ["briefing", "summary", "daily", "ai", "digest"],
44
62
  },
45
63
  context_analysis: {
46
64
  summary: "Optimize your context for better relevance (AI-powered)",
47
65
  schemaFile: "context-analysis.json",
48
- },
49
- source_health: {
50
- summary: "Diagnose source fetching and data quality issues",
51
- schemaFile: "source-health.json",
66
+ category: "intelligence",
67
+ tags: ["context", "optimization", "relevance", "ai"],
52
68
  },
53
69
  topic_connections: {
54
70
  summary: "Build knowledge graphs from content (AI-powered)",
55
71
  schemaFile: "topic-connections.json",
72
+ category: "intelligence",
73
+ tags: ["topics", "knowledge-graph", "connections", "ai"],
74
+ },
75
+ get_actionable_signals: {
76
+ summary: "Classify content into actionable signals with priority levels",
77
+ schemaFile: "get-actionable-signals.json",
78
+ category: "intelligence",
79
+ tags: ["signals", "priority", "actionable", "classification"],
80
+ },
81
+ signal_chains: {
82
+ summary: "Get causal signal chains connecting related events over time",
83
+ schemaFile: "signal-chains.json",
84
+ category: "intelligence",
85
+ tags: ["signals", "causal", "chains", "temporal"],
86
+ },
87
+ semantic_shifts: {
88
+ summary: "Detect narrative shifts in topics you follow",
89
+ schemaFile: "semantic-shifts.json",
90
+ category: "intelligence",
91
+ tags: ["narrative", "shifts", "topics", "detection"],
92
+ },
93
+ attention_report: {
94
+ summary: "Analyze attention allocation vs codebase needs",
95
+ schemaFile: "attention-report.json",
96
+ category: "intelligence",
97
+ tags: ["attention", "allocation", "codebase", "analysis"],
98
+ },
99
+ // Diagnostic Tools
100
+ source_health: {
101
+ summary: "Diagnose source fetching and data quality issues",
102
+ schemaFile: "source-health.json",
103
+ category: "diagnostic",
104
+ tags: ["sources", "health", "fetching", "quality"],
56
105
  },
57
106
  config_validator: {
58
107
  summary: "Validate configuration and detect issues",
59
108
  schemaFile: "config-validator.json",
109
+ category: "diagnostic",
110
+ tags: ["config", "validation", "settings", "health"],
60
111
  },
61
112
  llm_status: {
62
113
  summary: "Check LLM/Ollama configuration and availability",
63
114
  schemaFile: "llm-status.json",
115
+ category: "diagnostic",
116
+ tags: ["llm", "ollama", "status", "availability"],
64
117
  },
65
- get_actionable_signals: {
66
- summary: "Classify content into actionable signals with priority levels",
67
- schemaFile: "get-actionable-signals.json",
68
- },
69
- // Innovation Feature Tools
118
+ // Knowledge & Health Tools
70
119
  export_context_packet: {
71
120
  summary: "Generate portable context packet for session handoff",
72
121
  schemaFile: "export-context.json",
122
+ category: "knowledge",
123
+ tags: ["export", "context", "handoff", "portable"],
73
124
  },
74
125
  knowledge_gaps: {
75
126
  summary: "Detect knowledge gaps in your project dependencies",
76
127
  schemaFile: "knowledge-gaps.json",
77
- },
78
- signal_chains: {
79
- summary: "Get causal signal chains connecting related events over time",
80
- schemaFile: "signal-chains.json",
81
- },
82
- semantic_shifts: {
83
- summary: "Detect narrative shifts in topics you follow",
84
- schemaFile: "semantic-shifts.json",
128
+ category: "knowledge",
129
+ tags: ["gaps", "dependencies", "knowledge", "detection"],
85
130
  },
86
131
  reverse_mentions: {
87
132
  summary: "Find where your projects are mentioned in sources",
88
133
  schemaFile: "reverse-mentions.json",
89
- },
90
- attention_report: {
91
- summary: "Analyze attention allocation vs codebase needs",
92
- schemaFile: "attention-report.json",
134
+ category: "knowledge",
135
+ tags: ["mentions", "projects", "sources", "discovery"],
93
136
  },
94
137
  project_health: {
95
138
  summary: "Project health radar for dependency freshness and security",
96
139
  schemaFile: "project-health.json",
140
+ category: "knowledge",
141
+ tags: ["project", "health", "dependencies", "security"],
142
+ },
143
+ // Decision Intelligence Tools
144
+ decision_memory: {
145
+ summary: "Manage developer decisions (record, list, check, update, supersede)",
146
+ schemaFile: "decision-memory.json",
147
+ category: "decisions",
148
+ tags: ["decisions", "memory", "record", "manage"],
149
+ },
150
+ tech_radar: {
151
+ summary: "Generate tech radar from decisions and content signals",
152
+ schemaFile: "tech-radar.json",
153
+ category: "decisions",
154
+ tags: ["tech-radar", "decisions", "signals", "adopt"],
155
+ },
156
+ check_decision_alignment: {
157
+ summary: "Check if a technology or pattern aligns with active decisions before suggesting changes",
158
+ schemaFile: "decision-enforcement.json",
159
+ category: "decisions",
160
+ tags: ["alignment", "decisions", "enforcement", "check"],
161
+ },
162
+ // Agent Autonomy Tools
163
+ agent_memory: {
164
+ summary: "Cross-agent persistent memory — store and recall across sessions and tools",
165
+ schemaFile: "agent-memory.json",
166
+ category: "agent",
167
+ tags: ["agent", "memory", "persistent", "cross-session"],
168
+ },
169
+ agent_session_brief: {
170
+ summary: "Tailored session startup context for AI agents — decisions, changes, memories",
171
+ schemaFile: "agent-session-brief.json",
172
+ category: "agent",
173
+ tags: ["agent", "session", "brief", "startup"],
174
+ },
175
+ delegation_score: {
176
+ summary: "AI-delegatability assessment — should the agent proceed or ask the human?",
177
+ schemaFile: "delegation-score.json",
178
+ category: "agent",
179
+ tags: ["agent", "delegation", "autonomy", "assessment"],
180
+ },
181
+ // Developer DNA
182
+ developer_dna: {
183
+ summary: "Export your Developer DNA — tech identity, dependencies, engagement, blind spots",
184
+ schemaFile: "developer-dna.json",
185
+ category: "identity",
186
+ tags: ["identity", "dna", "profile", "tech-stack", "export"],
187
+ },
188
+ // Intelligence Metabolism Tools
189
+ autophagy_status: {
190
+ summary: "Get intelligence metabolism status — autophagy cycles, calibration accuracy, anti-patterns",
191
+ schemaFile: "autophagy-status.json",
192
+ category: "metabolism",
193
+ tags: ["autophagy", "metabolism", "calibration", "health"],
194
+ },
195
+ decision_windows: {
196
+ summary: "View and manage decision windows — time-bounded opportunities requiring attention",
197
+ schemaFile: "decision-windows.json",
198
+ category: "metabolism",
199
+ tags: ["decisions", "windows", "time-bounded", "opportunities"],
200
+ },
201
+ compound_advantage: {
202
+ summary: "Get compound advantage score — measures intelligence leverage for decisions",
203
+ schemaFile: "compound-advantage.json",
204
+ category: "metabolism",
205
+ tags: ["compound", "advantage", "leverage", "score"],
206
+ },
207
+ // Agent Feedback Tools
208
+ record_agent_feedback: {
209
+ summary: "Record whether agent-recommended content was used, rejected, or partially used",
210
+ schemaFile: "record-agent-feedback.json",
211
+ category: "agent",
212
+ tags: ["agent", "feedback", "learning", "pasifa", "scoring"],
213
+ },
214
+ get_agent_feedback_stats: {
215
+ summary: "Get statistics on agent recommendation usage — source usefulness, top items, trends",
216
+ schemaFile: "agent-feedback-stats.json",
217
+ category: "agent",
218
+ tags: ["agent", "feedback", "statistics", "analytics", "pasifa"],
219
+ },
220
+ // Synthesis Tools
221
+ what_should_i_know: {
222
+ summary: "Pre-task intelligence briefing — advisories, decisions, signals, delegation assessment",
223
+ schemaFile: "what-should-i-know.json",
224
+ category: "agent",
225
+ tags: ["agent", "briefing", "synthesis", "pre-task", "delegation", "advisories"],
226
+ },
227
+ // Trust & Preemption Tools
228
+ trust_summary: {
229
+ summary: "Intelligence quality metrics — precision, action rate, false positives, preemption wins",
230
+ schemaFile: "trust-summary.json",
231
+ category: "intelligence",
232
+ tags: ["trust", "precision", "quality", "metrics", "reliability"],
233
+ },
234
+ preemption_feed: {
235
+ summary: "Forward-looking alerts — signal chains, dependency risks, knowledge gaps",
236
+ schemaFile: "preemption-feed.json",
237
+ category: "intelligence",
238
+ tags: ["preemption", "alerts", "risks", "dependencies", "forward-looking"],
239
+ },
240
+ // Live Intelligence Tools
241
+ vulnerability_scan: {
242
+ summary: "Scan dependencies for known CVEs via OSV.dev — zero config, multi-ecosystem",
243
+ schemaFile: "vulnerability-scan.json",
244
+ category: "knowledge",
245
+ tags: ["security", "vulnerabilities", "cve", "dependencies", "osv", "scanning"],
97
246
  },
98
247
  };
99
248
  /**
100
249
  * Get slim tool list for list_tools response
101
- * Returns minimal schema (just type: object) - full schema via resources
250
+ * Returns minimal schema (just type: object) — full schema via resources
102
251
  */
103
252
  export function getSlimToolList() {
104
253
  return Object.entries(TOOL_REGISTRY).map(([name, info]) => ({
@@ -111,23 +260,50 @@ export function getSlimToolList() {
111
260
  * Get list of schema resources for ListResources
112
261
  */
113
262
  export function getSchemaResources() {
114
- return Object.entries(TOOL_REGISTRY).map(([name, info]) => ({
263
+ return Object.entries(TOOL_REGISTRY).map(([name]) => ({
115
264
  uri: `4da://schema/${name}`,
116
265
  name: `${name} schema`,
117
266
  description: `Full JSON Schema for the ${name} tool`,
118
267
  mimeType: "application/json",
119
268
  }));
120
269
  }
121
- /**
122
- * Check if a tool exists
123
- */
270
+ /** Check if a tool exists */
124
271
  export function hasToolSchema(toolName) {
125
272
  return toolName in TOOL_REGISTRY;
126
273
  }
127
- /**
128
- * Get schema filename for a tool
129
- */
274
+ /** Get schema filename for a tool */
130
275
  export function getSchemaFilename(toolName) {
131
276
  return TOOL_REGISTRY[toolName]?.schemaFile || null;
132
277
  }
278
+ /** Get tool names grouped by category */
279
+ export function getToolsByCategory() {
280
+ const result = {};
281
+ for (const [name, entry] of Object.entries(TOOL_REGISTRY)) {
282
+ if (!result[entry.category]) {
283
+ result[entry.category] = [];
284
+ }
285
+ result[entry.category].push(name);
286
+ }
287
+ return result;
288
+ }
289
+ /** Structured category manifest for the 4da://categories resource */
290
+ export function getCategoryManifest() {
291
+ const grouped = getToolsByCategory();
292
+ const categories = {};
293
+ for (const [cat, tools] of Object.entries(grouped)) {
294
+ categories[cat] = { tools, count: tools.length };
295
+ }
296
+ return {
297
+ version: "1.0.0",
298
+ total_tools: Object.keys(TOOL_REGISTRY).length,
299
+ categories,
300
+ };
301
+ }
302
+ /** Find tools matching any of the given tags */
303
+ export function getToolsByTags(tags) {
304
+ const tagSet = new Set(tags.map((t) => t.toLowerCase()));
305
+ return Object.entries(TOOL_REGISTRY)
306
+ .filter(([, entry]) => entry.tags.some((t) => tagSet.has(t.toLowerCase())))
307
+ .map(([name]) => name);
308
+ }
133
309
  //# sourceMappingURL=schema-registry.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"schema-registry.js","sourceRoot":"","sources":["../src/schema-registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"schema-registry.js","sourceRoot":"","sources":["../src/schema-registry.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ {
2
+ "name": "get_agent_feedback_stats",
3
+ "description": "Get statistics on how agents have used 4DA recommendations.\n\nShows which sources and topics are most valuable for AI-assisted development:\n- Total recommendations: used / rejected / partially_used counts\n- By source type: which sources produce the most agent-useful content\n- Top used item IDs (most frequently recommended and accepted)\n- Recent feedback entries\n\nUse this to understand what content is actually being used by AI agents and where PASIFA scoring can be improved.",
4
+ "inputSchema": {
5
+ "type": "object",
6
+ "properties": {
7
+ "days": {
8
+ "type": "number",
9
+ "description": "Number of days to look back (default: 30, max: 365)",
10
+ "default": 30
11
+ }
12
+ }
13
+ }
14
+ }
@@ -0,0 +1,49 @@
1
+ {
2
+ "name": "agent_memory",
3
+ "description": "Cross-agent persistent memory — store and recall discoveries, decisions, context, and warnings across sessions and tools.\n\nEnables AI agents to build institutional knowledge that persists beyond individual conversations. Supports storing, recalling by topic, filtering by tags, and retrieving recent entries.",
4
+ "inputSchema": {
5
+ "type": "object",
6
+ "properties": {
7
+ "action": {
8
+ "type": "string",
9
+ "enum": ["store", "recall", "recall_by_tags", "get_recent"],
10
+ "description": "Action to perform"
11
+ },
12
+ "session_id": {
13
+ "type": "string",
14
+ "description": "Session identifier (for store)"
15
+ },
16
+ "agent_type": {
17
+ "type": "string",
18
+ "description": "Agent identifier, e.g. claude_code, cursor, windsurf (for store)"
19
+ },
20
+ "memory_type": {
21
+ "type": "string",
22
+ "enum": ["discovery", "decision", "context", "warning", "preference"],
23
+ "description": "Type of memory (for store). Default: context"
24
+ },
25
+ "content": {
26
+ "type": "string",
27
+ "description": "Memory content text (for store)"
28
+ },
29
+ "tags": {
30
+ "type": "array",
31
+ "items": { "type": "string" },
32
+ "description": "Tags for categorization and retrieval"
33
+ },
34
+ "confidence": {
35
+ "type": "number",
36
+ "description": "Confidence level 0.0-1.0 (for store)"
37
+ },
38
+ "topic": {
39
+ "type": "string",
40
+ "description": "Topic to recall memories about (for recall)"
41
+ },
42
+ "limit": {
43
+ "type": "number",
44
+ "description": "Maximum memories to return (for recall/get_recent). Default: 10"
45
+ }
46
+ },
47
+ "required": ["action"]
48
+ }
49
+ }
@@ -0,0 +1,25 @@
1
+ {
2
+ "name": "agent_session_brief",
3
+ "description": "Tailored session startup context for AI agents.\n\nProvides a comprehensive brief including active developer decisions, recent agent memories, and relevant context changes. Designed to be called at the start of each AI session for continuity.",
4
+ "inputSchema": {
5
+ "type": "object",
6
+ "properties": {
7
+ "agent_type": {
8
+ "type": "string",
9
+ "description": "Agent identifier (e.g. claude_code, cursor). Filters memories to this agent if provided."
10
+ },
11
+ "since": {
12
+ "type": "string",
13
+ "description": "ISO datetime to look back from. Default: 24 hours ago."
14
+ },
15
+ "include_decisions": {
16
+ "type": "boolean",
17
+ "description": "Include active developer decisions. Default: true."
18
+ },
19
+ "include_memories": {
20
+ "type": "boolean",
21
+ "description": "Include recent agent memories. Default: true."
22
+ }
23
+ }
24
+ }
25
+ }
@@ -0,0 +1,13 @@
1
+ {
2
+ "name": "attention_report",
3
+ "description": "Analyze attention allocation vs codebase needs.\n\nCompares where you spend reading/saving time against what your projects actually depend on. Reveals mismatches between attention and codebase reality.",
4
+ "inputSchema": {
5
+ "type": "object",
6
+ "properties": {
7
+ "period_days": {
8
+ "type": "number",
9
+ "description": "Analysis period in days. Default: 7"
10
+ }
11
+ }
12
+ }
13
+ }
@@ -0,0 +1,13 @@
1
+ {
2
+ "name": "autophagy_status",
3
+ "description": "Get intelligence metabolism status — autophagy cycle history, calibration accuracy, anti-patterns detected.\n\nReturns recent autophagy cycles, active calibration deltas, and detected anti-patterns from the intelligence metabolism system.",
4
+ "inputSchema": {
5
+ "type": "object",
6
+ "properties": {
7
+ "limit": {
8
+ "type": "number",
9
+ "description": "Maximum autophagy cycles to return. Default: 5"
10
+ }
11
+ }
12
+ }
13
+ }
@@ -0,0 +1,14 @@
1
+ {
2
+ "name": "compound_advantage",
3
+ "description": "Get compound advantage score — measures how effectively you leverage 4DA intelligence for time-sensitive decisions.\n\nTracks response rate to decision windows, average lead time before opportunities close, and calibration accuracy of the scoring engine.",
4
+ "inputSchema": {
5
+ "type": "object",
6
+ "properties": {
7
+ "period": {
8
+ "type": "string",
9
+ "enum": ["weekly", "monthly"],
10
+ "description": "Scoring period. Default: weekly"
11
+ }
12
+ }
13
+ }
14
+ }
@@ -0,0 +1,22 @@
1
+ {
2
+ "name": "check_decision_alignment",
3
+ "description": "Check if a technology or pattern aligns with active decisions before suggesting changes.\n\nPrevents AI agents from recommending technologies or patterns that contradict settled developer decisions. Returns alignment status and relevant decisions.",
4
+ "inputSchema": {
5
+ "type": "object",
6
+ "properties": {
7
+ "technology": {
8
+ "type": "string",
9
+ "description": "Technology name to check (e.g., 'postgresql', 'redis', 'graphql')"
10
+ },
11
+ "pattern": {
12
+ "type": "string",
13
+ "description": "Architecture pattern to check (e.g., 'microservices', 'event-driven')"
14
+ },
15
+ "context": {
16
+ "type": "string",
17
+ "description": "Additional context about the proposed change"
18
+ }
19
+ },
20
+ "required": ["technology"]
21
+ }
22
+ }
@@ -0,0 +1,54 @@
1
+ {
2
+ "name": "decision_memory",
3
+ "description": "Manage developer decisions — record, list, check alignment, update, or supersede.\n\nPersistent decision memory that tracks technology choices, architecture patterns, and workflow preferences. Prevents re-litigation of settled decisions across sessions.",
4
+ "inputSchema": {
5
+ "type": "object",
6
+ "properties": {
7
+ "action": {
8
+ "type": "string",
9
+ "enum": ["record", "list", "check_alignment", "update", "supersede"],
10
+ "description": "Action to perform"
11
+ },
12
+ "decision_type": {
13
+ "type": "string",
14
+ "enum": ["tech_choice", "architecture", "workflow", "pattern", "dependency"],
15
+ "description": "Type of decision (for record)"
16
+ },
17
+ "subject": {
18
+ "type": "string",
19
+ "description": "Subject of the decision (e.g., 'database', 'auth-strategy')"
20
+ },
21
+ "decision": {
22
+ "type": "string",
23
+ "description": "The decision made (for record)"
24
+ },
25
+ "rationale": {
26
+ "type": "string",
27
+ "description": "Why this decision was made (for record)"
28
+ },
29
+ "alternatives_rejected": {
30
+ "type": "array",
31
+ "items": { "type": "string" },
32
+ "description": "Alternatives that were considered and rejected"
33
+ },
34
+ "context_tags": {
35
+ "type": "array",
36
+ "items": { "type": "string" },
37
+ "description": "Tags for filtering and retrieval"
38
+ },
39
+ "confidence": {
40
+ "type": "number",
41
+ "description": "Confidence level 0.0-1.0 (for record)"
42
+ },
43
+ "id": {
44
+ "type": "number",
45
+ "description": "Decision ID (for update/supersede)"
46
+ },
47
+ "technology": {
48
+ "type": "string",
49
+ "description": "Technology to check alignment for (check_alignment action)"
50
+ }
51
+ },
52
+ "required": ["action"]
53
+ }
54
+ }
@@ -0,0 +1,22 @@
1
+ {
2
+ "name": "decision_windows",
3
+ "description": "View and manage decision windows — time-bounded opportunities detected from content intelligence.\n\nList open windows sorted by urgency, mark windows as acted on with an outcome, or close windows that are no longer relevant.",
4
+ "inputSchema": {
5
+ "type": "object",
6
+ "properties": {
7
+ "action": {
8
+ "type": "string",
9
+ "enum": ["list", "act", "close"],
10
+ "description": "Action to perform. Default: list"
11
+ },
12
+ "window_id": {
13
+ "type": "number",
14
+ "description": "Window ID (required for 'act' or 'close' actions)"
15
+ },
16
+ "outcome": {
17
+ "type": "string",
18
+ "description": "Outcome description when acting on a window"
19
+ }
20
+ }
21
+ }
22
+ }
@@ -0,0 +1,18 @@
1
+ {
2
+ "name": "delegation_score",
3
+ "description": "AI-delegatability assessment — should the agent proceed autonomously or ask the human?\n\nComputes a delegation score (0-1) for a given subject/task by analyzing the developer's familiarity, decision history, and risk profile. Higher scores mean safer to delegate.",
4
+ "inputSchema": {
5
+ "type": "object",
6
+ "properties": {
7
+ "subject": {
8
+ "type": "string",
9
+ "description": "The technology, pattern, or topic to assess for delegation"
10
+ },
11
+ "task_description": {
12
+ "type": "string",
13
+ "description": "Optional description of the task being considered for delegation"
14
+ }
15
+ },
16
+ "required": ["subject"]
17
+ }
18
+ }