learngraph 0.5.0 → 0.8.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 (289) hide show
  1. package/dist/cjs/api/routes/analytics.js +288 -0
  2. package/dist/cjs/api/routes/analytics.js.map +1 -0
  3. package/dist/cjs/api/routes/assessments.js +269 -0
  4. package/dist/cjs/api/routes/assessments.js.map +1 -0
  5. package/dist/cjs/api/routes/curriculum.js +345 -0
  6. package/dist/cjs/api/routes/curriculum.js.map +1 -0
  7. package/dist/cjs/api/routes/edges.js +162 -0
  8. package/dist/cjs/api/routes/edges.js.map +1 -0
  9. package/dist/cjs/api/routes/explore.js +224 -0
  10. package/dist/cjs/api/routes/explore.js.map +1 -0
  11. package/dist/cjs/api/routes/learners.js +324 -0
  12. package/dist/cjs/api/routes/learners.js.map +1 -0
  13. package/dist/cjs/api/routes/me.js +404 -0
  14. package/dist/cjs/api/routes/me.js.map +1 -0
  15. package/dist/cjs/api/routes/skills.js +319 -0
  16. package/dist/cjs/api/routes/skills.js.map +1 -0
  17. package/dist/cjs/api/server.js +185 -0
  18. package/dist/cjs/api/server.js.map +1 -0
  19. package/dist/cjs/api/types.js +10 -0
  20. package/dist/cjs/api/types.js.map +1 -0
  21. package/dist/cjs/assessment/adaptive.js +390 -0
  22. package/dist/cjs/assessment/adaptive.js.map +1 -0
  23. package/dist/cjs/assessment/bkt.js +362 -0
  24. package/dist/cjs/assessment/bkt.js.map +1 -0
  25. package/dist/cjs/assessment/index.js +54 -0
  26. package/dist/cjs/assessment/index.js.map +1 -0
  27. package/dist/cjs/assessment/irt.js +420 -0
  28. package/dist/cjs/assessment/irt.js.map +1 -0
  29. package/dist/cjs/assessment/mastery-engine.js +411 -0
  30. package/dist/cjs/assessment/mastery-engine.js.map +1 -0
  31. package/dist/cjs/components/LearningPathView.js +320 -0
  32. package/dist/cjs/components/LearningPathView.js.map +1 -0
  33. package/dist/cjs/components/ProgressDashboard.js +308 -0
  34. package/dist/cjs/components/ProgressDashboard.js.map +1 -0
  35. package/dist/cjs/components/SkillCard.js +264 -0
  36. package/dist/cjs/components/SkillCard.js.map +1 -0
  37. package/dist/cjs/components/SkillExplorer.js +401 -0
  38. package/dist/cjs/components/SkillExplorer.js.map +1 -0
  39. package/dist/cjs/components/SkillGraph.js +636 -0
  40. package/dist/cjs/components/SkillGraph.js.map +1 -0
  41. package/dist/cjs/components/hooks.js +520 -0
  42. package/dist/cjs/components/hooks.js.map +1 -0
  43. package/dist/cjs/components/index.js +77 -0
  44. package/dist/cjs/components/index.js.map +1 -0
  45. package/dist/cjs/components/types.js +34 -0
  46. package/dist/cjs/components/types.js.map +1 -0
  47. package/dist/cjs/embeddings/base.js +104 -0
  48. package/dist/cjs/embeddings/base.js.map +1 -0
  49. package/dist/cjs/embeddings/index.js +91 -0
  50. package/dist/cjs/embeddings/index.js.map +1 -0
  51. package/dist/cjs/embeddings/local.js +224 -0
  52. package/dist/cjs/embeddings/local.js.map +1 -0
  53. package/dist/cjs/embeddings/openai.js +169 -0
  54. package/dist/cjs/embeddings/openai.js.map +1 -0
  55. package/dist/cjs/index.js +59 -1
  56. package/dist/cjs/index.js.map +1 -1
  57. package/dist/cjs/llm/adapters/anthropic.js +91 -3
  58. package/dist/cjs/llm/adapters/anthropic.js.map +1 -1
  59. package/dist/cjs/llm/adapters/gemini.js +101 -8
  60. package/dist/cjs/llm/adapters/gemini.js.map +1 -1
  61. package/dist/cjs/llm/adapters/index.js +42 -1
  62. package/dist/cjs/llm/adapters/index.js.map +1 -1
  63. package/dist/cjs/llm/adapters/ollama.js +120 -3
  64. package/dist/cjs/llm/adapters/ollama.js.map +1 -1
  65. package/dist/cjs/llm/adapters/openai.js +108 -2
  66. package/dist/cjs/llm/adapters/openai.js.map +1 -1
  67. package/dist/cjs/llm/graphrag-orchestrator.js +1004 -0
  68. package/dist/cjs/llm/graphrag-orchestrator.js.map +1 -0
  69. package/dist/cjs/llm/index.js +7 -1
  70. package/dist/cjs/llm/index.js.map +1 -1
  71. package/dist/cjs/mcp/cli.js +302 -0
  72. package/dist/cjs/mcp/cli.js.map +1 -0
  73. package/dist/cjs/mcp/index.js +79 -0
  74. package/dist/cjs/mcp/index.js.map +1 -0
  75. package/dist/cjs/mcp/prompts.js +425 -0
  76. package/dist/cjs/mcp/prompts.js.map +1 -0
  77. package/dist/cjs/mcp/resources.js +371 -0
  78. package/dist/cjs/mcp/resources.js.map +1 -0
  79. package/dist/cjs/mcp/server.js +410 -0
  80. package/dist/cjs/mcp/server.js.map +1 -0
  81. package/dist/cjs/mcp/tools.js +612 -0
  82. package/dist/cjs/mcp/tools.js.map +1 -0
  83. package/dist/cjs/mcp/types.js +10 -0
  84. package/dist/cjs/mcp/types.js.map +1 -0
  85. package/dist/cjs/storage/index.js +15 -1
  86. package/dist/cjs/storage/index.js.map +1 -1
  87. package/dist/cjs/storage/neo4j-graphrag.js +596 -0
  88. package/dist/cjs/storage/neo4j-graphrag.js.map +1 -0
  89. package/dist/cjs/types/assessment.js +46 -0
  90. package/dist/cjs/types/assessment.js.map +1 -0
  91. package/dist/cjs/types/bloom.js +12 -1
  92. package/dist/cjs/types/bloom.js.map +1 -1
  93. package/dist/cjs/types/graphrag.js +11 -0
  94. package/dist/cjs/types/graphrag.js.map +1 -0
  95. package/dist/cjs/types/index.js +7 -1
  96. package/dist/cjs/types/index.js.map +1 -1
  97. package/dist/esm/api/routes/analytics.js +285 -0
  98. package/dist/esm/api/routes/analytics.js.map +1 -0
  99. package/dist/esm/api/routes/assessments.js +266 -0
  100. package/dist/esm/api/routes/assessments.js.map +1 -0
  101. package/dist/esm/api/routes/curriculum.js +342 -0
  102. package/dist/esm/api/routes/curriculum.js.map +1 -0
  103. package/dist/esm/api/routes/edges.js +159 -0
  104. package/dist/esm/api/routes/edges.js.map +1 -0
  105. package/dist/esm/api/routes/explore.js +221 -0
  106. package/dist/esm/api/routes/explore.js.map +1 -0
  107. package/dist/esm/api/routes/learners.js +321 -0
  108. package/dist/esm/api/routes/learners.js.map +1 -0
  109. package/dist/esm/api/routes/me.js +401 -0
  110. package/dist/esm/api/routes/me.js.map +1 -0
  111. package/dist/esm/api/routes/skills.js +316 -0
  112. package/dist/esm/api/routes/skills.js.map +1 -0
  113. package/dist/esm/api/server.js +179 -0
  114. package/dist/esm/api/server.js.map +1 -0
  115. package/dist/esm/api/types.js +9 -0
  116. package/dist/esm/api/types.js.map +1 -0
  117. package/dist/esm/assessment/adaptive.js +384 -0
  118. package/dist/esm/assessment/adaptive.js.map +1 -0
  119. package/dist/esm/assessment/bkt.js +354 -0
  120. package/dist/esm/assessment/bkt.js.map +1 -0
  121. package/dist/esm/assessment/index.js +21 -0
  122. package/dist/esm/assessment/index.js.map +1 -0
  123. package/dist/esm/assessment/irt.js +406 -0
  124. package/dist/esm/assessment/irt.js.map +1 -0
  125. package/dist/esm/assessment/mastery-engine.js +406 -0
  126. package/dist/esm/assessment/mastery-engine.js.map +1 -0
  127. package/dist/esm/components/LearningPathView.js +316 -0
  128. package/dist/esm/components/LearningPathView.js.map +1 -0
  129. package/dist/esm/components/ProgressDashboard.js +304 -0
  130. package/dist/esm/components/ProgressDashboard.js.map +1 -0
  131. package/dist/esm/components/SkillCard.js +260 -0
  132. package/dist/esm/components/SkillCard.js.map +1 -0
  133. package/dist/esm/components/SkillExplorer.js +397 -0
  134. package/dist/esm/components/SkillExplorer.js.map +1 -0
  135. package/dist/esm/components/SkillGraph.js +599 -0
  136. package/dist/esm/components/SkillGraph.js.map +1 -0
  137. package/dist/esm/components/hooks.js +512 -0
  138. package/dist/esm/components/hooks.js.map +1 -0
  139. package/dist/esm/components/index.js +61 -0
  140. package/dist/esm/components/index.js.map +1 -0
  141. package/dist/esm/components/types.js +31 -0
  142. package/dist/esm/components/types.js.map +1 -0
  143. package/dist/esm/embeddings/base.js +99 -0
  144. package/dist/esm/embeddings/base.js.map +1 -0
  145. package/dist/esm/embeddings/index.js +79 -0
  146. package/dist/esm/embeddings/index.js.map +1 -0
  147. package/dist/esm/embeddings/local.js +219 -0
  148. package/dist/esm/embeddings/local.js.map +1 -0
  149. package/dist/esm/embeddings/openai.js +164 -0
  150. package/dist/esm/embeddings/openai.js.map +1 -0
  151. package/dist/esm/index.js +28 -0
  152. package/dist/esm/index.js.map +1 -1
  153. package/dist/esm/llm/adapters/anthropic.js +88 -2
  154. package/dist/esm/llm/adapters/anthropic.js.map +1 -1
  155. package/dist/esm/llm/adapters/gemini.js +98 -7
  156. package/dist/esm/llm/adapters/gemini.js.map +1 -1
  157. package/dist/esm/llm/adapters/index.js +15 -4
  158. package/dist/esm/llm/adapters/index.js.map +1 -1
  159. package/dist/esm/llm/adapters/ollama.js +117 -2
  160. package/dist/esm/llm/adapters/ollama.js.map +1 -1
  161. package/dist/esm/llm/adapters/openai.js +105 -1
  162. package/dist/esm/llm/adapters/openai.js.map +1 -1
  163. package/dist/esm/llm/graphrag-orchestrator.js +999 -0
  164. package/dist/esm/llm/graphrag-orchestrator.js.map +1 -0
  165. package/dist/esm/llm/index.js +4 -0
  166. package/dist/esm/llm/index.js.map +1 -1
  167. package/dist/esm/mcp/cli.js +267 -0
  168. package/dist/esm/mcp/cli.js.map +1 -0
  169. package/dist/esm/mcp/index.js +39 -0
  170. package/dist/esm/mcp/index.js.map +1 -0
  171. package/dist/esm/mcp/prompts.js +419 -0
  172. package/dist/esm/mcp/prompts.js.map +1 -0
  173. package/dist/esm/mcp/resources.js +359 -0
  174. package/dist/esm/mcp/resources.js.map +1 -0
  175. package/dist/esm/mcp/server.js +372 -0
  176. package/dist/esm/mcp/server.js.map +1 -0
  177. package/dist/esm/mcp/tools.js +598 -0
  178. package/dist/esm/mcp/tools.js.map +1 -0
  179. package/dist/esm/mcp/types.js +9 -0
  180. package/dist/esm/mcp/types.js.map +1 -0
  181. package/dist/esm/storage/index.js +8 -0
  182. package/dist/esm/storage/index.js.map +1 -1
  183. package/dist/esm/storage/neo4j-graphrag.js +591 -0
  184. package/dist/esm/storage/neo4j-graphrag.js.map +1 -0
  185. package/dist/esm/types/assessment.js +40 -0
  186. package/dist/esm/types/assessment.js.map +1 -0
  187. package/dist/esm/types/bloom.js +11 -0
  188. package/dist/esm/types/bloom.js.map +1 -1
  189. package/dist/esm/types/graphrag.js +10 -0
  190. package/dist/esm/types/graphrag.js.map +1 -0
  191. package/dist/esm/types/index.js +2 -1
  192. package/dist/esm/types/index.js.map +1 -1
  193. package/dist/types/api/routes/analytics.d.ts +14 -0
  194. package/dist/types/api/routes/analytics.d.ts.map +1 -0
  195. package/dist/types/api/routes/assessments.d.ts +14 -0
  196. package/dist/types/api/routes/assessments.d.ts.map +1 -0
  197. package/dist/types/api/routes/curriculum.d.ts +14 -0
  198. package/dist/types/api/routes/curriculum.d.ts.map +1 -0
  199. package/dist/types/api/routes/edges.d.ts +14 -0
  200. package/dist/types/api/routes/edges.d.ts.map +1 -0
  201. package/dist/types/api/routes/explore.d.ts +14 -0
  202. package/dist/types/api/routes/explore.d.ts.map +1 -0
  203. package/dist/types/api/routes/learners.d.ts +14 -0
  204. package/dist/types/api/routes/learners.d.ts.map +1 -0
  205. package/dist/types/api/routes/me.d.ts +14 -0
  206. package/dist/types/api/routes/me.d.ts.map +1 -0
  207. package/dist/types/api/routes/skills.d.ts +14 -0
  208. package/dist/types/api/routes/skills.d.ts.map +1 -0
  209. package/dist/types/api/server.d.ts +147 -0
  210. package/dist/types/api/server.d.ts.map +1 -0
  211. package/dist/types/api/types.d.ts +443 -0
  212. package/dist/types/api/types.d.ts.map +1 -0
  213. package/dist/types/assessment/adaptive.d.ts +155 -0
  214. package/dist/types/assessment/adaptive.d.ts.map +1 -0
  215. package/dist/types/assessment/bkt.d.ts +185 -0
  216. package/dist/types/assessment/bkt.d.ts.map +1 -0
  217. package/dist/types/assessment/index.d.ts +18 -0
  218. package/dist/types/assessment/index.d.ts.map +1 -0
  219. package/dist/types/assessment/irt.d.ts +159 -0
  220. package/dist/types/assessment/irt.d.ts.map +1 -0
  221. package/dist/types/assessment/mastery-engine.d.ts +178 -0
  222. package/dist/types/assessment/mastery-engine.d.ts.map +1 -0
  223. package/dist/types/components/LearningPathView.d.ts +40 -0
  224. package/dist/types/components/LearningPathView.d.ts.map +1 -0
  225. package/dist/types/components/ProgressDashboard.d.ts +49 -0
  226. package/dist/types/components/ProgressDashboard.d.ts.map +1 -0
  227. package/dist/types/components/SkillCard.d.ts +34 -0
  228. package/dist/types/components/SkillCard.d.ts.map +1 -0
  229. package/dist/types/components/SkillExplorer.d.ts +39 -0
  230. package/dist/types/components/SkillExplorer.d.ts.map +1 -0
  231. package/dist/types/components/SkillGraph.d.ts +38 -0
  232. package/dist/types/components/SkillGraph.d.ts.map +1 -0
  233. package/dist/types/components/hooks.d.ts +187 -0
  234. package/dist/types/components/hooks.d.ts.map +1 -0
  235. package/dist/types/components/index.d.ts +59 -0
  236. package/dist/types/components/index.d.ts.map +1 -0
  237. package/dist/types/components/types.d.ts +410 -0
  238. package/dist/types/components/types.d.ts.map +1 -0
  239. package/dist/types/embeddings/base.d.ts +51 -0
  240. package/dist/types/embeddings/base.d.ts.map +1 -0
  241. package/dist/types/embeddings/index.d.ts +48 -0
  242. package/dist/types/embeddings/index.d.ts.map +1 -0
  243. package/dist/types/embeddings/local.d.ts +82 -0
  244. package/dist/types/embeddings/local.d.ts.map +1 -0
  245. package/dist/types/embeddings/openai.d.ts +48 -0
  246. package/dist/types/embeddings/openai.d.ts.map +1 -0
  247. package/dist/types/index.d.ts +3 -0
  248. package/dist/types/index.d.ts.map +1 -1
  249. package/dist/types/llm/adapters/anthropic.d.ts +84 -1
  250. package/dist/types/llm/adapters/anthropic.d.ts.map +1 -1
  251. package/dist/types/llm/adapters/gemini.d.ts +93 -6
  252. package/dist/types/llm/adapters/gemini.d.ts.map +1 -1
  253. package/dist/types/llm/adapters/index.d.ts +13 -4
  254. package/dist/types/llm/adapters/index.d.ts.map +1 -1
  255. package/dist/types/llm/adapters/ollama.d.ts +126 -1
  256. package/dist/types/llm/adapters/ollama.d.ts.map +1 -1
  257. package/dist/types/llm/adapters/openai.d.ts +104 -1
  258. package/dist/types/llm/adapters/openai.d.ts.map +1 -1
  259. package/dist/types/llm/graphrag-orchestrator.d.ts +280 -0
  260. package/dist/types/llm/graphrag-orchestrator.d.ts.map +1 -0
  261. package/dist/types/llm/index.d.ts +2 -0
  262. package/dist/types/llm/index.d.ts.map +1 -1
  263. package/dist/types/mcp/cli.d.ts +15 -0
  264. package/dist/types/mcp/cli.d.ts.map +1 -0
  265. package/dist/types/mcp/index.d.ts +32 -0
  266. package/dist/types/mcp/index.d.ts.map +1 -0
  267. package/dist/types/mcp/prompts.d.ts +27 -0
  268. package/dist/types/mcp/prompts.d.ts.map +1 -0
  269. package/dist/types/mcp/resources.d.ts +59 -0
  270. package/dist/types/mcp/resources.d.ts.map +1 -0
  271. package/dist/types/mcp/server.d.ts +136 -0
  272. package/dist/types/mcp/server.d.ts.map +1 -0
  273. package/dist/types/mcp/tools.d.ts +344 -0
  274. package/dist/types/mcp/tools.d.ts.map +1 -0
  275. package/dist/types/mcp/types.d.ts +137 -0
  276. package/dist/types/mcp/types.d.ts.map +1 -0
  277. package/dist/types/storage/index.d.ts +2 -0
  278. package/dist/types/storage/index.d.ts.map +1 -1
  279. package/dist/types/storage/neo4j-graphrag.d.ts +106 -0
  280. package/dist/types/storage/neo4j-graphrag.d.ts.map +1 -0
  281. package/dist/types/types/assessment.d.ts +512 -0
  282. package/dist/types/types/assessment.d.ts.map +1 -0
  283. package/dist/types/types/bloom.d.ts +4 -0
  284. package/dist/types/types/bloom.d.ts.map +1 -1
  285. package/dist/types/types/graphrag.d.ts +335 -0
  286. package/dist/types/types/graphrag.d.ts.map +1 -0
  287. package/dist/types/types/index.d.ts +4 -1
  288. package/dist/types/types/index.d.ts.map +1 -1
  289. package/package.json +48 -3
