Skip to main content
Glama

Company Hiring Signals API: open roles, departments, locations

company_hiring_signals
Read-onlyIdempotent

Is a company hiring, for what, where and since when? Give company names, domains or job board URLs; get one summary per company (open roles by department, location and country, remote share, newest and oldest posting dates, top titles) plus the open jobs, each with a link to the posting. Built for AI agents doing sales prospecting, recruiting or market research, and for people who want hiring data without scraping LinkedIn or Indeed.

Price: $0.001 per unit (company-summary=5, job=1).

Input Schema

NameRequiredDescriptionDefault
keywordsNoOnly roles whose job title has a word starting with one of these, case-insensitive ("engineer" matches "Engineering", "ai" not "Retail"), e.g. ["engineer", "data scientist"]
companiesYesCompanies to check, 1-5 on the API: a name ("Notion"), a website domain ("stripe.com"), a job board URL
locationsNoOnly roles whose location text, other locations or country contains one of these as whole words, case-insensitive ("US" does not match "Australia"), e.g. ["London", "Germany", "remote"]
departmentsNoOnly count and return roles whose department or team has a word starting with one of these, case-insensitive, e.g. ["engineering", "data"]
postedSinceNoOnly roles first published on or after this date: an ISO date ("2026-10-01") or a number of days back ("30d")
summaryOnlyNotrue = one summary row per company and no job rows (cheapest; answers "is X hiring and where?")
maxJobsPerCompanyNoMost job rows to return per company, newest first, e.g. 20

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, openWorldHint and destructiveHint=false, so the description does not need to restate safety. It does add genuinely new behavior: a cost model ($0.001 per unit, summary=5 units vs job=1) and the shape of the payload (department/location/country breakdowns, remote share, date range, top titles, per-job links). Rate limits and failure behavior for unknown companies remain undisclosed.

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?

Front-loaded with the core question, then inputs, then outputs, then pricing — a sensible order with no redundancy. The clause "for people who want hiring data without scraping LinkedIn or Indeed" is mildly promotional but does convey the data source, so it earns its place marginally.

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 7-parameter tool with no output schema, the description does the heavy lifting of describing what comes back (summary row fields plus job rows with links) and how billing scales with the summary/job split. It does not say what happens when a company cannot be resolved or how complete the job coverage is, which are the remaining gaps for a prospecting agent.

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 every parameter is already documented with examples and matching semantics, making a baseline of 3 appropriate. The description's "Give company names, domains or job board URLs" merely restates the `companies` schema text and says nothing about `keywords`, `departments`, `locations`, `postedSince` or `maxJobsPerCompany` beyond what the schema provides.

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?

Opens with a concrete question the tool answers ("Is a company hiring, for what, where and since when?") and then states both the input form (names, domains, job board URLs) and the output form (per-company summary plus individual job rows with links). This clearly separates it from siblings like company_check or company_accounts, which cover identity/account data rather than open roles.

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?

Use case is stated at audience level ("sales prospecting, recruiting or market research") and the price line implies a cost tradeoff, but there is no explicit when-to-use-this-vs-sibling guidance, e.g. no mention of when to prefer company_check or sec_company_screen instead. The `summaryOnly` note partially covers the internal cheapest-path decision, which keeps this above a 2.

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.