@chinchillaenterprises/mcp-dev-logger 2.0.0 → 2.0.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.
package/README.md CHANGED
@@ -5,11 +5,15 @@ A Model Context Protocol (MCP) server for capturing and streaming development se
5
5
  ## Features
6
6
 
7
7
  - **Universal Dev Server Logging**: Works with any development server command
8
+ - **Multi-Process Support**: Run multiple dev servers simultaneously (frontend + backend)
8
9
  - **Real-time Log Streaming**: Capture build errors, TypeScript errors, hot reload events
9
10
  - **Persistent Logs**: All output saved to file for historical debugging
10
- - **Process Management**: Start, stop, and restart dev servers
11
+ - **Smart Process Management**: Start, stop, and restart individual dev servers by ID
11
12
  - **Log Filtering**: Search through logs with grep patterns
12
13
  - **Framework Agnostic**: One tool for all development servers
14
+ - **Auto-Generated Process IDs**: Intelligent process ID generation based on command and output file
15
+ - **Process State Persistence**: Maintains process state across server restarts (where possible)
16
+ - **Signal Handling**: Proper cleanup with SIGTERM for graceful shutdowns
13
17
 
14
18
  ## Installation
15
19
 
@@ -40,11 +44,12 @@ claude mcp add dev-logger-local -s user -- node $(pwd)/dist/index.js
40
44
  This prefix pattern applies to all MCP servers and helps Claude distinguish between different servers' tools.
41
45
 
42
46
  ### 1. dev_start_log_streaming
43
- Start a development server and stream its output to a log file.
47
+ Start a development server and stream its output to a log file. **Supports multiple concurrent processes.**
44
48
 
45
49
  **Parameters:**
46
50
  - `command` (optional): Dev command to run (default: "npm run dev")
47
51
  - `outputFile` (optional): File to write logs to (default: "dev-server-logs.txt")
52
+ - `processId` (optional): Custom process ID (auto-generated if not provided)
48
53
  - `cwd` (optional): Working directory
49
54
  - `env` (optional): Environment variables to pass
50
55
 
@@ -61,50 +66,92 @@ Start a development server and stream its output to a log file.
61
66
  }
62
67
  ```
63
68
 
64
- ### 2. dev_stop_log_streaming
65
- Stop the running development server and logging.
69
+ ### 2. dev_list_processes
70
+ List all running development processes with their status and details.
66
71
 
67
72
  **No parameters required.**
68
73
 
69
- ### 3. dev_restart_log_streaming
70
- Restart the development server (useful when it crashes or hangs).
74
+ ### 3. dev_stop_log_streaming
75
+ Stop development server(s) and logging.
71
76
 
72
77
  **Parameters:**
78
+ - `processId` (optional): Process ID to stop (if not provided, stops all processes)
79
+
80
+ ### 4. dev_restart_log_streaming
81
+ Restart a specific development server (useful when it crashes or hangs).
82
+
83
+ **Parameters:**
84
+ - `processId` (required): Process ID to restart
73
85
  - `clearLogs` (optional): Whether to clear the log file on restart (default: false)
74
86
 
75
- ### 4. dev_get_status
76
- Check if the development server is running and get its status.
87
+ ### 5. dev_get_status
88
+ Check if development server(s) are running and get their status.
89
+
90
+ **Parameters:**
91
+ - `processId` (optional): Process ID to get status for (if not provided, shows all processes)
77
92
 
78
93
  **Returns:**
79
94
  - Running status
80
- - Process ID (PID)
95
+ - Process ID(s)
96
+ - PID(s)
81
97
  - Uptime
82
- - Current command
83
- - Log file location
98
+ - Current command(s)
99
+ - Log file location(s)
84
100
 
85
- ### 5. dev_tail_logs
101
+ ### 6. dev_tail_logs
86
102
  Get the last N lines from the log file.
87
103
 
88
104
  **Parameters:**
105
+ - `processId` (optional): Process ID to tail logs from (smart fallback for single process)
89
106
  - `lines` (optional): Number of lines to return (default: 50)
90
107
  - `filter` (optional): Grep pattern to filter logs
91
108
 
92
109
  **Example:**
93
110
  ```json
94
111
  {
112
+ "processId": "npm-frontend",
95
113
  "lines": 100,
96
114
  "filter": "ERROR"
97
115
  }
98
116
  ```
99
117
 
100
- ### 6. dev_clear_logs
118
+ ### 7. dev_clear_logs
101
119
  Clear the log file.
102
120
 
103
121
  **Parameters:**
122
+ - `processId` (optional): Process ID to clear logs for (smart fallback for single process)
104
123
  - `backup` (optional): Whether to backup logs before clearing (default: false)
105
124
 
106
125
  ## Usage Examples
107
126
 
127
+ ### Multi-Process Development (v2.0.0)
128
+ ```typescript
129
+ // Start frontend and backend simultaneously
130
+ dev_start_log_streaming({
131
+ "command": "npm run dev",
132
+ "outputFile": "frontend.log",
133
+ "processId": "frontend"
134
+ })
135
+
136
+ dev_start_log_streaming({
137
+ "command": "npx ampx sandbox --stream-function-logs",
138
+ "outputFile": "backend.log",
139
+ "processId": "backend"
140
+ })
141
+
142
+ // List all running processes
143
+ dev_list_processes()
144
+
145
+ // Stop just the frontend
146
+ dev_stop_log_streaming({ "processId": "frontend" })
147
+
148
+ // Restart backend with clean logs
149
+ dev_restart_log_streaming({
150
+ "processId": "backend",
151
+ "clearLogs": true
152
+ })
153
+ ```
154
+
108
155
  ### Start Next.js Development Server
109
156
  ```typescript
110
157
  // Start Next.js dev server
@@ -146,17 +193,27 @@ Clear the log file.
146
193
 
147
194
  ## Log Format
148
195
 
149
- Logs are written with timestamps and error markers:
196
+ Logs are written with timestamps, process IDs, and error markers:
150
197
 
151
198
  ```
152
- [2024-01-15T10:30:45.123Z] Starting: npm run dev
153
- [2024-01-15T10:30:46.456Z] > my-app@1.0.0 dev
154
- [2024-01-15T10:30:46.457Z] > next dev
155
- [2024-01-15T10:30:47.123Z] ▲ Next.js 14.0.0
156
- [2024-01-15T10:30:47.124Z] - Local: http://localhost:3000
157
- [2024-01-15T10:30:48.789Z] [ERROR] Error: Cannot find module './components/Header'
199
+ [2024-01-15T10:30:45.123Z] Starting: npm run dev (Process ID: npm-frontend)
200
+ [2024-01-15T10:30:46.456Z] [npm-frontend] > my-app@1.0.0 dev
201
+ [2024-01-15T10:30:46.457Z] [npm-frontend] > next dev
202
+ [2024-01-15T10:30:47.123Z] [npm-frontend] ▲ Next.js 14.0.0
203
+ [2024-01-15T10:30:47.124Z] [npm-frontend] - Local: http://localhost:3000
204
+ [2024-01-15T10:30:48.789Z] [npm-frontend] [ERROR] Error: Cannot find module './components/Header'
205
+
206
+ [2024-01-15T10:30:50.123Z] Starting: npx ampx sandbox --stream-function-logs (Process ID: npx-backend)
207
+ [2024-01-15T10:30:51.456Z] [npx-backend] [INFO] Amplify sandbox starting...
208
+ [2024-01-15T10:30:52.123Z] [npx-backend] Process exited with code 0 and signal null
158
209
  ```
159
210
 
211
+ ### Process ID Generation
212
+ The server automatically generates intelligent process IDs based on the command and output file:
213
+ - Command: `npm run dev` + Output: `frontend.log` → Process ID: `npm-frontend`
214
+ - Command: `npx ampx sandbox --stream-function-logs` + Output: `backend.log` → Process ID: `npx-backend`
215
+ - Duplicate IDs are automatically suffixed with `-1`, `-2`, etc.
216
+
160
217
  ## Common Use Cases
