Skip to Content
Developer GuideToolsWeb Search

Web Search

Qwen Code supports web search capabilities through MCP (Model Context Protocol) integrations. Rather than a built-in search tool, web search is provided by connecting to external MCP servers, giving you full flexibility to choose the search service that best fits your needs.

⚠️ Breaking Change: Built-in web_search Tool Removed

Affected versions: V0.0.7+ through the last release with built-in web search support.

The built-in web_search tool and all its associated configuration have been removed. If you were using any of the following, you should migrate to the MCP-based approach described in this document:

RemovedWhat to do
webSearch block in settings.jsonConfigure an MCP server in mcpServers instead (see below)
advanced.tavilyApiKey in settings.jsonUse the Tavily MCP server
TAVILY_API_KEY environment variableUse the Tavily MCP server
DASHSCOPE_API_KEY for web searchUse the Alibaba Cloud Bailian WebSearch MCP
GLM_API_KEY for web searchUse the GLM WebSearch Prime MCP
--tavily-api-key / --glm-api-key / --dashscope-api-key CLI flagsConfigure via mcpServers in settings.json

Migration Examples

Before (Tavily via built-in tool):

{ "webSearch": { "provider": [{ "type": "tavily", "apiKey": "tvly-xxx" }], "default": "tavily" } }

After (Tavily via MCP):

{ "mcpServers": { "tavily": { "httpUrl": "https://mcp.tavily.com/mcp/?tavilyApiKey=tvly-xxx" } } }

Before (DashScope via built-in tool):

{ "webSearch": { "provider": [{ "type": "dashscope", "apiKey": "sk-xxx" }], "default": "dashscope" } }

After (Alibaba Cloud Bailian WebSearch via MCP):

{ "mcpServers": { "WebSearch": { "httpUrl": "https://dashscope.aliyuncs.com/api/v1/mcps/WebSearch/mcp", "headers": { "Authorization": "Bearer sk-xxx" } } } }

Supported MCP Web Search Services

The official web search MCP service provided by Alibaba Cloud Bailian platform, powered by DashScope.

Setup

Method 1: CLI command

qwen mcp add WebSearch \ -t http \ "https://dashscope.aliyuncs.com/api/v1/mcps/WebSearch/mcp" \ -H "Authorization: Bearer ${DASHSCOPE_API_KEY}"

Method 2: settings.json

{ "mcpServers": { "WebSearch": { "httpUrl": "https://dashscope.aliyuncs.com/api/v1/mcps/WebSearch/mcp", "headers": { "Authorization": "Bearer ${DASHSCOPE_API_KEY}" } } } }

Replace ${DASHSCOPE_API_KEY} with your actual API key, or set it as an environment variable so Qwen Code picks it up automatically.


Tavily WebSearch

A production-ready MCP server providing real-time web search, extract, map, and crawl capabilities.

Available Tools

  • tavily_search — Real-time web search
  • tavily_extract — Intelligent data extraction from web pages
  • tavily_map — Create a structured map of a website
  • tavily_crawl — Systematically explore websites

Setup

Method 1: CLI command (Remote MCP)

qwen mcp add tavily \ -t http \ "https://mcp.tavily.com/mcp/?tavilyApiKey=${TAVILY_API_KEY}"

Method 2: settings.json (Remote MCP)

{ "mcpServers": { "tavily": { "httpUrl": "https://mcp.tavily.com/mcp/?tavilyApiKey=${TAVILY_API_KEY}" } } }

Replace ${TAVILY_API_KEY} with your actual API key, or set it as an environment variable.

Method 3: settings.json (Local NPX)

{ "mcpServers": { "tavily-mcp": { "command": "npx", "args": ["-y", "tavily-mcp@latest"], "env": { "TAVILY_API_KEY": "your-api-key-here" } } } }

GLM WebSearch Prime (ZhipuAI)

The official web search Remote MCP service provided by ZhipuAI (智谱AI), designed for GLM Coding Plan users. Provides real-time web search including news, stock prices, weather, and more.

Available Tools

  • webSearchPrime — Web search returning page title, URL, summary, site name, and favicon

Setup

Method 1: CLI command

qwen mcp add web-search-prime \ -t http \ "https://open.bigmodel.cn/api/mcp/web_search_prime/mcp" \ -H "Authorization: Bearer ${GLM_API_KEY}"

Method 2: settings.json

{ "mcpServers": { "web-search-prime": { "httpUrl": "https://open.bigmodel.cn/api/mcp/web_search_prime/mcp", "headers": { "Authorization": "Bearer ${GLM_API_KEY}" } } } }

Replace ${GLM_API_KEY} with your actual ZhipuAI API key, or set it as an environment variable.


Last updated on