@roomi-fields/notebooklm-mcp 1.3.6 → 1.5.1

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 (284) hide show
  1. package/LICENSE +22 -22
  2. package/README.md +71 -34
  3. package/deployment/INDEX.md +292 -0
  4. package/deployment/PACKAGE-FILES.txt +180 -0
  5. package/deployment/QUICK-START.md +100 -0
  6. package/deployment/docs/01-INSTALL.md +611 -0
  7. package/deployment/docs/02-CONFIGURATION.md +404 -0
  8. package/deployment/docs/03-API.md +1691 -0
  9. package/deployment/docs/04-N8N-INTEGRATION.md +373 -0
  10. package/deployment/docs/05-TROUBLESHOOTING.md +429 -0
  11. package/deployment/docs/06-NOTEBOOK-LIBRARY.md +692 -0
  12. package/deployment/docs/07-AUTO-DISCOVERY.md +236 -0
  13. package/deployment/docs/08-WSL-USAGE.md +363 -0
  14. package/deployment/docs/09-MULTI-INTERFACE.md +293 -0
  15. package/deployment/docs/10-CONTENT-MANAGEMENT.md +421 -0
  16. package/deployment/docs/11-MULTI-ACCOUNT.md +295 -0
  17. package/deployment/docs/README.md +207 -0
  18. package/deployment/scripts/README.md +564 -0
  19. package/deployment/scripts/install.ps1 +114 -0
  20. package/deployment/scripts/setup-auth.ps1 +217 -0
  21. package/deployment/scripts/start-server.ps1 +72 -0
  22. package/deployment/scripts/stop-server.ps1 +51 -0
  23. package/deployment/scripts/test-api.ps1 +651 -0
  24. package/deployment/scripts/test-auth.ps1 +323 -0
  25. package/deployment/scripts/test-auto-discovery.ps1 +295 -0
  26. package/deployment/scripts/test-cors.ps1 +398 -0
  27. package/deployment/scripts/test-errors.ps1 +581 -0
  28. package/deployment/scripts/test-server.ps1 +140 -0
  29. package/deployment/scripts/test-sessions.ps1 +426 -0
  30. package/deployment/scripts/test-validation.ps1 +299 -0
  31. package/dist/accounts/account-manager.d.ts +163 -0
  32. package/dist/accounts/account-manager.d.ts.map +1 -0
  33. package/dist/accounts/account-manager.js +614 -0
  34. package/dist/accounts/account-manager.js.map +1 -0
  35. package/dist/accounts/auto-login-manager.d.ts +62 -0
  36. package/dist/accounts/auto-login-manager.d.ts.map +1 -0
  37. package/dist/accounts/auto-login-manager.js +537 -0
  38. package/dist/accounts/auto-login-manager.js.map +1 -0
  39. package/dist/accounts/crypto.d.ts +45 -0
  40. package/dist/accounts/crypto.d.ts.map +1 -0
  41. package/dist/accounts/crypto.js +138 -0
  42. package/dist/accounts/crypto.js.map +1 -0
  43. package/dist/accounts/index.d.ts +14 -0
  44. package/dist/accounts/index.d.ts.map +1 -0
  45. package/dist/accounts/index.js +14 -0
  46. package/dist/accounts/index.js.map +1 -0
  47. package/dist/accounts/types.d.ts +103 -0
  48. package/dist/accounts/types.d.ts.map +1 -0
  49. package/dist/accounts/types.js +7 -0
  50. package/dist/accounts/types.js.map +1 -0
  51. package/dist/auth/auth-manager.d.ts +9 -2
  52. package/dist/auth/auth-manager.d.ts.map +1 -1
  53. package/dist/auth/auth-manager.js +60 -6
  54. package/dist/auth/auth-manager.js.map +1 -1
  55. package/dist/auto-discovery/auto-discovery.d.ts.map +1 -1
  56. package/dist/auto-discovery/auto-discovery.js +2 -1
  57. package/dist/auto-discovery/auto-discovery.js.map +1 -1
  58. package/dist/cli/accounts.d.ts +13 -0
  59. package/dist/cli/accounts.d.ts.map +1 -0
  60. package/dist/cli/accounts.js +195 -0
  61. package/dist/cli/accounts.js.map +1 -0
  62. package/dist/config.d.ts +1 -0
  63. package/dist/config.d.ts.map +1 -1
  64. package/dist/config.js +24 -0
  65. package/dist/config.js.map +1 -1
  66. package/dist/content/content-generator.d.ts +153 -0
  67. package/dist/content/content-generator.d.ts.map +1 -0
  68. package/dist/content/content-generator.js +637 -0
  69. package/dist/content/content-generator.js.map +1 -0
  70. package/dist/content/content-manager.d.ts +364 -0
  71. package/dist/content/content-manager.d.ts.map +1 -0
  72. package/dist/content/content-manager.js +3841 -0
  73. package/dist/content/content-manager.js.map +1 -0
  74. package/dist/content/content-templates.d.ts +183 -0
  75. package/dist/content/content-templates.d.ts.map +1 -0
  76. package/dist/content/content-templates.js +719 -0
  77. package/dist/content/content-templates.js.map +1 -0
  78. package/dist/content/index.d.ts +14 -0
  79. package/dist/content/index.d.ts.map +1 -0
  80. package/dist/content/index.js +14 -0
  81. package/dist/content/index.js.map +1 -0
  82. package/dist/content/types.d.ts +285 -0
  83. package/dist/content/types.d.ts.map +1 -0
  84. package/dist/content/types.js +10 -0
  85. package/dist/content/types.js.map +1 -0
  86. package/dist/errors.d.ts +1 -1
  87. package/dist/errors.d.ts.map +1 -1
  88. package/dist/errors.js.map +1 -1
  89. package/dist/http-wrapper.d.ts +7 -0
  90. package/dist/http-wrapper.d.ts.map +1 -1
  91. package/dist/http-wrapper.js +449 -29
  92. package/dist/http-wrapper.js.map +1 -1
  93. package/dist/i18n/en.json +120 -0
  94. package/dist/i18n/fr.json +120 -0
  95. package/dist/i18n/index.d.ts +168 -0
  96. package/dist/i18n/index.d.ts.map +1 -0
  97. package/dist/i18n/index.js +213 -0
  98. package/dist/i18n/index.js.map +1 -0
  99. package/dist/index.js +26 -2
  100. package/dist/index.js.map +1 -1
  101. package/dist/library/notebook-library.d.ts +4 -0
  102. package/dist/library/notebook-library.d.ts.map +1 -1
  103. package/dist/library/notebook-library.js +20 -3
  104. package/dist/library/notebook-library.js.map +1 -1
  105. package/dist/session/browser-session.d.ts +35 -8
  106. package/dist/session/browser-session.d.ts.map +1 -1
  107. package/dist/session/browser-session.js +243 -28
  108. package/dist/session/browser-session.js.map +1 -1
  109. package/dist/session/session-manager.d.ts +6 -0
  110. package/dist/session/session-manager.d.ts.map +1 -1
  111. package/dist/session/session-manager.js +46 -14
  112. package/dist/session/session-manager.js.map +1 -1
  113. package/dist/session/shared-context-manager.d.ts +3 -3
  114. package/dist/session/shared-context-manager.d.ts.map +1 -1
  115. package/dist/session/shared-context-manager.js +10 -7
  116. package/dist/session/shared-context-manager.js.map +1 -1
  117. package/dist/stdio-http-proxy.d.ts +24 -0
  118. package/dist/stdio-http-proxy.d.ts.map +1 -0
  119. package/dist/stdio-http-proxy.js +592 -0
  120. package/dist/stdio-http-proxy.js.map +1 -0
  121. package/dist/tools/index.d.ts +106 -1
  122. package/dist/tools/index.d.ts.map +1 -1
  123. package/dist/tools/index.js +1028 -7
  124. package/dist/tools/index.js.map +1 -1
  125. package/dist/types.d.ts +81 -17
  126. package/dist/types.d.ts.map +1 -1
  127. package/dist/utils/citation-extractor.d.ts +66 -0
  128. package/dist/utils/citation-extractor.d.ts.map +1 -0
  129. package/dist/utils/citation-extractor.js +492 -0
  130. package/dist/utils/citation-extractor.js.map +1 -0
  131. package/dist/utils/page-utils.d.ts +8 -0
  132. package/dist/utils/page-utils.d.ts.map +1 -1
  133. package/dist/utils/page-utils.js +112 -8
  134. package/dist/utils/page-utils.js.map +1 -1
  135. package/docs/ADDING_A_LANGUAGE.md +209 -0
  136. package/docs/ARCHITECTURE_MIGRATION_STUDY.md +894 -0
  137. package/docs/CHROME_PROFILE_LIMITATION.md +15 -1
  138. package/docs/MULTI_ACCOUNT_SYSTEM.md +304 -0
  139. package/package.json +15 -12
  140. package/scripts/archive/add-and-activate-notebook.ps1 +31 -0
  141. package/scripts/archive/add-new-notebook.ps1 +25 -0
  142. package/scripts/archive/add-rom1pey.ps1 +2 -0
  143. package/scripts/archive/add-rpmonster.ps1 +2 -0
  144. package/scripts/archive/add-source-debug.ps1 +11 -0
  145. package/scripts/archive/add-source-e2e.ps1 +28 -0
  146. package/scripts/archive/add-source-visible.ps1 +11 -0
  147. package/scripts/archive/add-test-notebook.ps1 +13 -0
  148. package/scripts/archive/add-test-source.ps1 +50 -0
  149. package/scripts/archive/capture-screen.ps1 +11 -0
  150. package/scripts/archive/change-language.mjs +45 -0
  151. package/scripts/archive/change-language.ts +44 -0
  152. package/scripts/archive/check-account.ps1 +19 -0
  153. package/scripts/archive/check-notebook-2.ps1 +8 -0
  154. package/scripts/archive/check-test-notebook.ps1 +11 -0
  155. package/scripts/archive/create-notebook-auto.ps1 +31 -0
  156. package/scripts/archive/create-notebook.ps1 +8 -0
  157. package/scripts/archive/create-rom1pey-notebook.ps1 +19 -0
  158. package/scripts/archive/create-rom1pey.ps1 +8 -0
  159. package/scripts/archive/create-test-notebook-fresh.ps1 +21 -0
  160. package/scripts/archive/create-test-notebook.ps1 +16 -0
  161. package/scripts/archive/debug-add-source-auto.ps1 +29 -0
  162. package/scripts/archive/debug-add-source.ps1 +19 -0
  163. package/scripts/archive/debug-add-text-source.ps1 +47 -0
  164. package/scripts/archive/debug-home.ps1 +10 -0
  165. package/scripts/archive/debug-selectors.ps1 +55 -0
  166. package/scripts/archive/debug-sources-panel.ps1 +22 -0
  167. package/scripts/archive/debug-ui.ps1 +17 -0
  168. package/scripts/archive/discover-home.ps1 +26 -0
  169. package/scripts/archive/kill-automation-chrome.ps1 +37 -0
  170. package/scripts/archive/list-my-notebooks.ps1 +27 -0
  171. package/scripts/archive/navigate-home-visible.ps1 +23 -0
  172. package/scripts/archive/navigate-home.ps1 +15 -0
  173. package/scripts/archive/run-e2e-english.ps1 +111 -0
  174. package/scripts/archive/run-e2e-rom1pey-v2.ps1 +122 -0
  175. package/scripts/archive/run-e2e-rom1pey.ps1 +117 -0
  176. package/scripts/archive/setup-english-test.ps1 +36 -0
  177. package/scripts/archive/setup-test-notebook.ps1 +71 -0
  178. package/scripts/archive/simple-add-source.ps1 +14 -0
  179. package/scripts/archive/t10.ps1 +2 -0
  180. package/scripts/archive/t20.ps1 +4 -0
  181. package/scripts/archive/t30.ps1 +9 -0
  182. package/scripts/archive/t31.ps1 +11 -0
  183. package/scripts/archive/t32.ps1 +6 -0
  184. package/scripts/archive/t39.ps1 +5 -0
  185. package/scripts/archive/t40.ps1 +5 -0
  186. package/scripts/archive/t53.ps1 +12 -0
  187. package/scripts/archive/t54.ps1 +12 -0
  188. package/scripts/archive/t55.ps1 +11 -0
  189. package/scripts/archive/t9.ps1 +1 -0
  190. package/scripts/archive/test-access.ps1 +28 -0
  191. package/scripts/archive/test-add-delete-source.ps1 +64 -0
  192. package/scripts/archive/test-add-source-visible.ps1 +16 -0
  193. package/scripts/archive/test-add-source.ps1 +19 -0
  194. package/scripts/archive/test-add-text-debug.ps1 +28 -0
  195. package/scripts/archive/test-add-text-source.ps1 +8 -0
  196. package/scripts/archive/test-add-url-source.ps1 +7 -0
  197. package/scripts/archive/test-ask-ascii.ps1 +20 -0
  198. package/scripts/archive/test-ask-cnv.ps1 +20 -0
  199. package/scripts/archive/test-ask-headed.ps1 +51 -0
  200. package/scripts/archive/test-ask-ifs.ps1 +16 -0
  201. package/scripts/archive/test-ask-now.ps1 +24 -0
  202. package/scripts/archive/test-ask-real.ps1 +19 -0
  203. package/scripts/archive/test-ask-visible.ps1 +20 -0
  204. package/scripts/archive/test-create-notebook.ps1 +8 -0
  205. package/scripts/archive/test-create-then-add.ps1 +17 -0
  206. package/scripts/archive/test-delete-source.ps1 +41 -0
  207. package/scripts/archive/test-e2e-notebook.ps1 +21 -0
  208. package/scripts/archive/test-english-notebook.ps1 +20 -0
  209. package/scripts/archive/test-english.ps1 +7 -0
  210. package/scripts/archive/test-full-custom-instructions.ps1 +40 -0
  211. package/scripts/archive/test-full-infographic.ps1 +34 -0
  212. package/scripts/archive/test-full-language.ps1 +21 -0
  213. package/scripts/archive/test-full-presentation.ps1 +85 -0
  214. package/scripts/archive/test-full-report.ps1 +34 -0
  215. package/scripts/archive/test-full-source-selection.ps1 +35 -0
  216. package/scripts/archive/test-full-video-brief.ps1 +22 -0
  217. package/scripts/archive/test-full-video-explainer.ps1 +22 -0
  218. package/scripts/archive/test-full-video-styles.ps1 +37 -0
  219. package/scripts/archive/test-generate-report.ps1 +15 -0
  220. package/scripts/archive/test-generate-study-guide.ps1 +11 -0
  221. package/scripts/archive/test-headed-ask.ps1 +13 -0
  222. package/scripts/archive/test-headed-now.ps1 +9 -0
  223. package/scripts/archive/test-headed.ps1 +9 -0
  224. package/scripts/archive/test-hello.ps1 +7 -0
  225. package/scripts/archive/test-i18n-studio.ps1 +8 -0
  226. package/scripts/archive/test-i18n.ps1 +7 -0
  227. package/scripts/archive/test-manual-headed.ps1 +26 -0
  228. package/scripts/archive/test-mathieu-quota.ps1 +8 -0
  229. package/scripts/archive/test-notebook-1.ps1 +10 -0
  230. package/scripts/archive/test-notebook-2-sources.ps1 +12 -0
  231. package/scripts/archive/test-notebook1.ps1 +14 -0
  232. package/scripts/archive/test-personal-notebook.ps1 +14 -0
  233. package/scripts/archive/test-rate-limit.ps1 +19 -0
  234. package/scripts/archive/test-real-ask.ps1 +50 -0
  235. package/scripts/archive/test-real-ask2.ps1 +30 -0
  236. package/scripts/archive/test-rom1pey.ps1 +7 -0
  237. package/scripts/archive/test-rotation-complete.ps1 +14 -0
  238. package/scripts/archive/test-rotation.ps1 +8 -0
  239. package/scripts/archive/test-show-browser.ps1 +39 -0
  240. package/scripts/archive/test-update-notebook.ps1 +4 -0
  241. package/scripts/archive/verify-language-slow.ps1 +21 -0
  242. package/scripts/archive/verify-language.ps1 +15 -0
  243. package/scripts/check-server.ps1 +46 -0
  244. package/scripts/mcp-wsl-helper.sh +146 -0
  245. package/scripts/start-server.ps1 +94 -0
  246. package/scripts/stop-server.ps1 +30 -0
  247. package/scripts/switch-account-language.sh +191 -0
  248. package/scripts/test-account.ps1 +58 -0
  249. package/dist/__tests__/cleanup-manager.test.d.ts +0 -2
  250. package/dist/__tests__/cleanup-manager.test.d.ts.map +0 -1
  251. package/dist/__tests__/cleanup-manager.test.js +0 -341
  252. package/dist/__tests__/cleanup-manager.test.js.map +0 -1
  253. package/dist/__tests__/config-parsing.test.d.ts +0 -2
  254. package/dist/__tests__/config-parsing.test.d.ts.map +0 -1
  255. package/dist/__tests__/config-parsing.test.js +0 -338
  256. package/dist/__tests__/config-parsing.test.js.map +0 -1
  257. package/dist/__tests__/config.test.d.ts +0 -2
  258. package/dist/__tests__/config.test.d.ts.map +0 -1
  259. package/dist/__tests__/config.test.js +0 -267
  260. package/dist/__tests__/config.test.js.map +0 -1
  261. package/dist/__tests__/errors.test.d.ts +0 -2
  262. package/dist/__tests__/errors.test.d.ts.map +0 -1
  263. package/dist/__tests__/errors.test.js +0 -166
  264. package/dist/__tests__/errors.test.js.map +0 -1
  265. package/dist/__tests__/logger.test.d.ts +0 -2
  266. package/dist/__tests__/logger.test.d.ts.map +0 -1
  267. package/dist/__tests__/logger.test.js +0 -324
  268. package/dist/__tests__/logger.test.js.map +0 -1
  269. package/dist/__tests__/page-utils.test.d.ts +0 -2
  270. package/dist/__tests__/page-utils.test.d.ts.map +0 -1
  271. package/dist/__tests__/page-utils.test.js +0 -349
  272. package/dist/__tests__/page-utils.test.js.map +0 -1
  273. package/dist/__tests__/setup-verification.test.d.ts +0 -2
  274. package/dist/__tests__/setup-verification.test.d.ts.map +0 -1
  275. package/dist/__tests__/setup-verification.test.js +0 -15
  276. package/dist/__tests__/setup-verification.test.js.map +0 -1
  277. package/dist/__tests__/stealth-utils.test.d.ts +0 -2
  278. package/dist/__tests__/stealth-utils.test.d.ts.map +0 -1
  279. package/dist/__tests__/stealth-utils.test.js +0 -413
  280. package/dist/__tests__/stealth-utils.test.js.map +0 -1
  281. package/dist/__tests__/types.test.d.ts +0 -2
  282. package/dist/__tests__/types.test.d.ts.map +0 -1
  283. package/dist/__tests__/types.test.js +0 -461
  284. package/dist/__tests__/types.test.js.map +0 -1
