---
title: ToolRouter — Tool Detail
description: Detailed documentation for a ToolRouter tool including skills, parameters, and examples.
url: https://toolrouter.com/tools/web-search
---
# Web Search

Structured Google results across 11 types: web, news, images, videos, maps, places, reviews, shopping, academic papers, patents, and autocomplete. Returns clean data without HTML parsing. Essential for research and up-to-date information.

- **Version:** 0.02
- **Categories:** search, data

## Skills (11)

### Web Search (`search`)

Search Google and return structured results including organic listings, knowledge graph, answer box, People Also Ask, and related searches.

**Parameters:**

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `query` | string | Yes | Search query string |
| `country` | string | No | Country code for localized results (e.g. 'us', 'gb', 'de') [default: "us"] |
| `language` | string | No | Language code for results (e.g. 'en', 'es', 'fr') [default: "en"] |
| `num` | number | No | Number of results to return (10, 20, 50, or 100) [default: 10] |
| `page` | number | No | Page number for pagination (starts at 1) [default: 1] |
| `timeRange` | string | No | Time range filter — h (hour), d (day), w (week), m (month), y (year) (h, d, w, m, y) |

**Returns:** Organic results, knowledge graph, answer box, People Also Ask, and related searches

**Examples:**

*Search for a general topic:*

```json
{
  "query": "best project management tools 2025"
}
```

*Search with time filter for recent results:*

```json
{
  "query": "OpenAI news",
  "timeRange": "w"
}
```

### Image Search (`image_search`)

Search Google Images and return an array of image results with titles, source URLs, and thumbnail links.

**Parameters:**

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `query` | string | Yes | Search query string |
| `country` | string | No | Country code for localized results (e.g. 'us', 'gb', 'de') [default: "us"] |
| `language` | string | No | Language code for results (e.g. 'en', 'es', 'fr') [default: "en"] |
| `num` | number | No | Number of results to return (10, 20, 50, or 100) [default: 10] |
| `page` | number | No | Page number for pagination (starts at 1) [default: 1] |

**Returns:** Array of image results with title, imageUrl, imageWidth, imageHeight, source, and link

**Examples:**

*Search for product images:*

```json
{
  "query": "iPhone 16 Pro wallpaper"
}
```

### News Search (`news_search`)

Search Google News and return an array of news articles with titles, snippets, publication dates, and source information.

**Parameters:**

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `query` | string | Yes | Search query string |
| `country` | string | No | Country code for localized results (e.g. 'us', 'gb', 'de') [default: "us"] |
| `language` | string | No | Language code for results (e.g. 'en', 'es', 'fr') [default: "en"] |
| `num` | number | No | Number of results to return (10, 20, 50, or 100) [default: 10] |
| `page` | number | No | Page number for pagination (starts at 1) [default: 1] |
| `timeRange` | string | No | Time range filter — h (hour), d (day), w (week), m (month), y (year) (h, d, w, m, y) |

**Returns:** Array of news articles with title, link, snippet, date, and source

**Examples:**

*Search for recent tech news:*

```json
{
  "query": "artificial intelligence regulation",
  "timeRange": "d"
}
```

### Video Search (`video_search`)

Search Google Videos and return an array of video results with titles, channels, durations, and thumbnail links.

**Parameters:**

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `query` | string | Yes | Search query string |
| `country` | string | No | Country code for localized results (e.g. 'us', 'gb', 'de') [default: "us"] |
| `language` | string | No | Language code for results (e.g. 'en', 'es', 'fr') [default: "en"] |
| `num` | number | No | Number of results to return (10, 20, 50, or 100) [default: 10] |
| `page` | number | No | Page number for pagination (starts at 1) [default: 1] |

**Returns:** Array of video results with title, link, snippet, channel, date, and duration

**Examples:**

*Search for tutorial videos:*

```json
{
  "query": "TypeScript generics tutorial"
}
```

### Maps Search (`maps_search`)

Search Google Maps and return an array of place results with names, addresses, ratings, coordinates, and business details.

