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

Search millions of live job listings worldwide, filter by location, type, experience, and recency, then pull full descriptions. Get salary ranges for any role and location, or look up what a specific company pays. Built for job seekers, recruiters, and compensation research.

- **Version:** 0.02
- **Categories:** data, productivity
- **Workflow:** search_jobs → get_job_details → estimate_salary → company_salary

## Skills (4)

### Search Jobs (`search_jobs`)

Find job openings by role, keyword, or location in any country. Filter by remote, employment type, experience level, and recency to narrow down the right opportunities.

**Parameters:**

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `query` | string | Yes | Job search query — include job title and location (e.g. "software engineer in Berlin", "data analyst remote") |
| `page` | integer | No | Page number (1-50, each page has up to 10 results) [default: 1] |
| `num_pages` | integer | No | Number of pages to return (1-10). Each page counts as one API credit. [default: 1] |
| `country` | string | No | ISO 3166-1 alpha-2 country code (e.g. "us", "gb", "de", "au", "in", "ca", "fr", "jp"). Required for country-specific results. |
| `date_posted` | string | No | Filter by when the job was posted (all, today, 3days, week, month) [default: "all"] |
| `remote_only` | boolean | No | Only return remote / work-from-home jobs [default: false] |
| `employment_types` | string | No | Comma-separated employment types to filter by (e.g. "FULLTIME", "FULLTIME,CONTRACTOR") (FULLTIME, CONTRACTOR, PARTTIME, INTERN, FULLTIME,CONTRACTOR, FULLTIME,PARTTIME, PARTTIME,INTERN) |
| `experience_level` | string | No | Filter by experience requirements (under_3_years_experience, more_than_3_years_experience, no_experience, no_degree) |
| `location` | string | No | Specific location for the search origin (e.g. "New York, United States", "Mumbai, India") |
| `language` | string | No | ISO 639 language code for results (e.g. "en", "de", "fr", "es", "ja"). Defaults to the primary language of the specified country. |
| `radius` | number | No | Search radius in kilometers from the location specified in the query |
| `exclude_publishers` | string | No | Comma-separated job publishers to exclude from results (e.g. "BeeBe,Dice") |

**Returns:** Matching jobs with company info, pay, qualifications, and direct links to apply

**Examples:**

*What developer jobs are open in Chicago right now?:*

```json
{
  "query": "developer jobs in chicago",
  "country": "us"
}
```

*I need a remote marketing manager role in the UK:*

```json
{
  "query": "marketing manager",
  "country": "gb",
  "remote_only": true
}
```

*Show me entry-level data analyst jobs in Berlin posted this week:*

```json
{
  "query": "data analyst in Berlin",
  "country": "de",
  "date_posted": "week",
  "experience_level": "no_experience"
}
```

*Find full-time software engineering positions in Bangalore:*

```json
{
  "query": "software engineer in Bangalore",
  "country": "in",
  "employment_types": "FULLTIME"
}
```

*Any contract UX design gigs near Sydney?:*

```json
{
  "query": "UX designer in Sydney",
  "country": "au",
  "employment_types": "CONTRACTOR",
  "radius": 50
}
```

### Get Job Details (`get_job_details`)

Pull up the full listing for a job you found in search results. Use this when you need the complete description, requirements, or application details before deciding to apply.

**Parameters:**

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `job_id` | string | Yes | Job ID from search_jobs results (e.g. "adBqCPEBAAAAAAAAAAAA==") |

**Returns:** The complete job posting with full description, requirements, benefits, and how to apply

**Examples:**

*Show me the full posting for this job I found:*

```json
{
  "job_id": "adBqCPEBAAAAAAAAAAAA=="
}
```

*What are the requirements and benefits for this role?:*

```json
{
  "job_id": "xYz123ABcDeFgHiJkLm=="
}
```

### Estimate Salary (`estimate_salary`)

Look up what a role typically pays in a given location. Helpful for benchmarking compensation, preparing for negotiations, or comparing pay across cities.

**Parameters:**

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `job_title` | string | Yes | Job title to estimate salary for (e.g. "Software Engineer", "Product Manager", "Nurse") |
| `location` | string | Yes | City, state, or country for the salary estimate (e.g. "New York, NY", "London, UK", "Toronto, Canada") |
| `radius` | number | No | Search radius in kilometers around the location (default 100) [default: 100] |

**Returns:** Salary range with low, median, and high pay for the role in that area

**Examples:**

*What do software engineers make in San Francisco?:*

```json
{
  "job_title": "Software Engineer",
  "location": "San Francisco, CA"
}
```

*How much do nurses earn in London?:*

```json
{
  "job_title": "Nurse",
  "location": "London, UK"
}
```

*What is the salary range for product managers in Tokyo?:*

```json
{
  "job_title": "Product Manager",
  "location": "Tokyo, Japan",
  "radius": 50
}
```

### Company Job Salary (`company_salary`)

Check what a specific company pays for a given role. Use this when researching an employer before applying or when preparing a compensation negotiation.

**Parameters:**

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `company` | string | Yes | Company name to look up salaries for (e.g. "Google", "Amazon", "Deloitte", "NHS") |
| `job_title` | string | No | Optional job title to filter salary data (e.g. "Software Engineer", "Product Manager") |
| `location` | string | No | Optional location to scope results (e.g. "San Francisco, CA", "London, UK") |
| `radius` | number | No | Search radius in kilometers around the location (default 100) [default: 100] |

**Returns:** What the company pays for the role, with low, median, and high salary data

**Examples:**

*How much does Google pay software engineers?:*

```json
{
  "company": "Google",
  "job_title": "Software Engineer"
}
```

*What are salaries like at Amazon in Seattle?:*

```json
{
  "company": "Amazon",
  "location": "Seattle, WA"
}
```

## Quick Start

```bash
# Via CLI
TOOLROUTER_API_KEY=tr_live_xxx npx -y toolrouter-mcp call job-search search_jobs --query developer jobs in chicago --country us

# Via REST API
curl -H "Authorization: Bearer tr_live_xxx" \
     -d '{"tool":"job-search","skill":"search_jobs","input":{"query":"developer jobs in chicago","country":"us"}}' \
     https://api.toolrouter.com/v1/tools/call
```

## Frequently Asked Questions

### Can I search jobs by role, location, or remote status?

Yes. `search_jobs` supports role or keyword queries, location filters, remote-only searches, employment type, experience level, and recency.

### How do I find fresh job listings?

Use `date_posted` values like `week` or `3days` to bias the results toward recent openings.

### Can I get salary data without opening a job post?

Yes. `estimate_salary` gives a pay range for a role and location, and `company_salary` shows what a specific employer pays for that role.

### What do I use when I want the full posting?

Use `get_job_details` on a job ID from search results. It returns the complete description, requirements, benefits, and application info.

---

## 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