Skip to content

[BUG] input_schema does not support oneOf, allOf, or anyOf at the top level #4886

Closed as not planned

Description

@jason-riddle

Bug Description

I'm getting this 400 error message. It happens immediately after sending the first prompt.

$ claude 
╭───────────────────────────────────────────────────╮
│ ✻ Welcome to Claude Code!                         │
│                                                   │
│   /help for help, /status for your current setup  │
│                                                   │
│   cwd: /Users/jason/dotfiles                      │
╰───────────────────────────────────────────────────╯

> commit changes
API Error: 400 {"type":"error","error":{"type":"invalid_request_error",
    "message":"tools.36.custom.input_schema: input_schema does not support 
    oneOf, allOf, or anyOf at the top level"}}

Environment Info

  • Platform: darwin
  • Terminal: Apple_Terminal
  • Version: 1.0.65
  • Feedback ID:

Errors

[{"error":"Error: Command failed: security find-generic-password -a $USER -w -s \"Claude Code\"\nsecurity: SecKeychainSearchCopyNext: The specified item could not be found in the keychain.\n\n    at genericNodeError (node:internal/errors:983:15)\n    at wrappedFn (node:internal/errors:537:14)\n    at checkExecSyncError (node:child_process:892:11)\n    at execSync (node:child_process:964:15)\n    at t7 (file:///Users/jason/.npm-global/lib/node_modules/@anthropic-ai/claude-code/cli.js:867:5184)\n    at file:///Users/jason/.npm-global/lib/node_modules/@anthropic-ai/claude-code/cli.js:776:48379\n    at Q (file:///Users/jason/.npm-global/lib/node_modules/@anthropic-ai/claude-code/cli.js:674:14418)\n    at cJ (file:///Users/jason/.npm-global/lib/node_modules/@anthropic-ai/claude-code/cli.js:776:45817)\n    at jz (file:///Users/jason/.npm-global/lib/node_modules/@anthropic-ai/claude-code/cli.js:776:44684)\n    at W9 (file:///Users/jason/.npm-global/lib/node_modules/@anthropic-ai/claude-code/cli.js:776:51005)","timestamp":"2025-07-31T23:39:03.955Z"},{"error":"SyntaxError: Unexpected token '/', \"/usr/local\"... is not valid JSON\n    at JSON.parse (<anonymous>)\n    at file:///Users/jason/.npm-global/lib/node_modules/@anthropic-ai/claude-code/cli.js:771:9932\n    at Q (file:///Users/jason/.npm-global/lib/node_modules/@anthropic-ai/claude-code/cli.js:674:14418)\n    at xR0.<anonymous> (file:///Users/jason/.npm-global/lib/node_modules/@anthropic-ai/claude-code/cli.js:3065:120)\n    at xR0.B [as _actionHandler] (file:///Users/jason/.npm-global/lib/node_modules/@anthropic-ai/claude-code/cli.js:664:528)\n    at file:///Users/jason/.npm-global/lib/node_modules/@anthropic-ai/claude-code/cli.js:668:3127\n    at xR0._chainOrCall (file:///Users/jason/.npm-global/lib/node_modules/@anthropic-ai/claude-code/cli.js:668:1694)\n    at xR0._parseCommand (file:///Users/jason/.npm-global/lib/node_modules/@anthropic-ai/claude-code/cli.js:668:3103)\n    at xR0.parseAsync (file:///Users/jason/.npm-global/lib/node_modules/@anthropic-ai/claude-code/cli.js:665:4195)\n    at uw8 (file:///Users/jason/.npm-global/lib/node_modules/@anthropic-ai/claude-code/cli.js:3088:1224)","timestamp":"2025-07-31T23:39:03.998Z"},{"error":"Error: 400 {\"type\":\"error\",\"error\":{\"type\":\"invalid_request_error\",\"message\":\"tools.36.custom.input_schema: input_schema does not support oneOf, allOf, or anyOf at the top level\"}}\n    at t4.generate (file:///Users/jason/.npm-global/lib/node_modules/@anthropic-ai/claude-code/cli.js:1319:12486)\n    at TP.makeStatusError (file:///Users/jason/.npm-global/lib/node_modules/@anthropic-ai/claude-code/cli.js:1336:2101)\n    at TP.makeRequest (file:///Users/jason/.npm-global/lib/node_modules/@anthropic-ai/claude-code/cli.js:1336:5315)\n    at process.processTicksAndRejections (node:internal/process/task_queues:105:5)\n    at async KfB.qF1.showErrors (file:///Users/jason/.npm-global/lib/node_modules/@anthropic-ai/claude-code/cli.js:2981:14401)\n    at async qF1 (file:///Users/jason/.npm-global/lib/node_modules/@anthropic-ai/claude-code/cli.js:2463:5642)\n    at async KfB (file:///Users/jason/.npm-global/lib/node_modules/@anthropic-ai/claude-code/cli.js:2981:14252)\n    at async file:///Users/jason/.npm-global/lib/node_modules/@anthropic-ai/claude-code/cli.js:2981:9308\n    at async sM0 (file:///Users/jason/.npm-global/lib/node_modules/@anthropic-ai/claude-code/cli.js:2981:1689)\n    at async O11 (file:///Users/jason/.npm-global/lib/node_modules/@anthropic-ai/claude-code/cli.js:2981:9278)","timestamp":"2025-07-31T23:39:12.754Z"},{"error":"AxiosError: Request failed with status code 403\n    at AN (file:///Users/jason/.npm-global/lib/node_modules/@anthropic-ai/claude-code/cli.js:676:1077)\n    at Unzip.i1 (file:///Users/jason/.npm-global/lib/node_modules/@anthropic-ai/claude-code/cli.js:677:9955)\n    at Unzip.emit (node:events:519:35)\n    at Unzip.emit (node:domain:489:12)\n    at endReadableNT (node:internal/streams/readable:1701:12)\n    at process.processTicksAndRejections (node:internal/process/task_queues:90:21)\n    at VB1.request (file:///Users/jason/.npm-global/lib/node_modules/@anthropic-ai/claude-code/cli.js:679:2088)\n    at process.processTicksAndRejections (node:internal/process/task_queues:105:5)\n    at async X88 (file:///Users/jason/.npm-global/lib/node_modules/@anthropic-ai/claude-code/cli.js:1627:470)\n    at async Promise.all (index 0)\n    at async file:///Users/jason/.npm-global/lib/node_modules/@anthropic-ai/claude-code/cli.js:1613:6358","timestamp":"2025-07-31T23:39:42.940Z"}]

Activity

  1. changed the title [-]Invalid API Request: Missing Required Parameters[/-] [+][BUG] input_schema does not support oneOf, allOf, or anyOf at the top level[/+] on Jul 31, 2025
  2. github-actions commented on Jul 31, 2025

    @github-actions
  3. jason-riddle commented on Aug 1, 2025

    @jason-riddle
    Author

    Similar to #3383, the mcp-pandoc server is causing an issue, removing this line fixed the issue.

    {
      "mcpServers": {
        "pandoc": {
          "type": "stdio",
          "command": "uvx",
          "args": [
            "[email protected]"
          ],
          "env": {}
        }
      }
    }
    

    It could be related to vivekVells/mcp-pandoc#22, because I don't have pandoc installed, but it's not clear why this one specific mcp server is causing the original error message.

    Also, rather than removing the whole config, I would prefer to just disable this until it gets fixed either in claude code or in mcp-pandoc. It will be easy to disable without having to remove once #1774 is addressed.

  4. jumski commented on Oct 30, 2025

    @jumski

    Have the same issue on 2.0.29:

    > use cloud install command to downgrade version 2.0.28
      ⎿  API Error: 400 {"type":"error","error":{"type":"invalid_request_error","message":"tools.44.custom.input_schema: input_schema does not support oneOf, allOf, or anyOf at the top
         level"},"request_id":"req_011CUcu99U6muTxbcrKzWX1c"}
    
  5. github-actions commented on Dec 9, 2025

    @github-actions

    This issue has been inactive for 30 days. If the issue is still occurring, please comment to let us know. Otherwise, this issue will be automatically closed in 30 days for housekeeping purposes.

  6. noga-dev commented on Dec 12, 2025

    @noga-dev
      ⎿ API Error: 400 {"type":"error","error":{"type":"invalid_request_error","message":"tools.38.custom.input_schema: input_schema does not support oneOf, allOf, or anyOf at the top
         level"},"request_id":"req_011CW2kxLh72t9zyzqUGdobX"}
    
     ⎿ API Error: 400 {"type":"error","error":{"type":"invalid_request_error","message":"tools.40.custom.input_schema: input_schema does not support oneOf, allOf, or anyOf at the top
         level"},"request_id":"req_011CW2mMxqP4X4jzJVFLr7mS"}
    
  7. peteretelej commented on Jan 11, 2026

    @peteretelej

    Experiencing this issue if you have misconfigured MCP servers (may be cause by other misconfiguration on Claude config, but mcps are common culprit).

    I think Claude Code should try to self-heal when it gets this error by reviewing the project's configs. An example most likely cause is the custom config for the folder in use.

    If you're blocked by this, you can try opening Claude Code in a different folder (it's likely that only the current project is bugged). if it works, you can ask it to try fix the Claude config for the failing folder, or do it yourself manually (see below).

    Manually fixing;
    try ~/.claude.json (global) - back it up first, if you added any mcp, you can clear it and retry running Claude Code

    Find the specific project you're working on to find the mcpservers added to it.

    Image
  8. noga-dev commented on Jan 12, 2026

    @noga-dev

    Experiencing this issue if you have misconfigured MCP servers (may be cause by other misconfiguration on Claude config, but mcps are common culprit).

    I think Claude Code should try to self-heal when it gets this error by reviewing the project's configs. An example most likely cause is the custom config for the folder in use.

    If you're blocked by this, you can try opening Claude Code in a different folder (it's likely that only the current project is bugged). if it works, you can ask it to try fix the Claude config for the failing folder, or do it yourself manually (see below).

    Manually fixing; try ~/.claude.json (global) - back it up first, if you added any mcp, you can clear it and retry running Claude Code

    Find the specific project you're working on to find the mcpservers added to it.

    Image

    Doesn't make sense, why would it only error on specific tools (38 and 40) of the 70+ in the list?

  9. peteretelej commented on Jan 12, 2026

    @peteretelej

    Doesn't make sense, why would it only error on specific tools (38 and 40) of the 70+ in the list?

    I can only hypothesize an answer for this since I don't know about Claude Code internals.

    Claude Code has ~17 tools, then if you add mcpservers they would technically be added to this list.
    For example, what broke for me was my own mcp server largefile (https://github.com/peteretelej/largefile) which has 5 tools. so assuming different custom mcp tools are added onto the list then the 2 faulty "tools" could be in 1 misconfigured or non-responsive mcpserver
    (in may case the mcp server was not misconfigured, but just not ready - hadn't finished installing)

  10. github-actions commented on Feb 12, 2026

    @github-actions

    This issue has been automatically closed due to 60 days of inactivity. If you're still experiencing this issue, please open a new issue with updated information.

  11. marcindulak commented on Feb 12, 2026

    @marcindulak

    This issue was closed incorrectly despite recent human comments. This behavior of the bot is reported at #16497. Please upvote that issue, so maybe it gets noticed.

  12. github-actions commented on Feb 20, 2026

    @github-actions

    This issue has been automatically locked since it was closed and has not had any activity for 7 days. If you're experiencing a similar issue, please file a new issue and reference this one if it's relevant.

  13. locked as resolved and limited conversation to collaborators on Feb 20, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    area:toolsbugSomething isn't workingduplicateThis issue or pull request already existsplatform:macosIssue specifically occurs on macOS

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions