[BUG] MCP Tool Calls Failing to Provide Arguments
Environment
- Platform (select one):
- [X] Anthropic API
- [ ] AWS Bedrock
- [ ] Google Vertex AI
- [ ] Other: <!-- specify -->
- Claude CLI version: 1.0.48
- Operating System: Windows 11, WSL (Ubuntu 24.04.2)
- Terminal: Windows Terminal
Bug Description
Creating a new issue as the other thread I responded to did not have any contributor interaction or assignee and hoping this problem gets some attention as it's a critical workflow bug.
Random tool calls are run as expected and others simply aren't getting passed any arguments. Number of arguments defined for the tool call don't seem to matter, e.g. different tool calls with identical params (same names and/or types) seem to arbitrarily succeed or fail.
I went ahead and updated the MCP tools that had one only one arg to require at least two, and that seemed to resolve a lot of the problems with CC using those tools properly, but it's an imperfect workaround. It often/randomly still just fails to pass any args, all of which are flagged as required.
I updated to latest CC (1.0.48) hoping for the best, but no such luck. The worst part of these failures is as soon as it fails it just immediately begins bludgeoning the MCP server repeatedly without any args, I have to carefully monitor it instead of letting it run with tasks so I can kill the process. Once it gets into this state, it does not evaluate the errors returned from the MCP that explicitly state the issue or attempt to alter its behavior.
Steps to Reproduce
- Create an MCP toolset
- Prompt CC with a task that requires using the MCP tool
- Repeat until failure
Expected Behavior
Tool calls provide required args or react appropriately to failed tool calls.
Actual Behavior
Repeats the tool call over and over with no changes to args until interrupted.
Additional Context
Working example:
● moo - moo_get_object_info (MCP)(object: "#4930", detailed: true)
⎿ {
"api_version": "1.0",
"object_info": [
"Object ID: #4930",
<etc>
Failing example of same tool usage call:
Start by examining all the top-level tier objects (the keys in the structure):
#4930, #4931, #4932, #4933, #4934, #4935, #4936, #4937, #4938, #4939, #4940,
#4941, #4942, #4943, #5025)
⎿ {
"api_version": "1.0",
"error": "Missing 'object' parameter",
"timestamp": 1752165998
}
{
"api_version": "1.0",
"error": "Missing 'object' parameter",
"timestamp": 1752165998
}
{
"api_version": "1.0",
"error": "Missing 'object' parameter",
"timestamp": 1752165998
}
{
"api_version": "1.0",
"error": "Missing 'object' parameter",
"timestamp": 1752165999
}
<...etc until interrupted...>This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