**Parameters:**

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `query` | string | Yes | Search query string |
| `country` | string | No | Country code for localized results (e.g. 'us', 'gb', 'de') [default: "us"] |
| `language` | string | No | Language code for results (e.g. 'en', 'es', 'fr') [default: "en"] |
| `num` | number | No | Number of results to return (10, 20, 50, or 100) [default: 10] |
| `page` | number | No | Page number for pagination (starts at 1) [default: 1] |
| `location` | string | No | Location for geo-targeted results (e.g. 'New York, NY' or 'London, UK') |

**Returns:** Array of places with title, address, latitude, longitude, rating, and category

**Examples:**

*Search for nearby restaurants:*

```json
{
  "query": "best pizza",
  "location": "Brooklyn, NY"
}
```

### Places Search (`places_search`)

Search Google Places and return detailed place results with names, addresses, phone numbers, ratings, reviews count, and opening hours.

**Parameters:**

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `query` | string | Yes | Search query string |
| `country` | string | No | Country code for localized results (e.g. 'us', 'gb', 'de') [default: "us"] |
| `language` | string | No | Language code for results (e.g. 'en', 'es', 'fr') [default: "en"] |
| `num` | number | No | Number of results to return (10, 20, 50, or 100) [default: 10] |
| `page` | number | No | Page number for pagination (starts at 1) [default: 1] |
| `location` | string | No | Location for geo-targeted results (e.g. 'New York, NY' or 'London, UK') |

**Returns:** Array of places with title, address, phone, rating, reviewsCount, and hours

**Examples:**

*Find coffee shops in a city:*

```json
{
  "query": "specialty coffee",
  "location": "San Francisco, CA"
}
```

### Reviews Search (`reviews_search`)

Retrieve Google reviews for a specific place. Supports sorting by relevance, newest, highest, or lowest rating.

**Parameters:**

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `query` | string | Yes | Search query string |
| `country` | string | No | Country code for localized results (e.g. 'us', 'gb', 'de') [default: "us"] |
| `language` | string | No | Language code for results (e.g. 'en', 'es', 'fr') [default: "en"] |
| `placeId` | string | No | Google Place ID for the business (from maps or places search) |
| `sortBy` | string | No | Sort order for reviews (relevance, newest, highest, lowest) |

**Returns:** Reviews array with author, rating, date, and snippet, plus place summary

**Examples:**

*Get reviews for a restaurant:*

```json
{
  "query": "The French Laundry Yountville",
  "placeId": "ChIJaYb0r89VhYARFDAjD7qnXKA"
}
```

*Get newest reviews by Place ID:*

```json
{
  "query": "Eleven Madison Park",
  "placeId": "ChIJE4htTWBZwokRxpSBECI0BbQ",
  "sortBy": "newest"
}
```

### Shopping Search (`shopping_search`)

Search Google Shopping and return an array of product results with titles, prices, ratings, merchants, and product links.

**Parameters:**

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `query` | string | Yes | Search query string |
| `country` | string | No | Country code for localized results (e.g. 'us', 'gb', 'de') [default: "us"] |
| `language` | string | No | Language code for results (e.g. 'en', 'es', 'fr') [default: "en"] |
| `num` | number | No | Number of results to return (10, 20, 50, or 100) [default: 10] |
| `page` | number | No | Page number for pagination (starts at 1) [default: 1] |

**Returns:** Array of shopping results with title, price, source, link, rating, and delivery info

**Examples:**

*Search for a product to compare prices:*

```json
{
  "query": "Sony WH-1000XM5 headphones"
}
```

### Scholar Search (`scholar_search`)

Search Google Scholar and return academic papers with titles, authors, citation counts, publication year, and links.

**Parameters:**

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `query` | string | Yes | Search query string |
| `country` | string | No | Country code for localized results (e.g. 'us', 'gb', 'de') [default: "us"] |
| `language` | string | No | Language code for results (e.g. 'en', 'es', 'fr') [default: "en"] |
| `num` | number | No | Number of results to return (10, 20, 50, or 100) [default: 10] |
| `page` | number | No | Page number for pagination (starts at 1) [default: 1] |
| `year` | number | No | Filter results to papers published from this year onwards |

