Commit Graph

3 Commits

Author SHA1 Message Date
Claude4Ξlope 5aacf468a4 Fix MCP initialization timeout and add daemon management
- Fix protocol version mismatch (0.1.0 -> 2024-11-05)
- Fix server mode blocking on startup causing Claude Desktop timeout
- Add --version flag to show version information
- Implement proper daemon cleanup when starting new daemon
- Add kill_daemon_with_children() to properly terminate process tree
- Fix dictionary iteration error during shutdown
- Ensure sparse mode is always enabled (3 tools only)
- Fix async stdin reading in base server to prevent EOF loops
- Add syslog support for server mode logging
- Switch from stdin.read() to readline() for proper JSON-RPC handling
- Add comprehensive MCP protocol test suite

The tool now works correctly as an MCP proxy between Claude Desktop
and MCP servers with additional built-in tools.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-27 22:00:32 +02:00
Claude4Ξlope 1bb1d05715 Replace debug output with proper logging framework
- Added comprehensive logging system with configurable levels
  - TRACE: Shows raw JSON-RPC I/O with server names
  - DEBUG: Detailed operational logging
  - INFO/WARNING/ERROR: Standard logging levels

- New command line options:
  - --log-level: Set logging level (TRACE/DEBUG/INFO/WARNING/ERROR)
  - --log-file: Log to file instead of stderr

- Improved error handling and timeouts:
  - Initial server discovery timeout reduced to 3 seconds
  - Servers marked as offline for 30 minutes after failure
  - Better error messages with server context

- All debug output now goes to stderr, keeping stdout clean for JSON

Example usage:
  mcp-browser --log-level TRACE tools-list  # See raw I/O
  mcp-browser --debug --log-file debug.log  # Debug to file

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-27 16:24:24 +02:00
Claude4Ξlope 4a7d3cdc7f Add daemon mode and improve debug output
- Implement socket-based daemon mode using Unix domain sockets
  - Allows multiple clients to connect to a single MCP Browser instance
  - Supports automatic daemon detection and connection
  - Added --daemon-start, --daemon-stop, --daemon-status commands

- Improve debug output handling
  - All debug output now goes to stderr instead of stdout
  - Added debug_print() and debug_json() utilities
  - Debug messages show before and after server communication

- Fix builtin-only mode handling
  - Properly route tools/list and tools/call when no external server
  - Apply sparse mode filtering to builtin server tools

- Improve JSON-RPC command output
  - Raw jsonrpc command now outputs proper JSON for piping
  - Other commands use human-friendly formatting

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-27 15:56:05 +02:00