161
218
 
162
219
  ### 1. Debugging Build Failures
@@ -192,6 +249,19 @@ dev_start_log_streaming {
192
249
  dev_restart_log_streaming { "clearLogs": true }
193
250
  ```
194
251
 
252
+ ### 5. Amplify Development Workflow
253
+ ```bash
254
+ # Start Amplify backend logging
255
+ dev_start_log_streaming {
256
+ "command": "npx ampx sandbox --stream-function-logs",
257
+ "outputFile": "backend-logs.txt",
258
+ "processId": "amplify-backend"
259
+ }
260
+
261
+ # Monitor Lambda function logs
262
+ dev_tail_logs { "processId": "amplify-backend", "filter": "ERROR|WARN", "lines": 100 }
263
+ ```
264
+
195
265
  ## Troubleshooting
196
266
 
197
267
  ### Dev Server Not Starting
@@ -210,12 +280,31 @@ dev_restart_log_streaming { "clearLogs": true }
210
280
  2. If that fails, the process may have crashed - check system process manager
211
281
  3. Restart Claude Code to clean up orphaned processes
212
282
 
283
+ ## Implementation Details
284
+
285
+ ### Process Management
286
+ - Uses Node.js `spawn` with `detached: true` for proper process isolation
287
+ - Implements graceful shutdown with SIGTERM signals
288
+ - Automatically removes event listeners on process termination to prevent memory leaks
289
+ - Attempts to kill process groups (`-pid`) to handle child processes
290
+
291
+ ### State Persistence
292
+ - Saves process state to `${tmpdir}/mcp-dev-logger.json`
293
+ - Restores process information on server restart (where possible)
294
+ - Handles process cleanup on server shutdown
295
+
296
+ ### Log Streaming
297
+ - Real-time streaming of both stdout and stderr
298
+ - Timestamped log entries with process ID tagging
299
+ - Error entries are clearly marked with `[ERROR]` prefix
300
+ - Supports concurrent logging from multiple processes to different files
301
+
213
302
  ## Limitations
214
303
 
215
- - Only one dev server can be managed at a time (default instance)
216
304
  - Process management is best-effort - some processes may not respond to signals
217
305
  - Very large log files may impact performance of `dev_tail_logs`
218
- - Only captures server-side console output (not browser console logs) - for browser logs, use the Playwright MCP server
306
+ - Only captures server-side console output (not browser console logs)
307
+ - Process state restoration is limited after server restarts (PIDs become invalid)
219
308
 
220
309
  ## Development
221
310
 
package/dist/index.js CHANGED
@@ -3,17 +3,22 @@ import { Server } from "@modelcontextprotocol/sdk/server/index.js";
3
3
  import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
4
4
  import { ListToolsRequestSchema, CallToolRequestSchema, } from "@modelcontextprotocol/sdk/types.js";
5
5
  import { z } from "zod";
6
- import { spawn } from "child_process";
7
- import { writeFileSync, readFileSync, existsSync, appendFileSync, copyFileSync } from "fs";
6
+ import { spawn, exec } from "child_process";
7
+ import { writeFileSync, readFileSync, existsSync, appendFileSync, copyFileSync, readdirSync, statSync, mkdirSync } from "fs";
8
8
  import { join, resolve } from "path";
9
9
  import { tmpdir } from "os";
10
+ import { promisify } from "util";
11
+ const execAsync = promisify(exec);
10
12
  // Schema definitions
11
13
  const StartLogStreamingArgsSchema = z.object({
12
14
  command: z.string().optional().describe("Dev command to run (default: npm run dev)"),
13
- outputFile: z.string().optional().describe("File to write logs to (default: dev-server-logs.txt)"),
15
+ outputFile: z.string().optional().describe("File to write logs to (DEPRECATED: use structuredLogging instead)"),
14
16
  cwd: z.string().optional().describe("Working directory"),
15
17
  env: z.record(z.string()).optional().describe("Environment variables"),
16
- processId: z.string().optional().describe("Custom process ID (auto-generated if not provided)")
18
+ processId: z.string().optional().describe("Custom process ID (auto-generated if not provided)"),
19
+ structuredLogging: z.boolean().optional().describe("Use organized logging with date-based sessions (default: true)"),
20
+ sessionDate: z.string().optional().describe("Session date for organized logging (YYYY-MM-DD, defaults to today)"),
21
+ logType: z.enum(["frontend", "backend", "amplify", "custom"]).optional().describe("Process type for standardized naming (auto-detected if not provided)")
17
22
  });
18
23
  const StopLogStreamingArgsSchema = z.object({
19
24
  processId: z.string().optional().describe("Process ID to stop (if not provided, stops all processes)")
@@ -31,6 +36,13 @@ const ClearLogsArgsSchema = z.object({
31
36
  processId: z.string().optional().describe("Process ID to clear logs for (if not provided, tries to find single process)"),
32
37
  backup: z.boolean().optional().describe("Backup logs before clearing (default: false)")
33
38
  });
39
+ const CheckRunningProcessesArgsSchema = z.object({
40
+ processType: z.enum(["frontend", "backend", "amplify", "custom"]).optional().describe("Type of process to check for conflicts"),
41
+ port: z.number().optional().describe("Specific port to check")
42
+ });
43
+ const DiscoverLogsArgsSchema = z.object({
44
+ sessionDate: z.string().optional().describe("Specific session date (YYYY-MM-DD) to discover logs for (defaults to most recent)")
45
+ });
34
46
  class DevLoggerServer {
35
47
  server;
36
48
  activeServers;
@@ -98,6 +110,286 @@ class DevLoggerServer {
98
110
  }
99
111
  return null;
100
112
  }
113
+ async checkPortInUse(port) {
114
+ try {
115
+ // Use lsof to check what's using the port
116
+ const { stdout } = await execAsync(`lsof -i :${port} -P -t`);
117
+ const pid = parseInt(stdout.trim());
118
+ if (pid) {
119
+ // Get command for this PID
120
+ try {
121
+ const { stdout: cmdStdout } = await execAsync(`ps -p ${pid} -o command=`);
122
+ return {
123
+ inUse: true,
124
+ pid: pid,
125
+ command: cmdStdout.trim()
126
+ };
127
+ }
128
+ catch {
129
+ return { inUse: true, pid: pid };
130
+ }
131
+ }
132
+ }
133
+ catch (error) {
134
+ // Port is not in use or lsof failed
135
+ }
136
+ return { inUse: false };
137
+ }
138
+ detectProcessType(command) {
139
+ const cmd = command.toLowerCase();
140
+ if (cmd.includes('next dev') || cmd.includes('npm run dev') || cmd.includes('yarn dev') || cmd.includes('pnpm dev') || cmd.includes('vite')) {
141
+ return 'frontend';
142
+ }
143
+ if (cmd.includes('ampx sandbox') || cmd.includes('amplify sandbox')) {
144
+ return 'amplify';
145
+ }
146
+ if (cmd.includes('node server') || cmd.includes('express') || cmd.includes('fastify') || cmd.includes('api')) {
147
+ return 'backend';
148
+ }
149
+ return 'custom';
150
+ }
151
+ getCommonPorts(processType) {
152
+ switch (processType) {
153
+ case 'frontend':
154
+ return [3000, 3001, 5173, 5174, 8080, 8081];
155
+ case 'backend':
156
+ return [3001, 8000, 8080, 4000, 5000];
157
+ case 'amplify':
158
+ return []; // Amplify doesn't typically use fixed ports
159
+ default:
160
+ return [3000, 3001, 5173, 5174, 8000, 8080, 8081, 4000, 5000];
161
+ }
162
+ }
163
+ async checkRunningProcesses(processType, specificPort) {
164
+ const conflicts = [];
165
+ const recommendations = [];
166
+ // Ports to check
167
+ const portsToCheck = specificPort ? [specificPort] : this.getCommonPorts(processType);
168
+ // Check each port
169
+ for (const port of portsToCheck) {
170
+ const portCheck = await this.checkPortInUse(port);
171
+ if (portCheck.inUse) {
172
+ const detectedType = portCheck.command ? this.detectProcessType(portCheck.command) : 'unknown';
173
+ conflicts.push({
174
+ port: port,
175
+ pid: portCheck.pid || 0,
176
+ command: portCheck.command || 'Unknown process',
177
+ processType: detectedType
178
+ });
179
+ recommendations.push(`Port ${port} is busy with ${detectedType} server (PID ${portCheck.pid})`);
180
+ }
181
+ }
182
+ // Find available ports
183
+ const allCommonPorts = [3000, 3001, 3002, 5173, 5174, 8000, 8080, 8081, 4000, 5000];
184
+ const busyPorts = conflicts.map(c => c.port);
185
+ const availablePorts = allCommonPorts.filter(port => !busyPorts.includes(port));
186
+ // Add recommendations
187
+ if (conflicts.length > 0 && availablePorts.length > 0) {
188
+ recommendations.push(`Consider using port ${availablePorts[0]} instead`);
189
+ recommendations.push(`Or stop the existing process first`);
190
+ }
191
+ if (conflicts.length === 0) {
192
+ recommendations.push('No conflicts detected - safe to start new processes');
193
+ }
194
+ return {
195
+ status: 'success',
196
+ conflicts,
197
+ availablePorts: availablePorts.slice(0, 5), // Limit to first 5 available
198
+ recommendations
199
+ };
200
+ }
201
+ detectLogProcessType(fileName) {
202
+ const name = fileName.toLowerCase();
203
+ if (name.includes('frontend') || name.includes('next') || name.includes('react') || name.includes('vite')) {
204
+ return 'frontend';
205
+ }
206
+ if (name.includes('backend') || name.includes('api') || name.includes('server')) {
207
+ return 'backend';
208
+ }
209
+ if (name.includes('amplify') || name.includes('ampx')) {
210
+ return 'amplify';
211
+ }
212
+ return 'custom';
213
+ }
214
+ getLogFilesFromDirectory(dirPath) {
215
+ if (!existsSync(dirPath)) {
216
+ return [];
217
+ }
218
+ const logFiles = [];
219
+ try {
220
+ const files = readdirSync(dirPath);
221
+ for (const file of files) {
222
+ // Skip non-log files and hidden files
223
+ if (!file.endsWith('.log') && !file.endsWith('.txt') || file.startsWith('.')) {
224
+ continue;
225
+ }
226
+ const filePath = join(dirPath, file);
227
+ const stats = statSync(filePath);
228
+ // Get line count for log files
229
+ let lineCount;
230
+ try {
231
+ const content = readFileSync(filePath, 'utf8');
232
+ lineCount = content.split('\n').filter(line => line.trim()).length;
233
+ }
234
+ catch {
235
+ // Ignore errors reading file content
236
+ }
237
+ logFiles.push({
238
+ fileName: file,
239
+ filePath: filePath,
240
+ processType: this.detectLogProcessType(file),
241
+ size: stats.size,
242
+ lastModified: stats.mtime,
243
+ lineCount
244
+ });
245
+ }
246
+ }
247
+ catch (error) {
248
+ // Directory read error - return empty array
249
+ }
250
+ return logFiles.sort((a, b) => b.lastModified.getTime() - a.lastModified.getTime());
251
+ }
252
+ async discoverLogs(sessionDate) {
253
+ const cwd = process.cwd();
254
+ const logsDir = join(cwd, 'logs');
255
+ // If logs directory doesn't exist, check current directory for log files
256
+ if (!existsSync(logsDir)) {
257
+ const currentDirLogs = this.getLogFilesFromDirectory(cwd);
258
+ if (currentDirLogs.length === 0) {
259
+ return {
260
+ status: 'no_logs_found',
261
+ availableSessions: [],
262
+ recommendedLogs: ['No log files found. Start a dev server to create logs.'],
263
+ totalSessions: 0
264
+ };
265
+ }
266
+ // Return current directory logs as a session
267
+ return {
268
+ status: 'success',
269
+ mostRecentSession: {
270
+ sessionDate: new Date().toISOString().split('T')[0],
271
+ logFiles: currentDirLogs,
272
+ totalFiles: currentDirLogs.length,
273
+ sessionPath: cwd
274
+ },
275
+ availableSessions: ['current'],
276
+ recommendedLogs: currentDirLogs.map(f => `${f.processType}: ${f.fileName} (${f.lineCount || 0} lines)`),
277
+ totalSessions: 1
278
+ };
279
+ }
280
+ // Discover date-based sessions in logs directory
281
+ const sessions = [];
282
+ let mostRecentSession;
283
+ try {
284
+ const entries = readdirSync(logsDir);
285
+ for (const entry of entries) {
286
+ const entryPath = join(logsDir, entry);
287
+ const stats = statSync(entryPath);
288
+ if (stats.isDirectory() && /^\d{4}-\d{2}-\d{2}$/.test(entry)) {
289
+ sessions.push(entry);
290
+ }
291
+ }
292
+ // Sort sessions by date (most recent first)
293
+ sessions.sort((a, b) => b.localeCompare(a));
294
+ // Get the target session (specified or most recent)
295
+ const targetSession = sessionDate || sessions[0];
296
+ if (targetSession && sessions.includes(targetSession)) {
297
+ const sessionPath = join(logsDir, targetSession);
298
+ const logFiles = this.getLogFilesFromDirectory(sessionPath);
299
+ mostRecentSession = {
300
+ sessionDate: targetSession,
301
+ logFiles,
302
+ totalFiles: logFiles.length,
303
+ sessionPath
304
+ };
305
+ }
306
+ }
307
+ catch (error) {
308
+ // Directory read error
309
+ }
310
+ const recommendedLogs = [];
311
+ if (mostRecentSession) {
312
+ if (mostRecentSession.logFiles.length === 0) {
313
+ recommendedLogs.push(`Session ${mostRecentSession.sessionDate} has no log files`);
314
+ }
315
+ else {
316
+ recommendedLogs.push(`Most recent session: ${mostRecentSession.sessionDate}`);
317
+ recommendedLogs.push(...mostRecentSession.logFiles.map(f => `${f.processType}: ${f.fileName} (${f.lineCount || 0} lines, ${Math.round(f.size / 1024)}KB)`));
318
+ }
319
+ }
320
+ else if (sessions.length === 0) {
321
+ recommendedLogs.push('No organized log sessions found. Logs will be created in logs/YYYY-MM-DD/ when you start dev servers.');
322
+ }
323
+ else {
324
+ recommendedLogs.push('No logs found in recent sessions. Start dev servers to generate logs.');
325
+ }
326
+ return {
327
+ status: sessions.length > 0 ? 'success' : 'no_sessions_found',
328
+ mostRecentSession,
329
+ availableSessions: sessions,
330
+ recommendedLogs,
331
+ totalSessions: sessions.length
332
+ };
333
+ }
334
+ createStructuredLogPath(command, sessionDate, logType) {
335
+ const cwd = process.cwd();
336
+ const today = new Date().toISOString().split('T')[0];
337
+ const targetDate = sessionDate || today;
338
+ // Create logs directory if it doesn't exist
339
+ const logsDir = join(cwd, 'logs');
340
+ const sessionDir = join(logsDir, targetDate);
341
+ if (!existsSync(logsDir)) {
342
+ mkdirSync(logsDir, { recursive: true });
343
+ }
344
+ if (!existsSync(sessionDir)) {
345
+ mkdirSync(sessionDir, { recursive: true });
346
+ }
347
+ // Determine log type and generate standardized filename
348
+ const detectedType = logType || this.detectProcessType(command);
349
+ const standardizedName = this.generateStandardizedLogName(detectedType, command);
350
+ return join(sessionDir, standardizedName);
351
+ }
352
+ generateStandardizedLogName(logType, command) {
353
+ // Standardized naming conventions to prevent confusion
354
+ const timestamp = new Date().toTimeString().split(' ')[0].replace(/:/g, '-');
355
+ switch (logType) {
356
+ case 'frontend':
357
+ if (command.includes('next'))
358
+ return `frontend-nextjs-${timestamp}.log`;
359
+ if (command.includes('vite'))
360
+ return `frontend-vite-${timestamp}.log`;
361
+ if (command.includes('react'))
362
+ return `frontend-react-${timestamp}.log`;
363
+ return `frontend-dev-${timestamp}.log`;
364
+ case 'backend':
365
+ if (command.includes('express'))
366
+ return `backend-express-${timestamp}.log`;
367
+ if (command.includes('fastify'))
368
+ return `backend-fastify-${timestamp}.log`;
369
+ if (command.includes('node'))
370
+ return `backend-node-${timestamp}.log`;
371
+ return `backend-api-${timestamp}.log`;
372
+ case 'amplify':
373
+ if (command.includes('sandbox'))
374
+ return `amplify-sandbox-${timestamp}.log`;
375
+ if (command.includes('deploy'))
376
+ return `amplify-deploy-${timestamp}.log`;
377
+ return `amplify-dev-${timestamp}.log`;
378
+ default:
379
+ // Extract first word of command for custom processes
380
+ const cmdName = command.split(' ')[0].replace(/[^a-zA-Z0-9]/g, '');
381
+ return `custom-${cmdName}-${timestamp}.log`;
382
+ }
383
+ }
384
+ shouldUseStructuredLogging(args) {
385
+ // Use structured logging by default unless explicitly disabled
386
+ // or if legacy outputFile is provided without structuredLogging flag
387
+ if (args.structuredLogging === false)
388
+ return false;
389
+ if (args.outputFile && args.structuredLogging !== true)
390
+ return false;
391
+ return true;
392
+ }
101
393
  killAllProcesses() {
102
394
  for (const [id, info] of this.activeServers) {
103
395
  try {
@@ -133,7 +425,7 @@ class DevLoggerServer {
133
425
  const tools = [
134
426
  {
135
427
  name: "dev_start_log_streaming",
136
- description: "Start development server and stream logs to file (supports multiple concurrent processes)",
428
+ description: "Start development server with organized logging (logs/YYYY-MM-DD/). Supports structured sessions and standardized file naming.",
137
429
  inputSchema: {
138
430
  type: "object",
139
431
  properties: {
@@ -143,7 +435,7 @@ class DevLoggerServer {
143
435
  },
144
436
  outputFile: {
145
437
  type: "string",
146
- description: "File to write logs to (default: dev-server-logs.txt)"
438
+ description: "File to write logs to (DEPRECATED: use structuredLogging instead)"
147
439
  },
148
440
  cwd: {
149
441
  type: "string",
@@ -159,6 +451,19 @@ class DevLoggerServer {
159
451
  processId: {
160
452
  type: "string",
161
453
  description: "Custom process ID (auto-generated if not provided)"
454
+ },
455
+ structuredLogging: {
456
+ type: "boolean",
457
+ description: "Use organized logging with date-based sessions (default: true)"
458
+ },
459
+ sessionDate: {
460
+ type: "string",
461
+ description: "Session date for organized logging (YYYY-MM-DD, defaults to today)"
462
+ },
463
+ logType: {
464
+ type: "string",
465
+ enum: ["frontend", "backend", "amplify", "custom"],
466
+ description: "Process type for standardized naming (auto-detected if not provided)"
162
467
  }
163
468
  }
164
469
  }
@@ -252,6 +557,37 @@ class DevLoggerServer {
252
557
  }
253
558
  }
254
559
  }
560
+ },
561
+ {
562
+ name: "dev_check_running_processes",
563
+ description: "Check for running development processes that might conflict with new servers",
564
+ inputSchema: {
565
+ type: "object",
566
+ properties: {
567
+ processType: {
568
+ type: "string",
569
+ enum: ["frontend", "backend", "amplify", "custom"],
570
+ description: "Type of process to check for conflicts"
571
+ },
572
+ port: {
573
+ type: "number",
574
+ description: "Specific port to check"
575
+ }
576
+ }
577
+ }
578
+ },
579
+ {
580
+ name: "dev_discover_logs",
581
+ description: "Auto-discover available log files and sessions in organized directory structure",
582
+ inputSchema: {
583
+ type: "object",
584
+ properties: {
585
+ sessionDate: {
586
+ type: "string",
587
+ description: "Specific session date (YYYY-MM-DD) to discover logs for (defaults to most recent)"
588
+ }
589
+ }
590
+ }
255
591
  }
256
592
  ];
257
593
  return { tools };
@@ -263,8 +599,15 @@ class DevLoggerServer {
263
599
  case "dev_start_log_streaming": {
264
600
  const validatedArgs = StartLogStreamingArgsSchema.parse(args);
265
601
  const command = validatedArgs.command || "npm run dev";
266
- const outputFile = resolve(validatedArgs.outputFile || "dev-server-logs.txt");
267
602
  const cwd = resolve(validatedArgs.cwd || process.cwd());
603
+ // Determine output file path using structured logging or legacy approach
604
+ let outputFile;
605
+ if (this.shouldUseStructuredLogging(validatedArgs)) {
606
+ outputFile = this.createStructuredLogPath(command, validatedArgs.sessionDate, validatedArgs.logType);
607
+ }
608
+ else {
609
+ outputFile = resolve(validatedArgs.outputFile || "dev-server-logs.txt");
610
+ }
268
611
  // Generate or use provided process ID
269
612
  let processId = validatedArgs.processId || this.generateProcessId(command, outputFile);
270
613
  // Ensure unique process ID
@@ -834,6 +1177,40 @@ class DevLoggerServer {
834
1177
  throw new Error(`Failed to clear logs: ${error instanceof Error ? error.message : String(error)}`);
835
1178
  }
836
1179
  }
1180
+ case "dev_check_running_processes": {
1181
+ const validatedArgs = CheckRunningProcessesArgsSchema.parse(args);
1182
+ try {
1183
+ const result = await this.checkRunningProcesses(validatedArgs.processType, validatedArgs.port);
1184
+ return {
1185
+ content: [
1186
+ {
1187
+ type: "text",
1188
+ text: JSON.stringify(result, null, 2)
1189
+ }
1190
+ ]
1191
+ };
1192
+ }
1193
+ catch (error) {
1194
+ throw new Error(`Failed to check running processes: ${error instanceof Error ? error.message : String(error)}`);
1195
+ }
1196
+ }
1197
+ case "dev_discover_logs": {
1198
+ const validatedArgs = DiscoverLogsArgsSchema.parse(args);
1199
+ try {
1200
+ const result = await this.discoverLogs(validatedArgs.sessionDate);
1201
+ return {
1202
+ content: [
1203
+ {
1204
+ type: "text",
1205
+ text: JSON.stringify(result, null, 2)
1206
+ }
1207
+ ]
1208
+ };
1209
+ }
1210
+ catch (error) {
1211
+ throw new Error(`Failed to discover logs: ${error instanceof Error ? error.message : String(error)}`);
1212
+ }
1213
+ }
837
1214
  default:
838
1215
  throw new Error(`Unknown tool: ${name}`);
839
1216
  }
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@chinchillaenterprises/mcp-dev-logger",
3
- "version": "2.0.0",
3
+ "version": "2.0.1",
4
4
  "description": "MCP server for capturing and streaming development server output (npm run dev, etc.)",
5
5
  "main": "dist/index.js",
6
6
  "type": "module",
@@ -43,4 +43,4 @@
43
43
  "url": "https://github.com/ChinchillaEnterprises/ChillMCP.git",
44
44
  "directory": "mcp-dev-logger"
45
45
  }
46
- }
46
+ }