Skip to main content
Glama

companies_posts

Read-onlyIdempotent

A 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 companies_entity_id to skip the lookup. (Costs 10 Zooq credits.)

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
idNoNumeric organization id from companies_entity_id; the urn:li:organization: form is accepted. An org_ id (dataset namespace, from companies_info) or a slug placed here is recognized and translated automatically. Provide `id` OR `slug`.
slugNoCompany public slug — the part after linkedin.com/company/ — or the full company URL. Resolved to `id` automatically at no extra credit cost. Any company identifier is accepted here and sorted by format (slug, URL, numeric id, org_ id). Provide `id` OR `slug`; `slug` is the simplest.
startNoPagination offset.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
activitiesNoArray 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 mark the tool as read-only, idempotent, and non-destructive, and the description adds meaningful behavioral detail: it discloses the 10-credit cost, explains the slug-to-id resolution with no extra credit cost, and reveals the data.activities[].entityId relationship to downstream endpoints. This goes beyond what annotations alone provide.

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

Conciseness4/5

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

The description is compact and front-loads the core purpose, then adds cross-endpoint context and identifier guidance. It is technically dense but not wordy; the opening phrase is a fragment rather than a full sentence, which slightly reduces polish.

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 a rich output schema, full parameter documentation, and strong safety annotations, the description covers the essential operational details: credit cost, identifier resolution, and how the result connects to posts_info, posts_comments, and posts_likes. It does not elaborate on the `start` pagination parameter, but the schema already documents it fully.

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

Parameters4/5

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

Schema description coverage is 100%, so the baseline is 3. The description adds value beyond the schema by explaining the practical tradeoff between `id` and `slug`, emphasizing that using `slug` incurs no extra credit cost, and clarifying that the `id` form from companies_entity_id skips the lookup.

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 as 'a company's recent posts' and notes that the returned activity IDs feed into /posts/info, /posts/comments, and /posts/likes, which distinguishes it from post-detail endpoints. It lacks an explicit verb like 'list' or 'retrieve,' but the intent is unambiguous.

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 description implies usage context by explaining how to key the request via slug or id and how the entityId connects to other post endpoints. However, it does not explicitly state when to prefer this tool over alternatives such as posts_all, nor does it give exclusion criteria.

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.6/5.0
Disambiguation2/5

Many tools have strongly overlapping purposes: companies_name_lookup is explicitly equivalent to search_companies, companies_enrich/companies_info/companies_universal_name_to_id all return company-profile data, and profile_full overlaps with profile_employment_history and profile_enrich. The descriptions are detailed, but an agent would still frequently have to choose between near-duplicate endpoints.

Naming Consistency4/5

Tool names mostly follow a predictable resource-prefixed snake_case pattern, such as companies_*, jobs_*, posts_*, profile_*, and search_*, which makes the set readable and groupable. Minor inconsistencies like jobs_details_v2, g_title_skills_lookup, and mixed noun suffixes (info/details/full/lookup) keep it from a perfect score.

Tool Count2/5

44 tools is well beyond the heavy 25+ band, and several tools appear to be different lookup modes or near-duplicates of the same underlying capability. The broad LinkedIn-style data domain explains much of the size, but the set still feels bloated rather than well-scoped.

Completeness4/5

The API covers the core read-only professional-data workflows well: people, companies, jobs, posts, comments, likes, email discovery/verification, schools, skills, and targeted searches. Minor gaps exist, such as some job filters being unusable and no direct exposure of certain profile alias endpoints, but agents can generally complete end-to-end workflows.

Resources