Quickstart

Ship your first LinkFetch call in 90 seconds.

LinkFetch gives AI agents typed LinkedIn data — profiles, companies, jobs, posts, groups, search, and outbound writes — through one REST API and a native MCP server for Claude Desktop, Cursor, and Zed.

Every response ships with a provenance stamp (source, fetched_at, freshness_days) and every profile lookup is rooted in the end user's own LinkedIn session. No fake accounts, no rented sessions.

1 — Get a key

Sign in at linkfetch.io/signin and grab your $5 in free credit. No card required.

export LINKFETCH_KEY=sk_live_...

2 — Make your first call

The lowest-friction call is /v1/jobs — it reads from our own scraped LinkedIn-jobs dataset, so no extension or signed-in session is involved.

curl "https://api.linkfetch.io/v1/jobs?q=staff%20engineer&posted_within=week&limit=5" \
  -H "Authorization: Bearer $LINKFETCH_KEY"

Or run it inline:

3 — Understand the response envelope

Every endpoint returns a two-part envelope: data with the typed record(s), and meta with provenance, credit cost, and the request id.

{
  "data": { /* the typed record(s) for this surface */ },
  "meta": {
    "request_id": "req_01HZ...",
    "credits_charged": 1,
    "rate_limit": { "remaining": 4995, "reset_at": "..." },
    "provenance": {
      "source": "extension",
      "fetched_at": "2026-04-23T10:14:22Z",
      "freshness_days": 0
    }
  }
}

Errors use the same envelope with a top-level error object — code, message, and the same request_id you'd find in our logs. Empty result sets return data: [] and are never charged.

See Provenance for the full model and Errors for the shape of failures.

4 — Wire Claude Desktop (MCP)

Drop this into your claude_desktop_config.json:

{
  "mcpServers": {
    "linkfetch": {
      "url": "https://mcp.linkfetch.io",
      "transport": "http",
      "headers": { "Authorization": "Bearer sk_live_..." }
    }
  }
}

Restart Claude. Try: "Find five staff-engineering jobs in NYC posted this week."

5 — Install the Chrome extension (optional)

Profile, company, post, group, search, and all outbound endpoints resolve through the user's own LinkedIn session via the LinkFetch Chrome extension — the extension only exists so we never have to touch a fake account on your behalf. The Jobs surface doesn't need it.