@roomi-fields/notebooklm-mcp 1.1.5 → 1.2.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.
package/README.md CHANGED
@@ -144,9 +144,18 @@ npm run build
144
144
  npm run setup-auth
145
145
  # Chrome opens → log in with Google → close Chrome
146
146
 
147
- # 3. Add your first notebook
147
+ # 3. Start the server
148
+
149
+ # Option A: Foreground mode (terminal stays open)
148
150
  npm run start:http
149
- # In another terminal:
151
+
152
+ # Option B: Background daemon mode (recommended for production)
153
+ npm run daemon:start # Start in background
154
+ npm run daemon:logs # View logs
155
+ npm run daemon:status # Check status
156
+ npm run daemon:stop # Stop server
157
+
158
+ # 4. Add your first notebook (in another terminal if using Option A)
150
159
  curl -X POST http://localhost:3000/notebooks \
151
160
  -H "Content-Type: application/json" \
152
161
  -d '{
@@ -156,12 +165,12 @@ curl -X POST http://localhost:3000/notebooks \
156
165
  "topics": ["docs", "api"]
157
166
  }'
158
167
 
159
- # 4. Query NotebookLM
168
+ # 5. Query NotebookLM
160
169
  curl -X POST http://localhost:3000/ask \
161
170
  -H "Content-Type: application/json" \
162
171
  -d '{"question": "Explain X"}'
163
172
 
164
- # 5. Validate installation (optional)
173
+ # 6. Validate installation (optional)
165
174
  .\deployment\scripts\test-server.ps1
166
175
  ```
167
176
 
@@ -208,6 +217,39 @@ Perfect for n8n workflows:
208
217
 
209
218
  **👉 n8n guide:** [deployment/docs/04-N8N-INTEGRATION.md](./deployment/docs/04-N8N-INTEGRATION.md)
210
219
 
220
+ ### Background Daemon Mode
221
+
222
+ Run the HTTP server as a background process without keeping a terminal window open:
223
+
224
+ ```bash
225
+ # Start server in background
226
+ npm run daemon:start
227
+
228
+ # View real-time logs
229
+ npm run daemon:logs
230
+
231
+ # Check server status
232
+ npm run daemon:status
233
+
234
+ # Restart server
235
+ npm run daemon:restart
236
+
237
+ # Stop server
238
+ npm run daemon:stop
239
+
240
+ # Remove from PM2 process list
241
+ npm run daemon:delete
242
+ ```
243
+
244
+ **Features:**
245
+ - ✅ Runs in background without terminal window
246
+ - ✅ Auto-restart on crash
247
+ - ✅ Centralized log management (logs/pm2-*.log)
248
+ - ✅ Memory limit protection (1GB max)
249
+ - ✅ Production-ready process management
250
+
251
+ **Configuration:** Edit `ecosystem.config.cjs` to customize PM2 behavior (env vars, restart policy, etc.)
252
+
211
253
  ### Installation & Documentation
212
254
 
213
255
  - 📖 [**Installation Guide**](./deployment/docs/01-INSTALL.md) — Step-by-step setup
@@ -182,7 +182,7 @@ app.delete('/sessions/:id', async (req, res) => {
182
182
  const PORT = Number(process.env.HTTP_PORT) || 3000;
183
183
  const HOST = process.env.HTTP_HOST || '0.0.0.0';
184
184
  app.listen(PORT, HOST, () => {
185
- log.success(`🌐 NotebookLM MCP HTTP Server v1.1.5`);
185
+ log.success(`🌐 NotebookLM MCP HTTP Server v1.2.0`);
186
186
  log.success(` Listening on ${HOST}:${PORT}`);
187
187
  log.info('');
188
188
  log.info('📊 Quick Links:');
package/dist/index.js CHANGED
@@ -51,7 +51,7 @@ class NotebookLMMCPServer {
51
51
  // Initialize MCP Server
52
52
  this.server = new Server({
53
53
  name: "notebooklm-mcp",
54
- version: "1.1.5",
54
+ version: "1.2.0",
55
55
  }, {
56
56
  capabilities: {
57
57
  tools: {},
@@ -70,7 +70,7 @@ class NotebookLMMCPServer {
70
70
  this.setupHandlers();
71
71
  this.setupShutdownHandlers();
72
72
  log.info("🚀 NotebookLM MCP Server initialized");
73
- log.info(` Version: 1.1.5`);
73
+ log.info(` Version: 1.2.0`);
74
74
  log.info(` Node: ${process.version}`);
75
75
  log.info(` Platform: ${process.platform}`);
76
76
  }
@@ -476,7 +476,7 @@ async function main() {
476
476
  // Print banner
477
477
  console.error("╔══════════════════════════════════════════════════════════╗");
478
478
  console.error("║ ║");
479
- console.error("║ NotebookLM MCP Server v1.1.5 ║");
479
+ console.error("║ NotebookLM MCP Server v1.2.0 ║");
480
480
  console.error("║ ║");
481
481
  console.error("║ Chat with Gemini 2.5 through NotebookLM via MCP ║");
482
482
  console.error("║ ║");
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@roomi-fields/notebooklm-mcp",
3
- "version": "1.1.5",
3
+ "version": "1.2.0",
4
4
  "description": "MCP server for NotebookLM API with HTTP REST API - Zero hallucinations from your notebooks",
5
5
  "type": "module",
6
6
  "bin": {
@@ -12,6 +12,12 @@
12
12
  "dev": "tsx watch src/index.ts",
13
13
  "dev:http": "tsx watch src/http-wrapper.ts",
14
14
  "start:http": "node dist/http-wrapper.js",
15
+ "daemon:start": "pm2 start ecosystem.config.cjs",
16
+ "daemon:stop": "pm2 stop notebooklm-http",
17
+ "daemon:restart": "pm2 restart notebooklm-http",
18
+ "daemon:logs": "pm2 logs notebooklm-http",
19
+ "daemon:status": "pm2 status",
20
+ "daemon:delete": "pm2 delete notebooklm-http",
15
21
  "setup-auth": "node dist/index.js",
16
22
  "prepare": "npm run build",
17
23
  "test": "tsx src/index.ts"
@@ -62,6 +68,7 @@
62
68
  "@types/cors": "^2.8.17",
63
69
  "@types/express": "^4.17.21",
64
70
  "@types/node": "^20.11.0",
71
+ "pm2": "^5.4.2",
65
72
  "tsx": "^4.7.0",
66
73
  "typescript": "^5.3.3"
67
74
  },