Claude Desktop: MCP tool calls shown in UI but never sent to server

Resolved 💬 9 comments Opened Feb 1, 2026 by eugeniawang Closed Feb 3, 2026

Description

Claude Desktop shows tool calls in the UI (spinner appears) but the tools/call JSON-RPC message is never sent to the MCP server. The server initializes correctly and responds to tools/list, but tool calls never arrive.

Environment

  • macOS Darwin 25.2.0
  • Claude Desktop (latest as of Jan 31, 2026)
  • Custom Python MCP server using mcp SDK v1.26.0

Steps to Reproduce

  1. Configure a custom Python MCP server in claude_desktop_config.json
  2. Restart Claude Desktop - server initializes successfully
  3. Ask Claude to use one of the server's tools
  4. UI shows the tool being called (spinner appears)
  5. Tool call never reaches the server

Evidence from Logs

Server initializes and lists tools successfully:

[mcp-gmail] Module starting...
[mcp-gmail] stdio_server connected, running server...
[mcp-gmail] list_tools called
Message from server: {"jsonrpc":"2.0","id":1,"result":{"tools":[...]}}

But no tools/call message ever appears in logs. Another MCP server (projects, similar Python setup) DOES receive tool calls correctly.

Workaround

Running the same MCP server code directly via CLI works perfectly - the issue is specific to Claude Desktop's tool call routing.

Additional Context

  • Tried multiple config formats (module vs direct script)
  • Tried with only the affected server enabled
  • Server works perfectly when tested independently
  • Other MCP servers (projects) receive tool calls fine

View original on GitHub ↗

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