@@ -0,0 +1,429 @@
1
+ # Troubleshooting Guide - NotebookLM MCP HTTP Server
2
+
3
+ > Solutions to common problems
4
+
5
+ ---
6
+
7
+ ## 🔍 Quick Diagnosis
8
+
9
+ ### Verification Commands
10
+
11
+ ```powershell
12
+ # 1. Server active?
13
+ netstat -ano | findstr :3000
14
+
15
+ # 2. Health check
16
+ curl http://localhost:3000/health
17
+
18
+ # 3. Node processes
19
+ Get-Process node
20
+
21
+ # 4. Logs (if launched with scripts)
22
+ # See the terminal where the server is running
23
+ ```
24
+
25
+ ---
26
+
27
+ ## ❌ Installation Problems
28
+
29
+ ### Error: "npm install" fails
30
+
31
+ **Symptoms:**
32
+
33
+ ```
34
+ npm ERR! code ECONNREFUSED
35
+ npm ERR! network request failed
36
+ ```
37
+
38
+ **Solutions:**
39
+
40
+ 1. Check Internet connection
41
+ 2. Clean npm cache: `npm cache clean --force`
42
+ 3. Retry: `npm install`
43
+ 4. Use VPN if corporate firewall
44
+
45
+ ---
46
+
47
+ ### Error: "npm run build" fails
48
+
49
+ **Symptoms:**
50
+
51
+ ```
52
+ error TS2307: Cannot find module 'express'
53
+ ```
54
+
55
+ **Solutions:**
56
+
57
+ 1. Reinstall dependencies: `rm -rf node_modules && npm install`
58
+ 2. Check Node.js version: `node --version` (must be 20+)
59
+ 3. Verify package.json exists
60
+
61
+ ---
62
+
63
+ ## ❌ Authentication Problems
64
+
65
+ ### Chrome profile empty after setup-auth
66
+
67
+ **Symptoms:**
68
+
69
+ - Session not persistent
70
+ - Auth files missing or empty
71
+
72
+ **IMPORTANT:** Files are stored in `%LOCALAPPDATA%\notebooklm-mcp\Data\`, NOT in the project directory!
73
+
74
+ **Solutions:**
75
+
76
+ 1. Verify 5 second fix is applied (auth-manager.ts line 966)
77
+ 2. Rerun: `npm run setup-auth`
78
+ 3. Wait for Chrome to close completely
79
+ 4. Verify files created in the RIGHT location:
80
+ ```powershell
81
+ echo $env:LOCALAPPDATA\notebooklm-mcp\Data
82
+ dir $env:LOCALAPPDATA\notebooklm-mcp\Data\chrome_profile\Default\Cookies
83
+ dir $env:LOCALAPPDATA\notebooklm-mcp\Data\browser_state\state.json
84
+ ```
85
+ 5. The Cookies file must be >10KB
86
+
87
+ ---
88
+
89
+ ### Google session expires
90
+
91
+ **Symptoms:**
92
+
93
+ ```
94
+ Error: Authentication required
95
+ ```
96
+
97
+ **Solutions:**
98
+
99
+ 1. Re-authenticate: `npm run setup-auth`
100
+ 2. Verify cookies: cookies valid for 399 days
101
+ 3. Check for conflicts: close all Chrome instances
102
+
103
+ ---
104
+
105
+ ## ❌ Startup Problems
106
+
107
+ ### Port 3000 already in use
108
+
109
+ **Symptoms:**
110
+
111
+ ```
112
+ Error: listen EADDRINUSE: address already in use :::3000
113
+ ```
114
+
115
+ **Solutions:**
116
+
117
+ 1. Find process:
118
+ ```powershell
119
+ netstat -ano | findstr :3000
120
+ ```
121
+ 2. Kill process:
122
+ ```powershell
123
+ taskkill /PID <PID> /F
124
+ ```
125
+ 3. Or change port:
126
+ ```powershell
127
+ $env:HTTP_PORT="3001"
128
+ node dist/http-wrapper.js
129
+ ```
130
+
131
+ ---
132
+
133
+ ### "Target page, context or browser has been closed"
134
+
135
+ **Symptoms:**
136
+
137
+ ```
138
+ Error: Target page, context or browser has been closed
139
+ ```
140
+
141
+ **Causes:**
142
+
143
+ - Multiple Chrome instances sharing the same profile
144
+ - Chrome profile locked
145
+
146
+ **Solutions:**
147
+
148
+ 1. Close all node processes:
149
+ ```powershell
150
+ Get-Process node | Stop-Process -Force
151
+ ```
152
+ 2. Remove the lock (if necessary):
153
+ ```powershell
154
+ rm Data\chrome_profile\SingletonLock
155
+ ```
156
+ 3. Restart server
157
+
158
+ ---
159
+
160
+ ## ❌ Response Problems
161
+
162
+ ### Timeout waiting for response
163
+
164
+ **Symptoms:**
165
+
166
+ ```
167
+ Error: Timeout waiting for response from NotebookLM
168
+ ```
169
+
170
+ **Causes:**
171
+
172
+ - NotebookLM not responding
173
+ - Notebook doesn't exist
174
+ - Rate limit reached
175
+
176
+ **Solutions:**
177
+
178
+ 1. Verify notebook exists: `curl http://localhost:3000/notebooks`
179
+ 2. Test manually on notebooklm.google.com
180
+ 3. Check rate limit (50/day free)
181
+ 4. Increase timeout (already 120s by default)
182
+
183
+ ---
184
+
185
+ ### Incomplete responses or placeholders
186
+
187
+ **Symptoms:**
188
+
189
+ - Response = "Getting the context..."
190
+ - Truncated text
191
+
192
+ **Causes:**
193
+
194
+ - Streaming fix not applied
195
+ - Insufficient stability
196
+
197
+ **Solutions:**
198
+
199
+ 1. Verify fix line 210 page-utils.ts: `requiredStablePolls = 8`
200
+ 2. Verify placeholders line 51 page-utils.ts
201
+ 3. Rebuild: `npm run build`
202
+
203
+ ---
204
+
205
+ ## ❌ Network Problems (n8n)
206
+
207
+ ### n8n cannot connect
208
+
209
+ **Symptoms:**
210
+
211
+ ```
212
+ ECONNREFUSED 192.168.1.52:3000
213
+ ```
214
+
215
+ **Solutions:**
216
+
217
+ 1. Verify server listens on 0.0.0.0:
218
+ ```powershell
219
+ # Should show 0.0.0.0:3000, not 127.0.0.1:3000
220
+ netstat -ano | findstr :3000
221
+ ```
222
+ 2. Verify correct IP: `ipconfig`
223
+ 3. Test from n8n:
224
+ ```bash
225
+ curl http://192.168.1.52:3000/health
226
+ ```
227
+ 4. Check Windows firewall:
228
+ ```powershell
229
+ Test-NetConnection -ComputerName 192.168.1.52 -Port 3000
230
+ ```
231
+
232
+ ---
233
+
234
+ ### Windows firewall blocks
235
+
236
+ **Symptoms:**
237
+
238
+ - Connection works locally
239
+ - Fails from network
240
+
241
+ **Solutions:**
242
+
243
+ 1. Allow port:
244
+ ```powershell
245
+ New-NetFirewallRule `
246
+ -DisplayName "NotebookLM MCP" `
247
+ -Direction Inbound `
248
+ -LocalPort 3000 `
249
+ -Protocol TCP `
250
+ -Action Allow
251
+ ```
252
+ 2. Or temporarily disable firewall to test
253
+
254
+ ---
255
+
256
+ ## ❌ Performance Problems
257
+
258
+ ### Slow server
259
+
260
+ **Causes:**
261
+
262
+ - Too many active sessions
263
+ - Insufficient RAM
264
+ - Chrome not headless
265
+
266
+ **Solutions:**
267
+
268
+ 1. List sessions: `curl http://localhost:3000/sessions`
269
+ 2. Close sessions: `curl -X DELETE http://localhost:3000/sessions/<id>`
270
+ 3. Reduce MAX_SESSIONS:
271
+ ```powershell
272
+ $env:MAX_SESSIONS="5"
273
+ ```
274
+ 4. Check available RAM: `Get-Process node`
275
+
276
+ ---
277
+
278
+ ### NotebookLM rate limit reached
279
+
280
+ **Symptoms:**
281
+
282
+ ```
283
+ Error: NotebookLM rate limit reached (50 queries/day)
284
+ ```
285
+
286
+ **Solutions:**
287
+
288
+ 1. Wait 24h (reset midnight PST)
289
+ 2. Switch to Google Workspace (higher limit)
290
+ 3. Monitor usage: count queries/day
291
+
292
+ ---
293
+
294
+ ## ❌ PowerShell Script Problems
295
+
296
+ ### "Execution policy" error
297
+
298
+ **Symptoms:**
299
+
300
+ ```
301
+ .\install.ps1 : File cannot be loaded because running scripts is disabled
302
+ ```
303
+
304
+ **Solutions:**
305
+
306
+ 1. Allow scripts (current session):
307
+ ```powershell
308
+ Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass
309
+ ```
310
+ 2. Then rerun script
311
+
312
+ ---
313
+
314
+ ### Script cannot find package.json
315
+
316
+ **Symptoms:**
317
+
318
+ ```
319
+ package.json introuvable
320
+ ```
321
+
322
+ **Solutions:**
323
+
324
+ 1. Verify you are in the correct directory:
325
+ ```powershell
326
+ cd D:\notebooklm-http
327
+ ls package.json # Must exist
328
+ ```
329
+ 2. Run from project root, not from deployment/
330
+
331
+ ---
332
+
333
+ ## 🔧 Debug Commands
334
+
335
+ ### Enable debug logs
336
+
337
+ Modify `src/session/browser-session.ts` line 415:
338
+
339
+ ```typescript
340
+ debug: true, // See detailed logs
341
+ ```
342
+
343
+ Rebuild: `npm run build`
344
+
345
+ ### See Chrome in action
346
+
347
+ ```powershell
348
+ $env:HEADLESS="false"
349
+ node dist/http-wrapper.js
350
+ ```
351
+
352
+ ### Full logs
353
+
354
+ ```powershell
355
+ # Redirect logs to file
356
+ node dist/http-wrapper.js 2>&1 | Tee-Object -FilePath server.log
357
+ ```
358
+
359
+ ---
360
+
361
+ ## 📊 Complete Diagnostic Checklist
362
+
363
+ ```powershell
364
+ # 1. Node.js OK?
365
+ node --version # v20+
366
+ npm --version # v10+
367
+
368
+ # 2. Build OK?
369
+ ls dist/http-wrapper.js # Exists?
370
+
371
+ # 3. Auth OK?
372
+ ls Data/chrome_profile/Default/Cookies # >10KB?
373
+ ls Data/browser_state/state.json # Exists?
374
+
375
+ # 4. Port free?
376
+ netstat -ano | findstr :3000 # No result = OK
377
+
378
+ # 5. Server starts?
379
+ node dist/http-wrapper.js # See logs
380
+
381
+ # 6. Health OK?
382
+ curl http://localhost:3000/health # authenticated: true?
383
+
384
+ # 7. Full test?
385
+ curl -X POST http://localhost:3000/ask `
386
+ -H "Content-Type: application/json" `
387
+ -d '{"question":"test","notebook_id":"my-notebook"}'
388
+ ```
389
+
390
+ If all checks pass but problem persists → GitHub Issues
391
+
392
+ ---
393
+
394
+ ## 🆘 Getting Help
395
+
396
+ ### Logs to Provide
397
+
398
+ When opening an issue, include:
399
+
400
+ 1. **Environment:**
401
+
402
+ ```
403
+ - OS: Windows 11
404
+ - Node: v20.9.0
405
+ - npm: 10.1.0
406
+ ```
407
+
408
+ 2. **Server logs:** (last 50 lines)
409
+
410
+ 3. **Exact command:**
411
+
412
+ ```powershell
413
+ node dist/http-wrapper.js
414
+ ```
415
+
416
+ 4. **Exact error:**
417
+ ```
418
+ Error: EADDRINUSE
419
+ ```
420
+
421
+ ### Support
422
+
423
+ - **GitHub Issues:** [To be configured when repository is published]
424
+ - **Discussions:** [To be configured when repository is published]
425
+ - **Documentation:** ./deployment/docs/
426
+
427
+ ---
428
+
429
+ **Complete troubleshooting guide!** ✅