mcp-log-proxy
a web logging proxy for MCP client-server communication
claude mcp add --transport stdio emicklei-mcp-log-proxy mcp-log-proxy -command melrose-mcp
How to use
mcp-log-proxy runs as a proxy layer that sits between an MCP client and an MCP server and exposes a web-based log viewer. It currently supports only the STDIO interface, meaning it captures messages exchanged over the standard input/output streams of the MCP server binary you point it at. The proxy itself is started with a -command that specifies the full command line for starting the MCP server, and it will display the live traffic in a web UI accessible at http://localhost:5656 by default. If you run multiple proxies, each will register as a separate instance and you can switch between them in the UI.
To use it, start the proxy by providing the full command for your target MCP server. For example, to proxy traffic to the melrose-mcp server, run mcp-log-proxy -command melrose-mcp. Ensure the target MCP tools are on your PATH. Once running, open http://localhost:5656 in your browser to view the live message log. You can customize the experience with optional flags like -port to change the web UI port, -title to change the page title, and -log to specify an error log file. When running multiple proxies, the tool will auto-pick ports if the default is taken, and you can switch between proxies from the UI.
How to install
Prerequisites:
- A working Go toolchain (for building or installing via go install) or Homebrew on macOS.
- Internet access to fetch dependencies.
Install via Homebrew (macOS):
- Tap the repository: brew tap "emicklei/tap"
- Install mcp-log-proxy: brew install emicklei/tap/mcp-log-proxy
Install via Go (binary):
- Ensure Go is installed and in your PATH.
- Install the latest release: go install github.com/emicklei/mcp-log-proxy@latest
Usage after install:
- Run: mcp-log-proxy -command <your-mcp-server-command> [options] Example: mcp-log-proxy -command melrose-mcp
- Access the web UI at http://localhost:5656 to view live MCP traffic.
- If you run multiple proxies, the UI will provide a selector to switch between instances.
Additional notes
Notes and tips:
- The -command flag must contain the full command line that starts your MCP server binary. The proxy will spawn that command and capture its STDIO traffic.
- Web UI defaults to port 5656; you can override with -port. If the port is in use, the proxy will auto-assign another available port for that instance.
- You can customize the UI title with -title and direct error logs to a file with -log.
- Proxy instances are recorded in ~/.mcp-log-proxy-instances.json so you can track and switch between multiple proxies from the web UI.
- The project currently focuses on STDIO-based MCP servers; other interfaces are not supported by this proxy at the moment.
Related MCP Servers
sandbox
A Model Context Protocol (MCP) server that enables LLMs to run ANY code safely in isolated Docker containers.
github-brain
An experimental GitHub MCP server with local database.
tasker
An MCP server for Android's Tasker automation app.
rod
Model Context Protocol Server of Rod
mcp
Teamwork.com MCP server
chromedp
MCP server for browser automation using chromedp