Skip to main content
Glama

LinkMCP: hosted LinkedIn MCP server

Search LinkedIn Posts

linkedin_search_posts
Read-onlyIdempotent

Search LinkedIn posts by keywords, for example to find people who ask for a service, announce hiring, or post about a topic. Optional filters: date posted (past day, week or month) and the order (relevance, or LinkedIn's "Latest" order with recent posts first). Returns up to 10 posts per call: each with its activityUrn and postUrl, the author (name, headline, profile link, person or company), the post text (up to 1,000 characters), reaction, comment and repost counts, and the date posted. To see who reacted or commented, pass a post's activityUrn (or its postUrl when activityUrn is missing) to linkedin_get_post_reactions or linkedin_get_post_comments. LinkedIn also returns loosely related posts: keywordsInText is true only when the post text contains every keyword (or one of them, for keywords joined with OR). Put an exact phrase in double quotes. Pass nextCursor to get the next page of the same search.

Input Schema

NameRequiredDescriptionDefault
cursorNonextCursor from a previous answer, to get the next page of the same search. With a cursor, the other inputs are not used.
sort_byNoThe order of the results: "relevance" (default) or "date" (LinkedIn's "Latest" order, with recent posts first).
keywordsNoThe words to find in LinkedIn posts, for example "hiring SDR" or "looking for a marketing agency". Put an exact phrase in double quotes. At most 200 characters. Needed for a new search.
date_postedNoOnly posts from this period: "past_day" (the last 24 hours), "past_week" or "past_month".

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.6/5.0
Behavior5/5

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

The annotations already mark this as a read-only, idempotent, open-world operation, so the description's job is to add behavior on top. It does so: a 10-post per-call cap, the exact returned fields, the caveat that LinkedIn returns loosely related posts, and how keywordsInText is computed. That is material behavior an agent could not infer from the structured fields.

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 front-loaded with purpose, then filters, then return shape, then follow-up routing. Nearly every sentence earns its place, though the return-value enumeration is dense enough that an agent must read to the end to find the useful pagination note.

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

Completeness5/5

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

No output schema exists, so the description must describe results, and it does: per-post fields, the 10-post limit, and the caveat about loosely related matches. Pagination, filtering, and downstream tool routing are all covered, so nothing needed to call it correctly is missing.

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 coverage is 100%, so the schema already documents all four parameters. The description still adds matching semantics, namely that keywordsInText is true only when the post text contains every keyword (or one of several joined with OR) and how exact phrases work, which meaningfully shapes how the agent writes queries.

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

Purpose5/5

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

A specific verb plus resource ('Search LinkedIn posts by keywords') is followed by three concrete use cases (finding people asking for a service, hiring announcements, topical posts). That is enough to separate it from siblings like linkedin_search_people, linkedin_search_jobs, and linkedin_get_company_posts without opening any schema.

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

Usage Guidelines4/5

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

The description gives clear usage context, routes the agent to linkedin_get_post_reactions and linkedin_get_post_comments for follow-up detail, and explains when to pass nextCursor. It stops short of an explicit 'do not use this for X' exclusion, such as distinguishing it from search_people or company posts.

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.