Skip to main content
Glama
freehire

freehire

by strelov1

job_market_stats

Read-only

Count open job postings matching filters and summarize common role families, seniorities, skills, work modes, countries, and regions, flagging unrecognized filter values.

Instructions

How many open postings match a set of filters, and their most common role families, seniorities, skills, work modes, countries and regions. Values a filter does not recognise are dropped and named in the answer — fix them before quoting a figure.

Input Schema

NameRequiredDescriptionDefault
queryNoFree text, with the same operators as `search` (quotes, -word, uppercase OR, title:).
citiesNo
skillsNoTechnologies, e.g. go, kubernetes, react.
regionsNoAny of global, north_america, latam, eu, uk, mena, africa, apac, cis.
sourcesNoJob boards to restrict to.
categoryNoRole family, e.g. backend, frontend, devops, data.
countriesNoISO 3166-1 alpha-2 codes, e.g. DE, BR.
seniorityNoAny of intern, junior, middle, senior, lead, staff, principal, c_level.
work_modeNoAny of remote, hybrid, onsite.
relocationNoAny of supported, required, not_supported.
salary_minNo
company_slugsNoEmployer identifiers, as carried by a result's company_slug.
english_levelNoCEFR levels, e.g. B2, C1.
exclude_skillsNoTechnologies the posting must not ask for, e.g. php.
employment_typeNoAny of full_time, part_time, contract, internship.
salary_currencyNoISO 4217 code, e.g. USD.
visa_sponsorshipNo
posted_within_daysNo
require_all_skillsNotrue: every listed skill must be present, not just one.
exclude_company_slugsNoEmployers to leave out.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.8.0

TDQS

A3.8/5.0
Behavior4/5

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

readOnlyHint=true already covers the safety profile, and the description adds genuinely non-obvious behaviour: unrecognised filter values are silently dropped but echoed back in the answer, with an instruction to correct them before reporting numbers. It stops short of disclosing aggregation limits, default scope with zero filters, or cost/latency for a 20-parameter query.

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

Conciseness5/5

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

Two sentences, zero filler. The returned-facet list is front-loaded so an agent immediately knows the shape of the answer, and the second sentence carries a single actionable caveat.

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

Completeness4/5

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

With 20 optional parameters, no output schema, and only readOnlyHint for annotations, the description does well to enumerate what the response contains, which is the biggest gap it could have filled. Missing are the no-filter default (count everything?), any cap on returned facet values or result size, and ordering of the distributions.

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 80% and most filters carry their own examples and enumerations (skills, regions, seniority, work_mode, relocation, employment_type, CEFR levels), so the schema does the heavy lifting. The description adds only the cross-cutting rule that invalid values are dropped rather than erroring, and says nothing about the four undescribed parameters (salary_min, salary_currency, visa_sponsorship, posted_within_days).

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

Purpose4/5

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

The description gives a specific verb (count) plus a resource (open postings matching filters) and enumerates the facets returned (role families, seniorities, skills, work modes, countries, regions). It is clearly an aggregation tool rather than a listing tool, but it never names siblings like `search`, `salary_stats`, or `facets`, so the differentiation is inferred rather than stated.

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

Usage Guidelines3/5

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

Usage is only implied: the mention of quoting a figure suggests analytics/reporting use, and the warning to fix unrecognised values implies an iterative filter-refinement workflow. There is no explicit when-to-use versus `search` (posting-level results) or `salary_stats` (compensation distributions), and no stated prerequisites.

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