[#6] In-app MCP server log viewer #6

Closed
opened 2026-07-02 00:50:22 -04:00 by the_og · 0 comments
Owner

Problem

The most common "why won't my server show up" fix is manually tailing log files:

  • macOS: ~/Library/Logs/Claude/mcp-server-<name>.log
  • Windows: %APPDATA%\Claude\logs\mcp.log

This is consistently the next step after config is confirmed valid — which is exactly where BCC's diagnostics currently stop. Users have to drop to a terminal to see logs.

Proposed solution

Add a View logs action per server that opens (or tails inline in a panel) the platform-appropriate log file for that server. Pairs naturally with the spawn-test (#2).

  • Core: a function server_log_path(name: str) -> Path | None in bcc_core.py that returns the platform-specific path (or None if it doesn't exist yet).
  • GUI: View logs button per server row; opens the file in a scrollable read-only panel with auto-tail; gracefully says "no log yet" if the file doesn't exist.

Acceptance criteria

  • Button appears per server in the GUI.
  • Opens/tails the correct platform-specific log path.
  • Gracefully handles "no log yet."
  • server_log_path() has unit tests for each platform path.

Relevant code

  • New — pairs naturally with check_dependency/diagnostics_text in bcc_core.py
  • See also issue #2 (spawn-test) — the stderr from a crash is the same information as the log
## Problem The most common "why won't my server show up" fix is manually tailing log files: - macOS: `~/Library/Logs/Claude/mcp-server-<name>.log` - Windows: `%APPDATA%\Claude\logs\mcp.log` This is consistently the *next* step after config is confirmed valid — which is exactly where BCC's diagnostics currently stop. Users have to drop to a terminal to see logs. ## Proposed solution Add a **View logs** action per server that opens (or tails inline in a panel) the platform-appropriate log file for that server. Pairs naturally with the spawn-test (#2). - Core: a function `server_log_path(name: str) -> Path | None` in `bcc_core.py` that returns the platform-specific path (or `None` if it doesn't exist yet). - GUI: **View logs** button per server row; opens the file in a scrollable read-only panel with auto-tail; gracefully says "no log yet" if the file doesn't exist. ## Acceptance criteria - Button appears per server in the GUI. - Opens/tails the correct platform-specific log path. - Gracefully handles "no log yet." - `server_log_path()` has unit tests for each platform path. ## Relevant code - New — pairs naturally with `check_dependency`/`diagnostics_text` in `bcc_core.py` - See also issue #2 (spawn-test) — the stderr from a crash is the same information as the log
the_og added the P1 label 2026-07-02 00:50:22 -04:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: the_og/better-claude-config#6