linkedin-prospector returns the few who have the job and the problem, right now: it starts from what people published in the last weeks, then puts names and titles on it. The signal is also the opening line, which is the part of a prospect list that normally has to be invented afterwards.
Ask it who to contact: prospects, leads, an outbound list, an ICP to fill, the audience of a competitor.
It runs on the MCP server — the tools list_services and run.
What it needs from you
If you already hold names or profile URLs, discovery is skipped and the run starts at enrichment. URLs are passed through exactly as you typed them; none is ever rebuilt from a name.
How it runs
1. Reads the live catalogue
list_services
2. Lane A — who said it out loud
The strongest lane, and the one that produces the opening line.run
name, title, profile_url, post_text and posted_at. Company authors, recruiters and agencies are dropped unless they are the buyer. post_text is kept whole — it is the evidence.
3. Lane B — who is staffing up for it
A company hiring for a role has budgeted the problem.run
location is required — LinkedIn scopes a job search to a place. selectiveSearch drops listings whose title does not carry the keyword, cutting billed records before they are billed. Past week is the default the skill picks: a listing older than a month is a problem someone else already sold into.
This lane produces accounts, not people. linkedin/company.info then sizes them (company_size, industries, headquarters, funding) and returns two useful arrays: employees[], which sometimes names the buyer directly, and similar[], the seed for the next run.
4. Lane C — who engages with a competitor
linkedin/profile.posts on the competitor, then linkedin/post.comments on those post URLs:
run
linkedin/post.likes runs only when the comment pass comes back thin — reactions cost more per record and say less. post.likes needs a URL carrying the numeric activity-<digits> id; posts without one are skipped and counted.
5. Resolves names, then enriches the shortlist
linkedin/profile.search searches people by full name, not by title — it turns names you already hold (from employees[], a conference list, a CRM export) into profile URLs. It is not a way to enumerate a title, and the skill says so rather than burning credits on it.
Only tiers 1 and 2 get enriched:
run
email comes back when the person made one public. When it does not, there is no email: the skill never derives one from a company pattern and never presents a guess as a finding. For the handful at the top, linkedin/profile.posts says what they are working on this month.
How it ranks
The signal outranks the fit, and a recent signal outranks an old one.
Hiring announcements, congratulations, emoji-only comments and bare reshares carry no intent whatever the author’s title, and go to tier 3. Anyone at your own company, and anyone flagged
open_to_work when the sale is to a company, is dropped before ranking.
What you get
A table — name, title, company, profile URL, public email, tier, the signal quoted with its date, and the opening line built from that quote and nothing else. A line that could have been written without the signal is a line that did not need this skill. It closes with the credits actually spent, per lane, plus how many people survived deduplication and how many were enriched. If fewer than 10 people reach tier 2, it says the trigger was too narrow instead of padding with tier 4 — the fix is another Lane A query in the buyer’s vocabulary, not a wider title filter.Cost control
limitis per input: five queries at 50 bills up to 250 records.- Enrichment is tiers 1 and 2 only. Discovery is the cheap half.
post.commentsoverpost.likes;selectiveSearchon the job lane.- No offer pinned, so the router keeps its failover.
Limits
- No people filter by title, industry or company size. LinkedIn exposes no such search, so the shape of the list comes from the signal and from
company.info. - No connections, no follower lists, and no full employee roster beyond the
employees[]sample. - No comment replies. Sub-threads are not returned, so only root comments are ranked.
- Nothing is sent. Every output is a list and a draft line — contacting the people on it is regulated where you operate, and the skill says so once rather than writing the sequence unasked.
Examples
You: “Find me RevOps leads in Paris struggling with their CRM data” → Lane A on the complaint wording, Lane B on"revenue operations" in Paris over the past week, company.info on the hiring companies, profile.info on tiers 1 and 2.
You: “Who commented on my competitor’s last posts?”
→ profile.posts on the competitor, post.comments on those URLs with postedLimit: "3months", ranked on comment substance and frequency.
You: “Here are 40 names from a conference — who should I contact?”
→ Discovery skipped: profile.search on the names, up to 100 per call, then profile.info on the ones whose company matches the brief.
Related
instagram-scout
The discovery equivalent on Instagram.
LinkedIn API
Every LinkedIn service, its inputs, options and offers.