[BUG] MCP connector tools bound on Claude desktop but not surfaced on mobile chat surface
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?
Summary:
A registered MCP connector that works correctly on Claude desktop is not available on mobile chat surface. The connector's tools are not bound as callable functions here, so no tool invocation — and therefore no authenticated request to the server — ever occurs.
Affected connector: WMATA NearSight ([https://demo.nearsight.ai/mcp](https://demo.nearsight.ai/mcp)). Production NearSight ([https://mcp1.nearsight.ai/mcp](https://mcp1.nearsight.ai/mcp)) likely affected by the same surface gap.
Environment:
- Working: web surface — NearSight tools bound and callable, host injects bearer token, calls succeed.
- Broken: mobile browser — NearSight tools not surfaced/bound; no tool invocation occurs.
Expected behavior: Connectors registered to the account (Gmail,etc..), NearSight ×2) should be bound as callable tools across surfaces, with the host attaching the account's bearer token to each invocation as it does on desktop.
Actual behavior: Only Gmail tools are bound on this surface. NearSight (and the other connectors) appear as connected to the account but are not invocable. Because no tool binding exists, no call is made and no authenticated request reaches the server — it is not an auth rejection (no 401), it is the absence of the tool binding/transport entirely.
Reproduction:
- On Claude desktop and web, confirm WMATA NearSight connector works (e.g., request the tool list).
- On mobile chat surface, request the same tool list.
- Observe NearSight tools are unavailable; deferred-tool search returns only Gmail.(example)
Impact: Connector is unusable on this surface; no parity with desktop and web. Blocks any NearSight tool use (asset trajectory queries, etc.) outside the desktop client.
Notes: Direct HTTP fallback is also not viable from this surface — the server domain is outside the allowed network egress, and no token is available to attach. On mobile browser, NearSight tools are not offered as callable functions. Because no binding exists, no call is made and no authenticated request reaches the server — this is not an auth rejection (no 401); the tool binding/transport is simply absent for this connector on this surface.
What Should Happen?
Observe MCP NearSight tools are available. this was working in previous versions
Error Messages/Logs
Steps to Reproduce
A registered MCP connector that works correctly on Claude desktop is not available on mobile chat surface. The connector's tools are not bound as callable functions here, so no tool invocation — and therefore no authenticated request to the server — ever occurs.
Claude Model
Not sure / Multiple models
Is this a regression?
Yes, this worked in a previous version
Last Working Version
_No response_
Claude Code Version
mobile
Platform
Anthropic API
Operating System
Other
Terminal/Shell
Terminal.app (macOS)
Additional Information
Behavior Observed
The mobile client repeatedly completes the MCP discovery handshake but never proceeds to tool invocation. Instead it restarts the session every ~25 seconds:
- POST /mcp (session=null) → initialize → 200, new session assigned
- POST /mcp → notifications/initialized → 202
- POST /mcp → resources/list → 200
- POST /mcp → tools/list → 200
- POST /mcp → prompts/list → 200
- ← no tool call ever arrives →
- POST /mcp (session=null) → initialize → 200, NEW session (loop repeats)
This loop was observed repeating at least 3 times within a 2-minute window. The user sees "cannot reach server" in the mobile UI.
Additional anomaly: resources/list is sent twice within the same session with the same request id:1, suggesting a client-side retry/state issue during discovery.
---
What the server logs confirm
- Auth token is present (
Authorization: Bearer) on every single request — this is not an auth issue - All server responses are 200/202 — the server is handling everything correctly
- No tool call (
tools/call) POST ever arrives at the server - The same behavior reproduces across multiple fresh sessions
---
Expected Behavior
After completing discovery (tools/list, resources/list, prompts/list), the mobile client should send a tools/call POST when the user invokes a tool, consistent with how the desktop web client behaves.
MCP tool calls are completely non-functional on Claude mobile for Streamable HTTP connectors. The desktop web client works correctly against the identical server, confirming this is a mobile client regression.
Please let me know if you need the full server debug logs — I have timestamped traces covering multiple session restart cycles.
This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