**Returns:** Array of academic results with title, link, snippet, citedBy count, year, and authors

**Examples:**

*Search for academic papers on a topic:*

```json
{
  "query": "transformer architecture attention mechanism"
}
```

*Search for recent papers only:*

```json
{
  "query": "large language model alignment",
  "year": 2024
}
```

### Patent Search (`patent_search`)

Search Google Patents and return patent results with titles, patent numbers, inventors, filing dates, and abstracts.

**Parameters:**

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `query` | string | Yes | Search query string |
| `country` | string | No | Country code for localized results (e.g. 'us', 'gb', 'de') [default: "us"] |
| `language` | string | No | Language code for results (e.g. 'en', 'es', 'fr') [default: "en"] |
| `num` | number | No | Number of results to return (10, 20, 50, or 100) [default: 10] |
| `page` | number | No | Page number for pagination (starts at 1) [default: 1] |

**Returns:** Array of patent results with title, patentNumber, snippet, priorityDate, and inventor

**Examples:**

*Search for patents in a domain:*

```json
{
  "query": "natural language processing neural network"
}
```

### Autocomplete (`autocomplete`)

Get Google autocomplete suggestions for a query prefix. Useful for keyword research, content ideation, and understanding search intent.

**Parameters:**

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `query` | string | Yes | Search query string |
| `country` | string | No | Country code for localized results (e.g. 'us', 'gb', 'de') [default: "us"] |
| `language` | string | No | Language code for results (e.g. 'en', 'es', 'fr') [default: "en"] |

**Returns:** Array of autocomplete suggestion strings

**Examples:**

*Get autocomplete suggestions for a partial query:*

```json
{
  "query": "how to build a"
}
```

## Quick Start

```bash
# Via CLI
TOOLROUTER_API_KEY=tr_live_xxx npx -y toolrouter-mcp call web-search search --query best project management tools 2025

# Via REST API
curl -H "Authorization: Bearer tr_live_xxx" \
     -d '{"tool":"web-search","skill":"search","input":{"query":"best project management tools 2025"}}' \
     https://api.toolrouter.com/v1/tools/call
```

## Frequently Asked Questions

### What kinds of search results can it return?

It can return web, news, images, videos, maps, places, reviews, shopping, academic papers, patents, and autocomplete results.

### Can I use it for current news or research?

Yes. It is built for research and up-to-date information.

### Does it support country-specific results?

Yes. The country_code setting controls the default country for localized queries.

### How is it different from scraping a search page?

It returns structured results directly, so you do not have to parse HTML search pages yourself.

---

## Get Started with ToolRouter

**Already connected?** Call any tool with `use_tool({ tool, skill, input })`. Browse tools with `discover` or visit https://toolrouter.com/llms-full.txt

**New to ToolRouter?** Connect with one command (no API key needed — auto-provisions on first use):

```bash
# MCP (Claude Code, Codex CLI)
claude mcp add toolrouter -- npx -y toolrouter-mcp

# MCP (Cursor, Windsurf, Cline, VS Code, Gemini CLI, Claude Desktop)
{"mcpServers":{"toolrouter":{"command":"npx","args":["-y","toolrouter-mcp"]}}}

# Claude Chat / Claude Cowork / Claude Mobile — add as a connector:
# Settings → Connectors → Add custom connector → URL: https://api.toolrouter.com/mcp

# ChatGPT — add as an app:
# Settings → Apps → Advanced settings → enable Developer mode → Create app → MCP Server URL: https://api.toolrouter.com/mcp

# CLI (works instantly, no restart needed)
npx -y toolrouter-mcp tools                    # browse all tools
npx -y toolrouter-mcp search "seo"             # search by keyword
npx -y toolrouter-mcp call seo analyze_page --url https://example.com
```

Free tools work immediately. For paid tools, visit https://toolrouter.com/claim to add credits.

All platforms: https://toolrouter.com/connect | Full catalog: https://toolrouter.com/llms-full.txt | Docs: https://toolrouter.com/docs