Skip to content

Inspect MCP traffic

Every message and every HTTP exchange. The debug screen shows the JSON-RPC traffic in both directions, per-request HTTP timing, the OAuth flow step by step, capabilities and notifications.

Ctrl+D, Ctrl+L or F12 opens it from the main screen or a tool form. Tab moves between its tabs:

TabShows
Generalthe mcp-tui log at every level
MCP Protocoleach JSON-RPC message in both directions, server requests and notifications, and the protocol watcher’s findings (a response arriving before an earlier one is noted as ORDER); Enter opens a message
HTTP Debugthe last 200 HTTP exchanges of the MCP transport, oldest first, one row each: time, method, status, duration, DNS/connect/TLS (or reused) and first-byte timings, and the URL; Enter opens one exchange’s request and response headers, Mcp-* included
Auththe OAuth flow step by step
Statisticsmessage, request, response, notification and error counts
Capabilitieswhat the server and client declared at the handshake
Notificationsthe notification stream; 1–8 filter by type (8 is task status), Space pauses

Ctrl+E exports the session as a JSON event log and a replay script.

Credentials are masked everywhere: Authorization, cookies, tokens and secrets in URLs. --show-headers lists header names to show verbatim in the HTTP tab.

Terminal window
mcp-tui --debug --url http://127.0.0.1:8931/mcp tool list

--debug raises the log to debug level on stderr: one line per HTTP exchange (component mcp-http) with its method, URL, status, duration and DNS/connect/TLS/first-byte timings, the SDK’s own log (sdk), each OAuth step (oauth, oauth-http), and every handshake attempt with the version it asked for. --log-level info gives the connection summary and the negotiated version without the per-message detail.

See the Debugging guide for common failure patterns.