alphaosint-prospector
Enriches companies with Crunchbase Company API data including funding rounds, investors, key people, web traffic growth, and tech stack.
Sources companies from live job postings via the Indeed Jobs API and enriches company data (website, industry, headcount, HQ, employer rating) via the Indeed Company API.
This server does not currently have a deployable release on Glama. Follow the repository's setup instructions to install and configure it for your MCP client, including any required credentials and local dependencies.
Alpha OSINT Prospector
B2B prospecting inside Claude. Describe your ideal customer once, and get back a ranked list of companies that are hiring for the roles you sell into, with funding data, a 0-100 score you can audit, named decision-makers and verified work emails.
It is a Claude Code plugin: a local MCP server with 14 tools, a local SQLite lead store, and 6 skills. It researches. It never sends anything.
Built by Alpha OSINT on our own Apify Actors.
Why another prospecting tool
Most Claude prospecting tools read LinkedIn, one URL at a time, and ask the model to say "High / Medium / Low". That leaves gaps this project fills:
Gap | What Prospector does |
No way to find accounts | Sources companies from live job postings: a company hiring three SDRs this week is a buying signal |
LinkedIn is the only source | Joins Indeed, LinkedIn and Crunchbase on the company's website domain, and drops namesakes instead of guessing |
Scores are prose | A deterministic 0-100 score. Same data, same score, with a stored reason for every point |
Spend limits are a polite request in a prompt | Hard per-call and per-session caps in code, plus a platform-side charge cap on every run |
Emails are an afterthought | Named leads by department with a verification verdict, stored and exported |
Related MCP server: signal-prospector
The pipeline
ICP -> source (job postings) -> enrich (firmographics + funding) -> emails + decision-makers -> score -> leads.csvStage | Actor | What it adds |
Source | Open roles by keyword, filtered to titles that really match | |
Source (optional) | A second hiring feed | |
Enrich | Website (the join key), industry, headcount, HQ, employer rating | |
Enrich | Headcount band, industry, HQ, followers, last funding round | |
Enrich | Rounds, investors, key people, traffic growth, tech stack | |
People | People holding your target titles at the account | |
Emails | Contact Details Scraper (third party) | Company inbox, named leads by department, email verification |
Related Actors you can chain by hand: LinkedIn Profile API, LinkedIn Posts API, PitchBook Company API, Google Maps Place ID Contact API.
Install
You need uv, an Apify account (a paid plan is recommended, see Cost) and Claude Code.
In Claude Code:
/plugin marketplace add johnisanerd/alphaosint-prospector/plugin install alphaosint-prospector@alphaosintWhen you enable the plugin, Claude Code asks for your Apify API token (Apify Console, Settings, Integrations) and stores it in your system's credential store. It also asks for your Apify plan tier and two spend caps; change those later in /config.
MCP server only (Claude Desktop, Cursor, anything that speaks MCP):
{
"mcpServers": {
"alphaosint-prospector": {
"command": "uvx",
"args": ["--from", "git+https://github.com/johnisanerd/alphaosint-prospector@v0.2.0", "alpha-prospector", "serve"],
"env": { "APIFY_TOKEN": "your_apify_token" }
}
}
}Use it
Say what you want:
"Set up my ICP. We sell sales engagement software to US SaaS companies with 50 to 1000 people."
"Find me 25 leads."
"Why did the third one score low?"
"Get me the VP of Sales and an email for the top five."
"Export the list."
Or run the whole thing without Claude:
uvx --from git+https://github.com/johnisanerd/alphaosint-prospector alpha-prospector run --icp examples/icp.example.json --max-companies 10 --budget 2Skills
Skill | Does |
| The full pipeline, ICP to CSV |
| Interviews you and saves the ICP |
| New companies from hiring signals |
| Firmographics, funding, and the score explained |
| Named contacts and verified emails |
| CSV, JSON or XLSX, plus spend |
MCP tools
get_config, get_icp, set_icp, estimate_cost, source_companies, enrich_companies, find_contacts, find_emails, score_leads, list_leads, get_lead, export_leads, list_runs, get_spend.
The ICP
One JSON object drives sourcing, filtering and scoring. See examples/icp.example.json.
Field | Meaning |
| Job titles that signal a need for what you sell. One paid search each, so keep it to 1 to 3 |
| Lowercase fragments matched against the employer's industry text |
|
|
| Two-letter codes; the first one is the job board searched |
| Decision-maker titles, matched word by word ("VP Sales" matches "VP of Sales") |
| Departments for the email lead lookup, for example |
| Defaults to staffing and recruiting, because agencies post the same titles |
| Points per score part. Defaults: fit 35, hiring 30, funding 15, momentum 10, reachability 10 |
The score
Part | Full marks when |
Fit | Industry, headcount and country all match the ICP |
Hiring | Five or more matching open roles, newest inside your recency window |
Funding | Last round within six months |
Momentum | Web traffic growing, and urgent or multi-seat hiring |
Reachability | A named decision-maker with a verified email |
Unknown data scores zero and the reason says "unknown". An account nobody has enriched cannot outrank one that was checked.
Cost
You pay Apify for the Actor runs, per result. The server estimates each call at list price before it runs, refuses calls over your caps, and starts every run with a platform-side maximum charge.
Stage | Worst case at list price |
Source | about $0.004 to $0.0095 per job row |
Enrich | about $0.015 per company (Indeed, LinkedIn and Crunchbase) |
People search | about $0.031 per company searched (a page of about 10 people, profiles included) |
Emails | about $0.05 per company (10 pages, 3 leads, 3 verifications) |
Defaults: $2.00 per session, $1.00 per call. Change them in the plugin's settings (/config). The standalone CLI reads them from ~/.alphaosint/.env (see .env.example).
Two things to know:
The email Actor refuses runs whose charge cap is under $0.50, so that stage needs $0.50 of session budget left even when the real cost is a few cents.
On Apify's free plan that Actor prices its lead and verification add-ons at $0.10 each instead of about half a cent. Use a paid plan, or set
leads_per_domain=0.
Limits
Crunchbase shows round structure and investors publicly, not dates or amounts. Round dates come from the LinkedIn funding summary when LinkedIn has one.
Job boards match titles loosely. Postings whose title does not contain every word of one of your hiring keywords are ignored and counted, so add each real variant as its own keyword.
LinkedIn job rows carry no website, so those accounts need enrichment before emails can be found.
People search returns people whose public profile mentions the company and title, including some who have since left. Prospector keeps only people whose current employer matches the account. Small companies often return nobody; the email step usually finds named people there.
Indeed job rows currently come without employer details, so Prospector looks each employer up on Indeed's company pages during enrichment to get the website it joins on.
A
catch_allorunknownemail verdict means unverified. The export says so.
What it runs, sends and stores
Runs: a local Python MCP server, started with
uv run --lockedfrom the plugin folder. The first start installs the pinned dependencies fromuv.lockinto the plugin's data directory.Sends: only calls to the Apify API (
api.apify.com), made with your token, to run the Actors in the table above. Their inputs are your ICP's hiring keywords, locations, company names and website domains, and the job titles you target. Apify bills the runs to your account. Nothing is sent to an Alpha OSINT server, and there is no telemetry.Stores: your ICP, the companies, contacts, scores and a spend log in a SQLite file,
prospector.db, in the plugin's data directory. Claude Code deletes that directory when you uninstall the plugin. Exports are written where you ask (by default~/alphaosint-leads.csv).
See PRIVACY.md for the privacy policy.
Privacy and terms
Named contacts and work emails are personal data under GDPR and similar laws; you need a lawful reason to hold and use them. The Actors read public pages. You are responsible for complying with the terms of the sites involved and with anti-spam law where you operate. This project sends no messages.
Development
git clone https://github.com/johnisanerd/alphaosint-prospector && cd alphaosint-prospectoruv sync --locked --extra dev --extra xlsx && uv run pytest -qTests use a fake Apify backend and spend nothing.
Credits
Inspired by insaight by Spiros Baxevanakis, which showed how well an MCP server plus skills works for prospect research. Prospector is an independent implementation with a different scope: account sourcing, multi-source enrichment and scoring.
Disclosure: the johnvc/* Actors are built and sold on Apify by the author.
Support: open an issue.
MIT License.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
Related MCP Connectors
Outbound sales rails for Claude: accounts, contacts, sequences and replies, sent from your mailbox.
Scrape Greenhouse & Lever ATS job boards for B2B hiring intent, tech stack & urgency scores (0-99).
Cold email infrastructure — campaigns, prospects, mailbox health and replies via Claude.
AI-native B2B sales research, ranking, and CRM enrichment.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceTransforms job postings into qualified sales leads by searching for active jobs, enriching company data, and identifying decision-maker contact information.-
- AlicenseNot gradedqualityDmaintenanceEnables B2B prospecting from natural language: detect buying signals, score leads against ICP, enrich decision-makers, and draft personalized outreach messages via Claude.2MIT
- FlicenseNot gradedqualityDmaintenanceEnables running the lead scoring and outbound pipeline by talking to Claude, including scraping healthcare job postings, scoring against buyer ICP, gating on company size, and managing sequences.-
- AlicenseAqualityBmaintenanceLinkedIn prospect intelligence inside Claude. It automates the research behind outreach, not the sending: scrapes posts, profiles and comment threads into a local SQLite database, classifies what a person or company actually posts about, mines comment threads for people already describing your problem, and surfaces uncommon commonalities worth opening with.1834MIT