“Who are the 5 most recent hires at Vercel, and what were they doing right before?”
linkfetch.profiles›linkfetch.companiesOne typed call gives Claude, Cursor, and any MCP client read access to profiles, companies, and jobs — through your own signed-in LinkedIn session. No scraping, no fake accounts.
user is principal ● empty results never charged ● public data only ● gdpr + ccpa aligned
“Every morning, find 10 new VPs of Engineering hired at Series-B fintechs. Draft a 2-line warm intro that names their last role — then queue the connection requests through my LinkedIn.”
[07:03]linkfetch.people.search10 matches · 0.6s[07:03]linkfetch.profiles.get ×1010/10 enriched · 50 credits[07:03]linkfetch.companies.get ×1010/10 · 80 credits[07:04]claude.compose intros10 drafts · 3.8s[07:04]linkfetch.outreach.queue10 queued · user is principal[07:12]on_accept → follow_up7 accepted · 5 drafting…
Every brief below is a real prompt our users run. Copy it into Claude, swap the account, the role, or the cadence — ship it before lunch.
“Who are the 5 most recent hires at Vercel, and what were they doing right before?”
linkfetch.profiles›linkfetch.companies“Who left Stripe in the last 60 days, and where did they land? Flag anyone who joined a direct competitor.”
linkfetch.profiles.search“Every morning, find 10 new VP Engineering hires at Series-B fintechs and queue a 2-line warm intro for each.”
linkfetch.people›linkfetch.profiles›linkfetch.companies›claude.compose›linkfetch.outreach.queue“Track headcount at Anthropic, OpenAI, and Mistral. Ping me on ≥5% swings or notable new hires.”
linkfetch.companies.timeseries›linkfetch.profiles“For linear.app: size, last funding, headcount trend, and 3 notable new hires this quarter.”
linkfetch.companies›linkfetch.profiles“For every new trial user: role, seniority, company size, funding stage. Rank by ICP fit and score.”
linkfetch.profiles›linkfetch.companiesEvery brief runs inside Claude Desktop, Cursor, or anything that speaks MCP. No custom glue — just the LinkFetch Skill and your API key.
Every endpoint returns typed JSON with a provenance stamp and a predictable credit cost. Public data only, aligned with GDPR and CCPA — your users stay the principal on their own session.
Name, headline, roles, education, skills — fetched through the user's own LinkedIn session via the LinkFetch Chrome extension. No fake accounts, no session impersonation; the user is the principal.
GET /v1/profilesdocs →const res = await fetch(
"https://api.linkfetch.io/v1/profiles?url=" + url,
{ headers: { Authorization: "Bearer " + key } },
);
const { data, meta } = await res.json();No SDK to install: one bearer header and a JSON envelope that is identical on every endpoint. Consistent error codes and a request id on every response so support tickets write themselves.
fetch · requests · curldocs →Resolve slug → structured company record. Ships with last-funding and employee-growth signals when available.
GET /v1/companies/:slugdocs →Jobs by keyword, company, seniority — first-seen timestamps make this the signal, not just the data.
GET /v1/jobsdocs →source, fetched_at, freshness_days on every response. Auditable, explainable, agent-safe.
meta.provenancedocs →Public data only, no fake accounts, no session impersonation. Your users stay the principal on their own LinkedIn session, with a clear legal story for EU and California workloads.
GDPR · CCPAdocs →Add the MCP server to Claude Desktop or Claude Code with one config block. LinkFetch shows up as native tools; your Claude conversations get LinkedIn context the moment they need it.
{
"mcpServers": {
"linkfetch": {
"command": "npx",
"args": ["-y", "linkfetch-mcp"],
"env": { "LINKFETCH_API_KEY": "sk_live_…" }
}
}
}$5 in credit, no card, public data only, provenance on every row. Wire it into Claude, Cursor, or your own agent stack — and keep shipping on Friday.
no card ● empty results never charged ● public data only ● gdpr + ccpa aligned
Paste a key, ship a call. No SDK to install, no waiting room, no annual commit, no sales call — if you have a terminal and 90 seconds you have an API.
export LINKFETCH_KEY=sk_live_…
curl "https://api.linkfetch.io/v1/jobs?q=staff+engineer&posted_within=week" \
-H "Authorization: Bearer $LINKFETCH_KEY"Sign in, copy the key from the dashboard. Scoped, revocable, rate-limited per tier. No fake accounts, no session tokens stored — the API is plain HTTPS and JSON.
const res = await fetch(
"https://api.linkfetch.io/v1/profiles?url=linkedin.com/in/jane-doe",
{ headers: { Authorization: `Bearer ${process.env.LINKFETCH_KEY}` } },
);
const { data, meta } = await res.json();
// data.headline, meta.provenanceEvery response ships with source, fetched_at, and freshness_days in meta. Profiles and companies resolve through the user's own session via the extension.
{
"mcpServers": {
"linkfetch": {
"command": "npx",
"args": ["-y", "linkfetch-mcp"],
"env": { "LINKFETCH_API_KEY": "sk_live_…" }
}
}
}The MCP server exposes the same endpoints as native tools for Claude Desktop, Claude Code, Cursor, and Zed. One config block, no fetch wrapper.
The market opening when Proxycurl shut down in July 2025 made one thing clear: the old compliance story doesn't hold. LinkFetch is the drop-in replacement with a legal story that survives.
| capability | LinkFetch | Coresignal | Bright Data | Proxycurl(shut down Jul '25) |
|---|---|---|---|---|
01Time to first call | 90 sec | Days | Hours | — |
02Free tier | $5 credit | Trial | no | — |
03Annual commit required | no | yes | yes | — |
04Claude / MCP native | yes | no | no | — |
05Private profiles via user's own extension | yes | no | no | no |
06GDPR + CCPA aligned | yes | Partial | Partial | no |
07Provenance on every row | yes | no | no | no |
ref. ll-0044 · observations current as of rev.2026.04 · public docs + pricing pages
Credits with a transparent per-query table. No annual commit, no minimums, no surprise seat fees — and if a call returns nothing, we don't charge.
Kick the tires. Enough for a full weekend prototype.
Solo builders shipping a side project to a handful of users.
Funded startups with production agent workloads.
For teams with dedicated volume and compliance asks.
| request | endpoint | credits |
|---|---|---|
01profile lookup | GET /v1/profiles | 5 |
02company lookup | GET /v1/companies/:slug | 3 |
03jobs search | GET /v1/jobs | 1 |
04empty result | 404 / 0 rows | 0 |
Prefer bulk over API calls? The whole LinkedIn jobs archive — 8M+ public postings since April 2026 — as a PostgreSQL dump, CSV, and JSONL, built fresh at purchase. Same provenance, same compliance, no credits.
public data only ● no fake accounts ● gdpr + ccpa aligned ● dpa on request for scale snapshots
A LinkedIn data API for AI agents. It returns public LinkedIn profiles, companies and job postings as typed JSON over plain HTTPS, exposes the same surface as MCP tools for Claude, Cursor and Zed, and sells its 8M+-row jobs index as a flat-price dataset. It is not affiliated with LinkedIn.
Yes, and a differently built one. Proxycurl ran rented accounts and shut down in July 2025. LinkFetch reads jobs from LinkedIn's public guest endpoints and reads profiles and companies through the end user's own session via a Chrome extension, so the user is always the principal. Field names overlap about 90 percent; a migration guide and field map are on the blog.
Flat credits per request: a profile lookup is 5 credits, a company lookup 3, a jobs search 1. Empty results are free. The free tier includes $5 of credit with no card; Starter is $29/month and Pro $99/month. The jobs dataset is $199 one-time or $49/month for live access.
No. The API is plain HTTPS and JSON, so fetch, requests or curl work as-is. Agents can use the MCP server (linkfetch-mcp) instead and skip HTTP entirely.
Jobs are public postings any logged-out visitor can see. Profiles and companies are fetched in the user's own session, never with fake or rented accounts. Every response carries a provenance stamp with source, fetched_at and freshness_days, and data subject requests are honoured with suppression by default.
The index adds about 45,000+ postings per day across 218 regions and re-checks is_active on recrawl. Each row carries first_seen_at and last_seen_at, and postings with applicant counts get a timestamped applicant-count history.