Skip to main content
Glama

ZOOQ - LinkedIn Data for AI Agents

companies_employees_data

Read-onlyIdempotent

People who work or worked at an organization (professional records, same shape as /search/people). Cursor-paginated. (Costs 10 Zooq credits.)

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
slugYesCompany public slug — the part after linkedin.com/company/. Resolve via companies_name_lookup (or /search/companies) if you only have a name — read data[].slug.
sortNoOrdering. Accepted values: newest, oldest, recently_left (use recently_left with current_only=false).
limitNoResults per page, 1-50 (default 20).
titleNoPartial job-title filter (min 3 chars), e.g. software engineer. Combine with current_only=true to target a current role.
cursorNoOpaque pagination cursor from the previous response.
geo_cityNoCity filter (min 3 chars).
start_yearNoMatch people who started in this year (1900-current).
start_monthNoMatch people who started in this month (1-12), paired with start_year.
current_onlyNoRestrict to people in a current role at the company.
geo_country_codeNoISO country code filter, e.g. us.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
itemsNoArray in the example

TDQS

A3.8/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare read-only, idempotent, open-world, and non-destructive behavior. The description adds useful non-obvious context: cursor pagination, a 10-credit cost, inclusion of current and former employees, and output shape compatibility with /search/people. No contradiction with annotations exists.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is three tight clauses with no filler: scope, output/behavior, and cost. It front-loads the core purpose and each phrase earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the rich output schema and annotations, the description covers the essential non-schema context: pagination behavior, credit cost, and the population of people returned. The only notable gap is explicit guidance on when to use this versus sibling tools, but that is largely a usage-guideline concern.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so every parameter is already documented in the input schema. The tool description itself does not add parameter-level detail, so the baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly identifies the resource: people who currently work or previously worked at an organization, and notes output shape parity with '/search/people'. It does not include an explicit verb like 'list' or 'retrieve', and it does not explicitly contrast with siblings such as search_people, so it falls just short of a 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The intended context is implied: use this tool to get employees of an organization identified by company slug. However, the description does not explicitly say when to choose this over alternatives like search_people or profile_employment_history, and it provides no exclusions or routing conditions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

TDQS

A3.7/5.0
Disambiguation3/5

Most tools are separated by domain prefixes and the descriptions are unusually explicit about differences, but there are direct overlaps: companies_name_lookup is the same upstream as search_companies, companies_entity_id vs companies_universal_name_to_id resolve different id spaces, and search_people/search_people_live plus search_companies/search_companies_live cover similar ground. An agent can usually pick correctly, but only after close reading.

Naming Consistency4/5

The set is consistently snake_case with readable domain prefixes like companies_, jobs_, posts_, profile_, and search_. Deviations include the unexplained g_* prefix, jobs_details_v2's version suffix, affiliate_program lacking a resource prefix, and the duplicate naming convention of companies_name_lookup vs search_companies.

Tool Count2/5

45 tools is well above the 25+ threshold and creates a heavy surface for an agent to scan. While the domains are broad, some tools are redundant (companies_name_lookup/search_companies) or tangential (affiliate_program), so the count is not fully justified.

Completeness4/5

The server covers people, companies, jobs, posts, email, schools, and skills with both search and detail endpoints, which is strong for a read-only LinkedIn API. Obvious gaps like a global post search or a company followers list are absent, but the existing paths support most workflows without dead ends.