@@ -0,0 +1 @@
1
+ {"version":3,"file":"graphrag-orchestrator.js","sourceRoot":"","sources":["../../../src/llm/graphrag-orchestrator.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,10 @@ export { BaseLLMAdapter, LLMError, DEFAULT_CONFIG, OpenAIAdapter, createOpenAIAd
12
12
  // ─────────────────────────────────────────────────────────────────────────────
13
13
  export { LLMOrchestrator, createOrchestrator } from './orchestrator.js';
14
14
  // ─────────────────────────────────────────────────────────────────────────────
15
+ // GraphRAG Orchestrator
16
+ // ─────────────────────────────────────────────────────────────────────────────
17
+ export { GraphRAGOrchestrator, createGraphRAGOrchestrator, } from './graphrag-orchestrator.js';
18
+ // ─────────────────────────────────────────────────────────────────────────────
15
19
  // Prompts
16
20
  // ─────────────────────────────────────────────────────────────────────────────
17
21
  export { SYSTEM_PROMPTS, EXTRACTION_SCHEMA, PREREQUISITE_SCHEMA, BLOOM_ANALYSIS_SCHEMA, DECOMPOSITION_SCHEMA, buildExtractionPrompt, buildPrerequisitePrompt, buildBloomPrompt, buildDecompositionPrompt, } from './prompts.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/llm/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAgCH,gFAAgF;AAChF,WAAW;AACX,gFAAgF;AAChF,OAAO,EACL,cAAc,EACd,QAAQ,EACR,cAAc,EACd,aAAa,EACb,mBAAmB,EACnB,gBAAgB,EAChB,sBAAsB,EACtB,aAAa,EACb,mBAAmB,EACnB,aAAa,EACb,mBAAmB,EACnB,iBAAiB,EACjB,uBAAuB,EACvB,iBAAiB,EACjB,gBAAgB,EAChB,sBAAsB,EACtB,gBAAgB,GACjB,MAAM,qBAAqB,CAAC;AAG7B,gFAAgF;AAChF,eAAe;AACf,gFAAgF;AAChF,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAExE,gFAAgF;AAChF,UAAU;AACV,gFAAgF;AAChF,OAAO,EACL,cAAc,EACd,iBAAiB,EACjB,mBAAmB,EACnB,qBAAqB,EACrB,oBAAoB,EACpB,qBAAqB,EACrB,uBAAuB,EACvB,gBAAgB,EAChB,wBAAwB,GACzB,MAAM,cAAc,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/llm/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAgCH,gFAAgF;AAChF,WAAW;AACX,gFAAgF;AAChF,OAAO,EACL,cAAc,EACd,QAAQ,EACR,cAAc,EACd,aAAa,EACb,mBAAmB,EACnB,gBAAgB,EAChB,sBAAsB,EACtB,aAAa,EACb,mBAAmB,EACnB,aAAa,EACb,mBAAmB,EACnB,iBAAiB,EACjB,uBAAuB,EACvB,iBAAiB,EACjB,gBAAgB,EAChB,sBAAsB,EACtB,gBAAgB,GACjB,MAAM,qBAAqB,CAAC;AAG7B,gFAAgF;AAChF,eAAe;AACf,gFAAgF;AAChF,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAExE,gFAAgF;AAChF,wBAAwB;AACxB,gFAAgF;AAChF,OAAO,EACL,oBAAoB,EACpB,0BAA0B,GAC3B,MAAM,4BAA4B,CAAC;AAepC,gFAAgF;AAChF,UAAU;AACV,gFAAgF;AAChF,OAAO,EACL,cAAc,EACd,iBAAiB,EACjB,mBAAmB,EACnB,qBAAqB,EACrB,oBAAoB,EACpB,qBAAqB,EACrB,uBAAuB,EACvB,gBAAgB,EAChB,wBAAwB,GACzB,MAAM,cAAc,CAAC"}
@@ -0,0 +1,267 @@
1
+ #!/usr/bin/env node
2
+ /**
3
+ * LearnGraph MCP Server CLI
4
+ *
5
+ * Command-line interface for running the LearnGraph MCP server.
6
+ *
7
+ * Usage:
8
+ * npx learngraph-mcp # Run with in-memory storage
9
+ * npx learngraph-mcp --neo4j <uri> # Run with Neo4j backend
10
+ * npx learngraph-mcp --level <path> # Run with LevelGraph backend
11
+ *
12
+ * @packageDocumentation
13
+ */
14
+ import { LearnGraphMcpServer } from './server.js';
15
+ import { MemoryStorage } from '../storage/memory.js';
16
+ function parseArgs(args) {
17
+ const options = {
18
+ backend: 'memory',
19
+ debug: false,
20
+ help: false,
21
+ };
22
+ for (let i = 0; i < args.length; i++) {
23
+ const arg = args[i];
24
+ switch (arg) {
25
+ case '-h':
26
+ case '--help':
27
+ options.help = true;
28
+ break;
29
+ case '-d':
30
+ case '--debug':
31
+ options.debug = true;
32
+ break;
33
+ case '--neo4j': {
34
+ options.backend = 'neo4j';
35
+ const nextArg = args[i + 1];
36
+ if (nextArg !== undefined && !nextArg.startsWith('-')) {
37
+ options.neo4jUri = nextArg;
38
+ i++;
39
+ }
40
+ break;
41
+ }
42
+ case '--neo4j-user': {
43
+ const nextArg = args[i + 1];
44
+ if (nextArg !== undefined) {
45
+ options.neo4jUser = nextArg;
46
+ i++;
47
+ }
48
+ break;
49
+ }
50
+ case '--neo4j-password': {
51
+ const nextArg = args[i + 1];
52
+ if (nextArg !== undefined) {
53
+ options.neo4jPassword = nextArg;
54
+ i++;
55
+ }
56
+ break;
57
+ }
58
+ case '--level':
59
+ case '--levelgraph': {
60
+ options.backend = 'levelgraph';
61
+ const nextArg = args[i + 1];
62
+ if (nextArg !== undefined && !nextArg.startsWith('-')) {
63
+ options.levelPath = nextArg;
64
+ i++;
65
+ }
66
+ break;
67
+ }
68
+ case '--memory':
69
+ options.backend = 'memory';
70
+ break;
71
+ }
72
+ }
73
+ return options;
74
+ }
75
+ function printHelp() {
76
+ console.error(`
77
+ LearnGraph MCP Server
78
+
79
+ An MCP server that provides educational knowledge graph capabilities to Claude.
80
+
81
+ USAGE:
82
+ learngraph-mcp [OPTIONS]
83
+
84
+ OPTIONS:
85
+ -h, --help Show this help message
86
+ -d, --debug Enable debug logging
87
+
88
+ --memory Use in-memory storage (default)
89
+ --neo4j <uri> Use Neo4j storage
90
+ --neo4j-user <user> Neo4j username (default: neo4j)
91
+ --neo4j-password <pwd> Neo4j password
92
+ --level <path> Use LevelGraph storage
93
+
94
+ ENVIRONMENT VARIABLES:
95
+ NEO4J_URI Neo4j connection URI
96
+ NEO4J_USER Neo4j username
97
+ NEO4J_PASSWORD Neo4j password
98
+ LEARNGRAPH_DEBUG Enable debug logging (1 or true)
99
+
100
+ EXAMPLES:
101
+ # Run with in-memory storage
102
+ learngraph-mcp
103
+
104
+ # Run with Neo4j
105
+ learngraph-mcp --neo4j bolt://localhost:7687 --neo4j-password secret
106
+
107
+ # Run with LevelGraph (file-based)
108
+ learngraph-mcp --level ./my-graph
109
+
110
+ CLAUDE DESKTOP CONFIGURATION:
111
+ Add to claude_desktop_config.json:
112
+ {
113
+ "mcpServers": {
114
+ "learngraph": {
115
+ "command": "npx",
116
+ "args": ["learngraph-mcp"]
117
+ }
118
+ }
119
+ }
120
+
121
+ AVAILABLE TOOLS:
122
+ list_skills List all skills in the knowledge graph
123
+ get_skill Get detailed skill information
124
+ create_skill Create a new skill
125
+ search_skills Search skills by name/description
126
+ get_prerequisites Get prerequisite skills
127
+ get_dependents Get dependent skills
128
+ get_learning_path Generate a learning path
129
+ get_zpd_skills Get skills in the Zone of Proximal Development
130
+ create_prerequisite Create a prerequisite relationship
131
+ get_graph_stats Get graph statistics
132
+ validate_curriculum Validate curriculum structure
133
+
134
+ AVAILABLE RESOURCES:
135
+ learngraph://curriculum/overview Curriculum overview
136
+ learngraph://curriculum/skills All skills
137
+ learngraph://curriculum/edges All prerequisites
138
+ learngraph://curriculum/skills/{id} Specific skill
139
+ learngraph://curriculum/bloom/{lvl} Skills by Bloom level
140
+ learngraph://curriculum/tags All tags
141
+ learngraph://curriculum/export Full export
142
+
143
+ AVAILABLE PROMPTS:
144
+ analyze_syllabus Extract skills from a syllabus
145
+ generate_learning_path Create a personalized learning path
146
+ identify_prerequisites Map prerequisite relationships
147
+ zpd_recommendations Get ZPD-based skill recommendations
148
+ curriculum_validation Validate curriculum structure
149
+ gap_analysis Analyze competency gaps
150
+ create_assessment Generate skill assessments
151
+ explain_concept Multi-level concept explanations
152
+ `);
153
+ }
154
+ // ─────────────────────────────────────────────────────────────────────────────
155
+ // Storage Factory
156
+ // ─────────────────────────────────────────────────────────────────────────────
157
+ async function createStorage(options) {
158
+ const debug = options.debug || process.env.LEARNGRAPH_DEBUG === '1' || process.env.LEARNGRAPH_DEBUG === 'true';
159
+ if (debug) {
160
+ console.error('[LearnGraph MCP] Creating storage...');
161
+ }
162
+ switch (options.backend) {
163
+ case 'neo4j': {
164
+ const uri = options.neo4jUri || process.env.NEO4J_URI || 'bolt://localhost:7687';
165
+ const user = options.neo4jUser || process.env.NEO4J_USER || 'neo4j';
166
+ const password = options.neo4jPassword || process.env.NEO4J_PASSWORD;
167
+ if (!password) {
168
+ console.error('Error: Neo4j password required. Use --neo4j-password or NEO4J_PASSWORD env var.');
169
+ process.exit(1);
170
+ }
171
+ try {
172
+ const { Neo4jStorage } = await import('../storage/neo4j.js');
173
+ const storage = new Neo4jStorage();
174
+ await storage.connect({
175
+ backend: 'neo4j',
176
+ uri,
177
+ username: user,
178
+ password,
179
+ });
180
+ if (debug) {
181
+ console.error(`[LearnGraph MCP] Connected to Neo4j at ${uri}`);
182
+ }
183
+ return storage;
184
+ }
185
+ catch (err) {
186
+ console.error('Error: Neo4j driver not installed. Run: npm install neo4j-driver');
187
+ process.exit(1);
188
+ }
189
+ }
190
+ case 'levelgraph': {
191
+ const path = options.levelPath;
192
+ try {
193
+ const { LevelGraphStorage } = await import('../storage/levelgraph.js');
194
+ const storage = new LevelGraphStorage();
195
+ const config = { backend: 'levelgraph' };
196
+ if (path) {
197
+ config.path = path;
198
+ }
199
+ await storage.connect(config);
200
+ if (debug) {
201
+ console.error(`[LearnGraph MCP] LevelGraph storage${path ? ` at ${path}` : ' (in-memory)'}`);
202
+ }
203
+ return storage;
204
+ }
205
+ catch (err) {
206
+ console.error('Error: LevelGraph not installed. Run: npm install level levelgraph');
207
+ process.exit(1);
208
+ }
209
+ }
210
+ case 'memory':
211
+ default: {
212
+ const storage = new MemoryStorage();
213
+ await storage.connect({ backend: 'memory' });
214
+ if (debug) {
215
+ console.error('[LearnGraph MCP] Using in-memory storage');
216
+ }
217
+ return storage;
218
+ }
219
+ }
220
+ }
221
+ // ─────────────────────────────────────────────────────────────────────────────
222
+ // Main
223
+ // ─────────────────────────────────────────────────────────────────────────────
224
+ async function main() {
225
+ const options = parseArgs(process.argv.slice(2));
226
+ if (options.help) {
227
+ printHelp();
228
+ process.exit(0);
229
+ }
230
+ const debug = options.debug || process.env.LEARNGRAPH_DEBUG === '1' || process.env.LEARNGRAPH_DEBUG === 'true';
231
+ try {
232
+ // Create storage
233
+ const storage = await createStorage(options);
234
+ // Create and start MCP server
235
+ const server = new LearnGraphMcpServer({
236
+ storage,
237
+ debug,
238
+ });
239
+ await server.start();
240
+ if (debug) {
241
+ console.error('[LearnGraph MCP] Server running. Waiting for MCP client connection...');
242
+ }
243
+ // Handle graceful shutdown
244
+ process.on('SIGINT', () => {
245
+ if (debug) {
246
+ console.error('[LearnGraph MCP] Shutting down...');
247
+ }
248
+ process.exit(0);
249
+ });
250
+ process.on('SIGTERM', () => {
251
+ if (debug) {
252
+ console.error('[LearnGraph MCP] Shutting down...');
253
+ }
254
+ process.exit(0);
255
+ });
256
+ }
257
+ catch (err) {
258
+ console.error('Error starting MCP server:', err instanceof Error ? err.message : err);
259
+ process.exit(1);
260
+ }
261
+ }
262
+ // Run if executed directly
263
+ main().catch((err) => {
264
+ console.error('Fatal error:', err);
265
+ process.exit(1);
266
+ });
267
+ //# sourceMappingURL=cli.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../../src/mcp/cli.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,39 @@
1
+ /**
2
+ * LearnGraph MCP Server Module
3
+ *
4
+ * Model Context Protocol integration for Claude.
5
+ * Provides tools, resources, and prompts for educational knowledge graphs.
6
+ *
7
+ * @packageDocumentation
8
+ *
9
+ * @example
10
+ * ```typescript
11
+ * import { LearnGraphMcpServer, startMcpServer } from 'learngraph/mcp';
12
+ * import { MemoryStorage } from 'learngraph/storage';
13
+ *
14
+ * // Create storage
15
+ * const storage = new MemoryStorage();
16
+ * await storage.connect({ backend: 'memory' });
17
+ *
18
+ * // Option 1: Quick start
19
+ * await startMcpServer({ storage });
20
+ *
21
+ * // Option 2: Full control
22
+ * const server = new LearnGraphMcpServer({ storage });
23
+ * console.log(server.listTools());
24
+ * await server.start();
25
+ * ```
26
+ */
27
+ // Server
28
+ export { LearnGraphMcpServer, startMcpServer } from './server.js';
29
+ // Tools
30
+ export { TOOL_DEFINITIONS,
31
+ // Individual tool schemas for advanced usage
32
+ ListSkillsSchema, GetSkillSchema, CreateSkillSchema, SearchSkillsSchema, GetPrerequisitesSchema, GetDependentsSchema, GetLearningPathSchema, GetZpdSkillsSchema, CreatePrerequisiteSchema, GetGraphStatsSchema, ValidateCurriculumSchema,
33
+ // Individual tool handlers for testing
34
+ listSkills, getSkill, createSkill, searchSkills, getPrerequisites, getDependents, getLearningPath, getZpdSkills, createPrerequisite, getGraphStats, validateCurriculum, } from './tools.js';
35
+ // Resources
36
+ export { getResourceTemplates, listResources, resolveResource, getCurriculumOverview, getAllSkills, getAllEdges, getSkillById, getSkillsByBloomLevel, getAllTags, getFullExport, } from './resources.js';
37
+ // Prompts
38
+ export { PROMPT_DEFINITIONS, getPromptMetas, renderPrompt, getPromptDefinition, } from './prompts.js';
39
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/mcp/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,SAAS;AACT,OAAO,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAmBlE,QAAQ;AACR,OAAO,EACL,gBAAgB;AAEhB,6CAA6C;AAC7C,gBAAgB,EAChB,cAAc,EACd,iBAAiB,EACjB,kBAAkB,EAClB,sBAAsB,EACtB,mBAAmB,EACnB,qBAAqB,EACrB,kBAAkB,EAClB,wBAAwB,EACxB,mBAAmB,EACnB,wBAAwB;AACxB,uCAAuC;AACvC,UAAU,EACV,QAAQ,EACR,WAAW,EACX,YAAY,EACZ,gBAAgB,EAChB,aAAa,EACb,eAAe,EACf,YAAY,EACZ,kBAAkB,EAClB,aAAa,EACb,kBAAkB,GACnB,MAAM,YAAY,CAAC;AAEpB,YAAY;AACZ,OAAO,EACL,oBAAoB,EACpB,aAAa,EACb,eAAe,EACf,qBAAqB,EACrB,YAAY,EACZ,WAAW,EACX,YAAY,EACZ,qBAAqB,EACrB,UAAU,EACV,aAAa,GAEd,MAAM,gBAAgB,CAAC;AAExB,UAAU;AACV,OAAO,EACL,kBAAkB,EAClB,cAAc,EACd,YAAY,EACZ,mBAAmB,GACpB,MAAM,cAAc,CAAC"}