Skip to main content
Glama

glassdoor_listing: GET /

hasdata_glassdoor_listing_getJobListings
Read-only

Get GlassDoor Job Listings

Searches Glassdoor job listings by keyword and location with sort (recent/relevant), domain targeting, filters (date posted, distance, salary range, company rating, easy apply, remote), and nextPageToken pagination that keeps the filters. Returns an array of jobs with title, company, location, salary estimate, posted date, job URL, and jobId, plus per-page tokens. Use to build job feeds, monitor hiring trends for roles/companies/regions, power candidate sourcing tools, and collect URLs for downstream full-detail scraping via the Glassdoor Job endpoint.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
sortNoThe sorting option for the search results.
domainNoThe domain of the Glassdoor site (optional).
radiusNoSearch radius around the location, in miles. `0` keeps only jobs in the location itself. Glassdoor uses 25 miles when this is not set.
keywordYesThe keyword used to search for job listings.
locationYesThe location to search for job listings.
maxSalaryNoUpper bound of the yearly pay range, must be greater than `minSalary`. Can be used on its own.
minRatingNoReturns jobs from companies rated at least this high. Glassdoor applies the filter approximately, so a few companies rated slightly below the value can appear.
minSalaryNoLower bound of the yearly pay range. A job is kept when its estimated pay range overlaps the requested one; hourly and monthly pay are converted to yearly. Jobs without a pay estimate are excluded when a salary filter is set.
datePostedNoReturns only jobs posted within the given number of days.
remoteOnlyNoReturns only remote jobs. Defaults to false.
easyApplyOnlyNoReturns only jobs that can be applied to directly on Glassdoor. Defaults to false.
nextPageTokenNoToken for fetching the next page of jobs, taken from the pagination of a previous response. The token keeps the filters of the search it came from, so they do not need to be sent again.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed8 schema fields changed
    • addedInput schema / properties / datePosted
      Added value: +{
      +  "description": "Returns only jobs posted within the given number of days.",
      +  "enum": [
      +    1,
      +    3,
      +    7,
      +    14,
      +    30
      +  ],
      +  "type": "number"
      +}
    • addedInput schema / properties / easyApplyOnly
      Added value: +{
      +  "description": "Returns only jobs that can be applied to directly on Glassdoor. Defaults to false.",
      +  "type": "boolean"
      +}
    • addedInput schema / properties / maxSalary
      Added value: +{
      +  "description": "Upper bound of the yearly pay range, must be greater than `minSalary`. Can be used on its own.",
      +  "type": "number"
      +}
    • addedInput schema / properties / minRating
      Added value: +{
      +  "description": "Returns jobs from companies rated at least this high. Glassdoor applies the filter approximately, so a few companies rated slightly below the value can appear.",
      +  "enum": [
      +    1,
      +    2,
      +    3,
      +    4
      +  ],
      +  "type": "number"
      +}
    • addedInput schema / properties / minSalary
      Added value: +{
      +  "description": "Lower bound of the yearly pay range. A job is kept when its estimated pay range overlaps the requested one; hourly and monthly pay are converted to yearly. Jobs without a pay estimate are excluded when a salary filter is set.",
      +  "type": "number"
      +}
    • changedInput schema / properties / nextPageToken / description
      Previous value: -"Token for fetching the next page of jobs."New value: +"Token for fetching the next page of jobs, taken from the pagination of a previous response. The token keeps the filters of the search it came from, so they do not need to be sent again."
    • addedInput schema / properties / radius
      Added value: +{
      +  "description": "Search radius around the location, in miles. `0` keeps only jobs in the location itself. Glassdoor uses 25 miles when this is not set.",
      +  "enum": [
      +    0,
      +    5,
      +    10,
      +    15,
      +    25,
      +    50,
      +    100
      +  ],
      +  "type": "number"
      +}
    • addedInput schema / properties / remoteOnly
      Added value: +{
      +  "description": "Returns only remote jobs. Defaults to false.",
      +  "type": "boolean"
      +}
  2. First observed

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, openWorldHint=true, and destructiveHint=false, so the safety profile is covered. The description adds useful behavioral context beyond annotations: it describes the returned job fields and notes that nextPageToken pagination preserves the original filters. It does not disclose rate limits or authentication requirements, but that is a minor gap given the annotation coverage.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is front-loaded with a direct statement of purpose, then moves through filters, return values, and use cases in a single efficient paragraph. It is slightly dense and could be better structured with bullet points, but every sentence carries relevant information and there is no filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 12-parameter search tool with no output schema, the description is complete enough: it explains the search surface, the returned fields (title, company, location, salary estimate, posted date, job URL, jobId, page tokens), and the pagination behavior. Combined with annotations that cover safety and open-world scope, an agent has what it needs to invoke the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all 12 parameters in detail. The description summarizes filter categories (date posted, distance, salary range, company rating, easy apply, remote), sort, domain, and pagination behavior, but adds little semantic detail beyond what the schema provides. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource ('Searches Glassdoor job listings by keyword and location') and enumerates supported filters and pagination. It also distinguishes itself from the sibling tool:'collect URLs for downstream full-detail scraping via the Glassdoor Job endpoint' points to the separate job-details endpoint.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It gives clear usage contexts ('build job feeds, monitor hiring trends for roles/companies/regions, power candidate sourcing tools') and identifies the downstream sibling for full-detail scraping. However, it does not explicitly state when not to use this tool or list alternatives beyond that one reference, so it stops short of the 5-level specificity.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources