You need two things:
voy_ prefix) — create one in the dashboard or deploy your own instanceSet up these variables for the examples below:
If you’re using the Chrome extension, cookies are already synced — skip to step 2. Otherwise, export them from your browser and POST them yourself:
li_at and JSESSIONID are the minimum required. Include li_a and li_ep_auth_context to enable Sales Navigator access. Always include userAgent — sessions without it may fail LinkedIn’s fingerprint checks.
Response:
Response:
Every endpoint wraps its payload in the same { success, statusCode, message, data, errors } envelope. The endpoint-specific fields live under data. If you’re migrating from an older client, change res.profile to res.data.profile.
Response:
Don’t want to figure out which endpoint matches which URL shape? POST /api/fetch takes any LinkedIn URL (SRP, profile, company, post, group, event) and dispatches to the right underlying call, auto-paginating search results up to maxResults.
The response echoes kind (search-content, profile, post, company, …) so your agent can branch on URL type without a second round-trip. For post URLs, pass "includeEngagers": true to also pull reactions + comments inline. SalesNav URLs aren’t supported — use the SalesNav endpoints directly.
If you’re building an agent in Claude Code, Claude Desktop, or Cursor, the MCP server exposes the same 45 operations as natural tool calls — your agent just says “find Cambridge alumni at Anthropic” and the LLM picks the right tool and parameters.