Skip to content

The model cannot discover any tools - Codex

Quick fix

Upgrade cc-switch past 3.16.1 and edit cc-switch-model-catalog.json to set supports_search_tool to false for the DeepSeek models.

Error output
在 codex 中要求大模型调用 mcp 工具,大模型无法发现任何工具
English translation

Asking the model to call an mcp tool in codex, the model cannot discover any tools

In cc-switch 3.16.0 and other early versions, some chat interfaces (deepseek, glm) cannot handle custom MCP tools properly and fail to inject the tool descriptions into the prompt context; this was fixed in 3.16.1. In later versions such as 3.19.2, however, the cc-switch-model-catalog.json config file wrongly sets the supports_search_tool property to true for the deepseek-v4-pro and deepseek-v4-flash models. Codex then assumes the model supports tool_search and loads the MCP tools lazily, but DeepSeek does not actually support that officially, so the tool calls fail.

  1. Update cc-switch to 3.16.1 or newer to fix the basic MCP injection problem on the chat interface.

  2. Open the cc-switch-model-catalog.json config file, find the deepseek-v4-pro and deepseek-v4-flash models, and change their supports_search_tool property to false.

    // cc-switch-model-catalog.json
    {
    "deepseek-v4-pro": {
    "supports_search_tool": false
    },
    "deepseek-v4-flash": {
    "supports_search_tool": false
    }
    }
ToolCodex
Version3.16.0 - 3.19.2
PlatformsmacOSWindows
I tried using cpa to convert the deepseek chat endpoint into a responses endpoint — why does MCP still not work?
Converting the endpoint alone does not address the root cause. On version 3.16.0 you need to upgrade to 3.16.1; on 3.19.2 you need to change the supports_search_tool setting in cc-switch-model-catalog.json by hand.

This is an unofficial community wiki with no affiliation to the cc-switch authors or the project itself. Its content is compiled from the project's public GitHub issues. This site distributes no software.