---
title: "Search Prospects"
method: POST
path: "/mcp/tools/search_prospects"
tags: ["mcp"]
---

# Search Prospects

`POST /mcp/tools/search_prospects`

## Request

- Base URL: `https://api.iridiumhqmcp.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.iridiumhqmcp.com/mcp/tools/search_prospects`
- Auth: HTTP bearer

The cheapest people search there is: ONE LinkedIn action, no profile opened, no badge
checked. Reads only, drafts nothing.

It is not specific to any signal. It returns whoever matches the query and location —
that is all it knows. `hiring_only` / `open_to_work_only` do NOT filter and do NOT
confirm anything: they only REORDER the same results using hints in the headline and
title text, which is a guess, not the badge. Someone with the real #hiring badge and a
plain headline sorts last; someone who typed "hiring" in their headline and has no badge
sorts first.

USE THIS to browse cheaply, or to get a long list to narrow by hand.

DO NOT USE when the answer has to be TRUE about a badge — "people who are actually
hiring", "who is really open to work". This tool cannot know: the badge lives only on the
full profile. Use find_prospects, which opens profiles and tells you which candidates it
confirmed.

DO NOT USE when the user wants messages written. discover_prospects searches and drafts a
connection note for each person in one call.

Results are read live from LinkedIn at the time of the call.

Args:
    hiring_only / open_to_work_only: the profile BADGE (is_hiring / is_open_to_work), not
        post text. The badge is never in a people-search result — it lives only on the
        full profile (SEARCH.md §7.1/§7.4) — so these do NOT filter; an earlier version
        faked the filter out of headline text and returned a near-empty list for almost
        every real query. Instead they SORT by how likely each result is to carry the
        badge, from free signals already in the search result (headline phrasing, an empty
        current work history). Nothing is ever dropped — see `note` in the response. This
        tool opens no profiles, so it never confirms a badge: cost 0 touches, certainty 0.
        To confirm, use find_prospects with max_touches (1 touch each).
    posted_recently: neither badge nor post text — an ACTIVITY filter ("posted at all in
        the past 30 days", regardless of what about). Free at search time, needs a Sales
        Navigator seat; on any other plan the search runs without it and `tier_note` says
        so. Default false.
    open_to_work: the profile BADGE, confirmed for free at search time by LinkedIn's own
        "Open to work" spotlight — applied before results come back, so 0 profile reads.
        Needs a full Recruiter seat (Recruiter Lite has no such spotlight); on any other
        plan the search runs without it and `tier_note` says so. Default false. Note this
        is the same badge as open_to_work_only above; the difference is that this one is
        CONFIRMED by LinkedIn and free, while that one is only a guess at the ordering.

## Request body

- SearchProspectsRequest
  - `query` string, required
  - `location` string, required
  - `limit` integer
  - `hiring_only` boolean
  - `open_to_work_only` boolean
  - `posted_recently` boolean
  - `open_to_work` boolean

## Response `200`

Successful Response

- unknown

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/iridiumhqmcp/apis/iridium-linkedin-for-ai-agents.md) · [All operations](https://skmtc.dev/iridiumhqmcp/apis/iridium-linkedin-for-ai-agents/llms.txt) · [OpenAPI document](https://skmtc.dev/iridiumhqmcp/apis/iridium-linkedin-for-ai-agents/revisions/b9f5e020543c?raw)
