Add Zooq to any MCP-compatible client (Claude Desktop, Cursor, Codex, Hermes, Openclaw) and your agent gets the full Zooq catalog: all 50 endpoints wrapped as credit-billed MCP tools.
Open ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%/Claude/claude_desktop_config.json (Windows) and merge:
{
"mcpServers": {
"zooq": {
"url": "https://zooq.dev/api/mcp",
"headers": {
"X-API-Key": "zq_..."
}
}
}
}Replace zq_... with your key from /dash. Restart Claude. The tools appear in the tools menu under "zooq".
Cursor settings → MCP → paste:
{
"mcp": {
"servers": {
"zooq": {
"url": "https://zooq.dev/api/mcp",
"headers": { "X-API-Key": "zq_..." }
}
}
}
}Edit ~/.codex/config.toml — append:
[mcp_servers.zooq]
url = "https://zooq.dev/api/mcp"
http_headers = { "X-API-Key" = "zq_..." }Edit ~/.hermes/config.yaml — merge under mcp_servers:
mcp_servers:
zooq:
url: "https://zooq.dev/api/mcp"
headers:
X-API-Key: "zq_..."
enabled: trueEdit ~/.openclaw/openclaw.json — merge into the root object (or run openclaw mcp set zooq '<json>'):
{
"mcp": {
"servers": {
"zooq": {
"url": "https://zooq.dev/api/mcp",
"headers": {
"X-API-Key": "zq_..."
}
}
}
}
}The full catalog — 50 endpoints across 8 categories, every one of them callable from your MCP client. Tool names follow the convention category_endpoint (e.g. profile_full, companies_info_v2, search_jobs).
comments_allComments authored by a person across posts. Cursor-paginated.
companies_entity_idResolve a company slug to the numeric organization id used by the live company endpoints (posts, similar, affiliated, insights). Resolve once, reuse the id.
companies_universal_name_to_idResolve a company slug (the part after linkedin.com/company/) to its stable org_ id — the dataset id used by /companies/info. For the live company endpoints (posts, similar, affiliated, insights) use /api/v1/companies/entity-id instead; the two ids are not interchangeable. Returns the FULL company record (identical to /companies/info) — read `data.id`.
companies_infoFull company firmographics — description, industry, headcount, HQ, follower count, specialties.
companies_info_v2Company firmographics as a flat company record (not nested under a `company` key). Identical payload to /companies/info.
companies_name_lookupSearch companies by name. Returns matching company records; pagination cursor not currently available on this endpoint.
companies_employees_dataPeople who work or worked at an organization (professional records, same shape as /search/people). Cursor-paginated.
companies_similarSimilar companies / peers (id, name, industry, followers, url). Keyed by the numeric organization id: pass `slug` and Zooq resolves it for you at no extra credit cost, or pass `id` from /api/v1/companies/entity-id to skip the lookup.
companies_affiliated_pagesAffiliated / subsidiary / showcase pages of a company. Keyed by the numeric organization id: pass `slug` and Zooq resolves it for you at no extra credit cost, or pass `id` from /api/v1/companies/entity-id to skip the lookup.
companies_insightsEmployee-count total + distribution buckets (by department, seniority, location). Keyed by the numeric organization id: pass `slug` and Zooq resolves it for you at no extra credit cost, or pass `id` from /api/v1/companies/entity-id to skip the lookup.
companies_postsA company's recent posts. data.activities[].entityId is the activity id consumed by /posts/info, /posts/comments, /posts/likes. Keyed by the numeric organization id: pass `slug` and Zooq resolves it for you at no extra credit cost, or pass `id` from /api/v1/companies/entity-id to skip the lookup.
companies_jobsOpen job postings across one or more organizations.
email_verifyCheck whether an email address can receive mail, with a deliverability verdict and risk flags (catch-all, disposable, no-MX).
email_findDiscover a person's work email from their first name, last name, and company domain. Returns the address plus a confidence score.
email_find_by_profileIdentify a person and their current company from a professional profile URL (or handle), then find their work email — resolves name + domain for you.
email_reverseResolve the person and company behind a BUSINESS email address. Public/role/disposable mailboxes are rejected (422, no charge) before any work runs.
email_prospectsPage emails already known for a company domain. Cursor-paginated; returns up to 20 contacts per page with first/last name.
jobs_details_v2Full job-posting details — title, description, functions, apply url, organization, location.
jobs_similarSimilar job postings (title, organization, location, salary range, posted date).
jobs_people_also_viewed'People also viewed' postings (behavioral relatedness).
jobs_hiring_teamHiring-team member profiles for a posting. Empty members can mean the posting genuinely lists no team OR the posting id was not recognized.
jobs_posted_by_profileJob postings created by a person (e.g. a recruiter's or founder's open roles).
g_title_skills_lookupSkill catalog search by name (partial match) — skills only, despite the endpoint name. Page-paginated. Use to find a skill's skl_ id or normalized_name for the /search/people skills filter.
g_institution_lookupResolve one institution by its normalized name — returns the school name, url, and stable inst_ id. Get the normalized_name from /api/v1/search/schools first.
g_skill_lookupResolve one skill by its stable skl_ id — returns the display name and normalized name. Get the id from /api/v1/g/title-skills-lookup (skill search).
posts_featuredA person's activity feed (there is no separate 'featured' filter — returns the feed). Keyed by the person entityId: pass `handle` and Zooq resolves it for you at no extra credit cost, or pass `entityId` from /api/v1/profile/entity-id to skip the lookup.
posts_allA person's recent posts / activity stream. Cursor- or offset-paginated. Keyed by the person entityId: pass `handle` and Zooq resolves it for you at no extra credit cost, or pass `entityId` from /api/v1/profile/entity-id to skip the lookup.
posts_infoFull content of one post (returned under data.post). For comments use /posts/comments.
posts_commentsThreaded comments/replies on a post.
posts_likesPeople who reacted to a post + reaction type and total.
profile_overviewProfessional record by handle or stable prsn_ id (returns the full profile).
profile_fullComplete profile in one call — positions, education, skills, certifications.
profile_entity_idResolve a public handle to the person entityId used by the live person endpoints (posts, comments, interests, lookalikes). Resolve once, reuse the id.
profile_detailsFull professional record by stable prsn_ id (or handle).
profile_aboutProfile summary + location slice of the full record.
profile_full_experienceFull work history (full_positions slice of the profile record).
profile_educationEducation history (education slice of the profile record).
profile_skillsSkills (skills slice of the profile record). An empty array is legitimate — some profiles list no skills.
profile_certificationsCertifications (certifications slice of the profile record). An empty array is legitimate — some profiles list none.
profile_social_matrixFollower + connection counts and profile flags (slice of the record).
profile_username_to_urnResolve a public handle to its stable prsn_ profile id (the dataset id used by /profile/* lookups). For the live person endpoints — posts, comments, interests — use /api/v1/profile/entity-id instead; the two ids are not interchangeable. The response is the full profile record — read data.id; no second call needed.
profile_recommendationsRecommendations written for the person, with author details and text.
profile_similarSimilar professional profiles — expand a shortlist from one example.
profile_interestsEntities the person follows (companies, groups, people, newsletters).
search_peopleSearch professional records with rich filters — name, title, company, skills, education, tenure, geography. Cursor-paginated.
search_companiesSearch organizations by name or website with firmographic filters. Cursor-paginated.
search_jobsJob/opportunity search with the full filter set — location, salary, experience, work type, and more. Offset-paginated. data.jobs[].id is the opportunityEntityId consumed by /jobs/details-v2, /jobs/similar, /jobs/people-also-viewed, /jobs/hiring-team.
search_schoolsSearch institutions by name (partial match). Page-paginated. Use to discover an institution's inst_ id or normalized_name.
search_job_changesRecent professional job-change events — people who joined, left, or changed titles at organizations. Page-paginated. Built for trigger-based prospecting and territory monitoring.
search_alumniAlumni and current students of an institution (professional records + the education link). Page-paginated. Built for recruiting and warm-intro sourcing.
Every tool costs the same per-call rate as its REST counterpart — check your live balance and per-call cost on /dash.
Model Context Protocol is Anthropic's open standard for letting AI clients (Claude, etc.) discover and call external tools at runtime. Instead of you writing API wrappers in your agent code, your agent reads a list of tools from an MCP server and calls them directly via JSON-RPC. Zooq exposes its data endpoints this way.
A leaked key can't drain your balance — the server enforces a max-credits-per-hour limit per user (default 10,000/h, ~1,000 calls). Even a compromised key's damage is bounded.
Every tool call deducts credits atomically. Upstream returns 5xx? Credits auto-refund within seconds. No retries that double-charge.
Tool arguments are matched against the endpoint's declared schema. Unknown keys are dropped; oversized values truncated. Stops injection attempts into the upstream proxy.
Suspect your key leaked? Open /dash and regenerate. The old key stops working immediately.
Once installed, your agent sees every tool listed above. Sample prompts and the tool the agent will pick:
satyanadella" → profile_fullcompanies_name_lookup then companies_infosearch_peoplecompanies_universal_name_to_id then search_jobs with companies filtercompanies_insightsAgents can chain tools natively — the MCP protocol exposes the full parameter schema so the model knows which ID to pass where.
Every MCP tool call deducts credits live, same as the REST API. No monthly minimum, no surcharge for MCP. See /pricing for the credit pack and subscription tiers.
zq_).