[BUG] [CLI] No way to reconnect/refresh MCP tools without ending the session — blocking under Remote Control

Resolved 💬 4 comments Opened May 19, 2026 by oktubr3 Closed May 23, 2026

Preflight Checklist

  • [x] I have searched existing issues and this hasn't been reported yet
  • [x] This is a single bug report (please file separate reports for different bugs)
  • [x] I am using the latest version of Claude Code

What's Wrong?

Under Remote Control, the /mcp slash command is disabled (/mcp isn't available
over Remote Control.
). There is no Bash-side equivalent that re-handshakes a
connected MCP server and re-enumerates its tools within the running session.

As a result, if an HTTP MCP server is restarted, rebuilt, or registers a new
tool while a session is active, the in-session tool catalog stays frozen at
the boot-time snapshot. claude mcp list reports ✓ Connected, the server
itself responds correctly to a fresh client (curl, a new claude invocation),
but the deferred tool list inside the live session does not refresh.

The combination — slash command disabled + no CLI escape hatch — means any
MCP change mid-session is effectively lost until the session is restarted,
which under Remote Control often is not possible from the controlling device.

What Should Happen?

Either:

  1. Enable /mcp under Remote Control. The command only manipulates the MCP

connection and tool list — it does not require terminal PTY features that
Remote Control filters out.

  1. Add claude mcp reconnect <name> (or claude mcp refresh) as a Bash-side

subcommand. Today claude mcp remove + add updates the on-disk config and
claude mcp list reports ✓ Connected, but the in-session tool cache is
untouched.

  1. Auto-refresh on MCP tools/list_changed notifications (already part of the

MCP spec — many servers can emit it).

Any one of these would unblock Remote Control users.

Error Messages/Logs

$ /mcp
/mcp isn't available over Remote Control.

$ claude mcp list
binance: http://127.0.0.1:3000/mcp (HTTP) - ✓ Connected

# Server is healthy:
$ curl -s http://127.0.0.1:3000/
{"name":"binance-mcp-server","version":"4.0.0","protocol":"2025-11-25","transport":"streamable-http","tools":70}

# But the session sees the older tool list (frozen at boot).
# Even after `claude mcp remove binance && claude mcp add ...`, the live session
# still does not see the new tools.

Steps to Reproduce

  1. From a controlling device, start a Claude Code session via Remote Control

on a Mac that hosts a local MCP HTTP server (e.g. http://127.0.0.1:3000/mcp).

  1. With the session live, on the host machine:
  • Rebuild and restart the MCP server so new tools are registered.
  • (Example: cd functions && npx tsc && pm2 restart binance-mcp)
  • Server now exposes N+K tools and responds correctly to curl / new clients.
  1. In the live session, try /mcp

→ response: /mcp isn't available over Remote Control.

  1. In the live session, try refreshing via Bash:

Claude Model

None

Is this a regression?

No, this never worked

Last Working Version

_No response_

Claude Code Version

2.1.143 (Claude Code)

Platform

Anthropic API

Operating System

macOS

Terminal/Shell

Terminal.app (macOS)

Additional Information

Setup context:

  • Host machine: macOS 26.3.1, Apple Silicon
  • Local MCP: HTTP transport on 127.0.0.1:3000 (Streamable HTTP 2025-11-25)
  • Session driven by Remote Control from a remote device (claude.ai/code web client)
  • Shell on host: zsh

This blocks an iterative MCP development workflow: edit server → rebuild → see
the new tools in the same session. The cache-at-session-start behavior is fine
as a default, but with /mcp disabled under Remote Control there is no escape
hatch at all.

Suggested fix priority:

  1. (lowest cost) Enable /mcp under Remote Control — it doesn't seem to need

any feature Remote Control restricts.

  1. Add claude mcp reconnect <name> CLI for both modes.
  2. Subscribe to MCP tools/list_changed (spec-defined).

Happy to test any patch.

View original on GitHub ↗

This issue has 4 comments on GitHub. Read the full discussion on GitHub ↗