Skip to main content
Glama

freehire

Server Details

freehire.me: search 3.3M+ IT jobs from 294K company boards, track applications, tailor CVs.

If you are the author of this connector, you can claim ownership by verifying the domain or GitHub account it belongs to. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL
Repository
strelov1/freehire-mcp
GitHub Stars
2
Server Listing
freehire

TDQS

A3.9/5.0

Scored across 4 tools

Disambiguation5/5

The four tools split cleanly along two axes: entity (company vs job) and mode (search vs single-item read). get_company/get_job fetch one record by slug while search_companies/search_jobs query the catalogue, so an agent can pick the right tool without guessing.

Naming Consistency5/5

All names follow a strict verb_noun snake_case pattern (get_company, get_job, search_companies, search_jobs). The verbs map predictably to intent, with no mixed conventions or vague verbs.

Tool Count4/5

Four tools is a tight, well-scoped set for a read-only job/company catalogue, with no redundancy. It sits just below the ideal range in absolute terms, but nothing feels missing or padded.

Completeness4/5

The domain is a consumer-facing read surface, and it covers both search and detail retrieval for its two entities (jobs and companies). Write operations are sensibly absent, though there are no listing/browse or taxonomy tools beyond search.

Available Tools

4 tools
get_companyRead one employerA
Read-only
Inspect

Read what freehire holds about one employer by the slug a result carries: what they do, which industries they are in, where they are based, and how many postings they have open.

ParametersJSON Schema
NameRequiredDescriptionDefault
slugYesthe employer's identifier, as carried by a result's company_slug

Output Schema

ParametersJSON Schema
NameRequiredDescription
urlYesthe employer's page on freehire
nameYes
slugYesthe employer's identifier, to pass to get_company
taglineNo
open_jobsYeshow many postings this employer has open right now
hq_countryNoISO 3166-1 alpha-2 code
industriesNo

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=true, so the safety profile is covered. The description adds that the returned data is a curated held record (activities, industries, location, open-posting count), which is modest added context for a read tool whose output schema carries the return contract.

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?

One sentence, front-loaded with the action and resource, then the returned content. No filler, though the colon-list makes it slightly run-on where two shorter sentences would read cleaner.

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?

For a single-parameter read tool with an output schema and full annotation coverage, the definition gives what an agent needs: what it fetches, the key it needs, and the shape of the payload. Only the sibling routing and invalid-slug behavior are unaddressed.

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% and the single parameter is already documented in the schema as an identifier carried by a result's company_slug. The description restates that same meaning without adding format, casing, or validation detail, so the baseline of 3 applies.

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?

Specific verb-and-resource pair ('Read ... one employer') with the lookup key named explicitly ('by the slug a result carries') and the payload enumerated. It implicitly separates itself from search_companies by emphasizing a single employer, but it never names the sibling tools outright.

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?

'By the slug a result carries' implies the precondition that a slug must come from a prior search result, which is useful implied guidance. There is, however, no explicit when-to-use versus search_companies or get_job, and no stated failure behavior for an invalid slug.

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

get_jobRead one job postingA
Read-only
Inspect

Read one posting in full by the slug a search result carries: the whole description, the stated requirements, and which applicant tracking system handles applications.

ParametersJSON Schema
NameRequiredDescriptionDefault
slugYesthe posting's identifier, as carried by a search result's slug

Output Schema

ParametersJSON Schema
NameRequiredDescription
urlYesthe posting's page on freehire
slugYesthe posting's identifier, to pass to get_job
titleYes
skillsNo
sourceYesthe job board this posting was collected from
companyYes
summaryNoa short preview; call get_job for the full description
categoryNo
locationNo
apply_viaNothe applicant tracking system handling applications
countriesNoISO 3166-1 alpha-2 codes the role is open in
posted_atNoRFC3339 UTC
seniorityNo
work_modeNoremote, hybrid or onsite
salary_maxNo
salary_minNo
descriptionYesthe posting's full text
company_slugNothe employer's identifier, to pass to get_company
requirementsNo
english_levelNo
salary_periodNoyear, month, day or hour
apply_requiresNowhat the employer's application form requires
employment_typeNo
salary_currencyNoISO 4217 code
official_job_urlNothe employer's own posting, when known
visa_sponsorshipNo

TDQS

A4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false, and openWorldHint=true, so the safety profile is covered. The description adds that the call returns the full description, requirements, and ATS handler, but says nothing about auth needs, rate limits, or behavior on an unknown slug.

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?

A single front-loaded sentence with no filler; the required input source and the returned content are packed into one clause without repetition.

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?

For a one-parameter read tool with an output schema, the description covers purpose, input provenance, and the shape of the content returned, so an agent has what it needs. It omits any mention of failure modes (missing/invalid slug), which keeps it just short of complete.

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% with a single well-documented parameter, so the baseline is 3. The description's restatement that the slug comes from a search result reinforces the schema but adds no format or validation detail beyond it.

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?

States a specific verb and resource ('Read one posting in full') and scopes it precisely via the slug. It is immediately distinguishable from the sibling search_jobs, which returns many results, since this tool explicitly reads a single posting.

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?

The phrase 'by the slug a search result carries' establishes the intended workflow — call search_jobs first, then use this tool on a returned slug — which is clear contextual guidance. It stops short of an explicit exclusion (e.g., 'do not use for listing or filtering'), so it is not a full 5.

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

search_companiesSearch employersA
Read-only
Inspect

Find employers in freehire's catalogue by name or by where they hire, with how many postings each has open. Use when the question is about a company rather than about a role.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
queryNofree text, matched against the employer's name
offsetNo
countriesNoISO 3166-1 alpha-2 codes the employer hires in

Output Schema

ParametersJSON Schema
NameRequiredDescription
queryNo
totalYes
offsetYes
companiesYes
ignored_paramsNofilters that were not applied; the answer is wider than asked

TDQS

A4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=true, so safety is covered. The description adds the useful output trait that results include open-posting counts, but says nothing about pagination behavior or result size limits.

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, no filler, with the capability statement and the routing rule in that order. Every clause carries information.

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?

An output schema exists, so return values need not be explained, and purpose plus routing are covered. The one gap is paging semantics for limit/offset, which neither the schema nor the description addresses.

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 coverage is only 50%: query and countries are documented in the schema, while limit and offset carry no description anywhere. The phrase "by name or by where they hire" maps loosely onto query and countries but adds no format or syntax detail, so the undocumented paging params are not compensated for.

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?

States a specific verb (Find) and resource (employers) plus the two lookup axes (name, hiring location) and the returned posting counts. An agent can distinguish it from search_jobs and get_company without opening any schema.

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?

"Use when the question is about a company rather than about a role" gives a clear selection rule against search_jobs, but it never names get_company, the natural alternative for a single known employer, so the when-not case is left to inference.

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

search_jobsSearch jobsA
Read-only
Inspect

Search freehire's catalogue of IT job postings. Use for any question about which jobs are open — by technology, seniority, location, pay or employer. Returns a short preview of each posting; call get_job for one posting's full text.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoresults per page
queryNofree text, matched against title, company and description
citiesNo
offsetNo
skillsNotechnologies, e.g. go, kubernetes, react
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
salary_minNo
company_slugsNoemployer identifiers, as carried by a result's company_slug
english_levelNoCEFR levels, e.g. B2, C1
employment_typeNoany of full_time, part_time, contract, internship
salary_currencyNoISO 4217 code, e.g. USD
visa_sponsorshipNo
posted_within_daysNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
jobsYes
queryNo
totalYes
offsetYes
ignored_paramsNofilters that were not applied; the answer is wider than asked

TDQS

A4/5.0
Behavior3/5

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

Annotations already cover the safety profile (readOnlyHint=true, openWorldHint=true, idempotentHint=false, destructiveHint=false), so the bar is lower. The description adds the useful note that results are a 'short preview' versus get_job's full text, but says nothing about pagination behavior despite limit/offset, or rate limits.

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 waste, with the scoping purpose front-loaded and the sibling routing in the clause that follows. Every sentence earns its place.

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?

For a 17-parameter, zero-required search with an output schema present, the description covers domain, usage, the preview-vs-fulltext distinction, and routing to get_job. The remaining gap is pagination/limit semantics, which the schema names but never explains.

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 71%, above the midpoint, so the schema does most of the work. The description gestures at the facet groups (technology, seniority, location, pay, employer) that map to skills, seniority, cities/countries, salary_min and company_slugs, but adds no syntax or combination guidance beyond the schema.

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?

States a specific verb and resource ('Search freehire's catalogue of IT job postings') and immediately scopes the domain to IT jobs. It also names the sibling get_job and distinguishes this tool as the preview-level search, so an agent can route without opening either schema.

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?

'Use for any question about which jobs are open — by technology, seniority, location, pay or employer' gives clear when-to-use context and enumerates the question types it answers. It also routes to get_job for full text, but offers no explicit when-not-to-use or condition for the sibling search_companies.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 4 tool updates
    • First observedget_company
    • First observedget_job
    • First observedsearch_companies
    • First observedsearch_jobs

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    B
    maintenance
    Live tech-hiring intelligence for AI agents. Search 130K+ open jobs collected daily from ~500 tech companies' own career sites — plus company hiring profiles, tech stacks, salary benchmarks, and skill trends. Five tools work with no account.
    31
    97 npm
    MIT
  • A
    license
    A
    quality
    A
    maintenance
    Watches company job boards (Greenhouse, Lever, Ashby, Workable, Workday and more) for new roles that match your filters, ranks them in a digest optionally fit-scored against your resume, and tracks every application with interview prep sheets. It never applies for you.
    2
    17
    748 PyPI
    MIT
  • A
    license
    B
    quality
    B
    maintenance
    Enables multi-source tech job search and application with CV-based skill extraction, deduplication, and scoring across HireMeTech, Comeet, and AllJobs, supporting autonomous or supervised workflows.
    20
    1
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.