Skip to main content
Glama
oliverhruby

LinkedIn MCP Server

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
LINKEDIN_CLIENT_IDYesYour LinkedIn app Client ID.
LINKEDIN_REDIRECT_URIYesThe OAuth redirect URI configured in your LinkedIn app, e.g. http://127.0.0.1:8765/callback.
LINKEDIN_CLIENT_SECRETYesYour LinkedIn app Client Secret.

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
auth_set_access_tokenC

Set active LinkedIn access token and optional capability hints.

auth_startC

Start OAuth authorization by generating URL and optional localhost callback listener.

auth_pollB

Poll pending OAuth state for callback status and auth code availability.

auth_finishC

Exchange authorization code for token and activate session.

auth_refreshC

Refresh access token using refresh token from session or argument.

auth_set_role_hintsC

Update role hints used by capability gating.

auth_statusB

Return current session status.

auth_clearA

Clear active session from memory.

list_tool_catalogB

List tool capability metadata used by approval-aware clients.

list_endpoint_manifestA

List endpoint coverage scaffold for drift tracking.

list_capabilitiesA

Return effective capabilities for current session hints.

can_execute_toolB

Check whether a tool is available under current scope and role hints.

linkedin_getC

Raw authenticated GET helper.

linkedin_postC

Raw authenticated POST helper.

whoamiB

Resolve current principal using a configurable profile endpoint.

get_member_profileC

Get member profile using /v2/userinfo or member-specific endpoint if provided.

list_accessible_organizationsC

List organizations where current user has admin-like roles.

create_postA

Create a simple text post. Preview by default; set execute=true to send.

get_postB

Get a post by URN.

delete_postA

Delete a post by URN. Preview by default.

list_commentsC

List comments for a resource path, e.g. /rest/socialActions/{urn}/comments.

create_commentB

Create comment at provided endpoint path. Preview by default.

list_reactionsB

List reactions for a resource path, e.g. /rest/socialActions/{urn}/reactions.

create_reactionB

Create reaction at provided endpoint path. Preview by default.

delete_reactionB

Delete reaction using full endpoint path. Preview by default.

initialize_media_uploadC

Initialize media upload workflow for image/video assets. Preview by default.

finalize_media_uploadC

Finalize media upload workflow for image/video assets. Preview by default.

list_ad_accountsC

List ad accounts (approval-gated capability).

list_campaign_groupsC

List ad campaign groups.

create_campaign_groupC

Create campaign group. Preview by default.

list_campaignsC

List ad campaigns.

create_campaignB

Create ad campaign. Preview by default.

update_campaignC

Update ad campaign fields. Preview by default.

get_ad_analyticsC

Fetch ad analytics with custom query payload.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

C2.8/5.0

Scored across 34 tools

Disambiguation3/5

Most tools are clearly separated by resource and action, such as list_campaigns and create_comment. However, whoami overlaps with get_member_profile, and the capability/metadata tools (list_tool_catalog, list_capabilities, list_endpoint_manifest, can_execute_tool) have fuzzy boundaries that could cause an agent to pick the wrong one.

Naming Consistency3/5

The dominant snake_case style is readable and mostly follows a verb_noun pattern like list_campaigns and create_post. But the set mixes conventions with one-word whoami, noun_verb linkedin_get/linkedin_post, and auth_* tools that resemble domain-prefixed verbs or nouns, making the pattern inconsistent.

Tool Count2/5

34 tools is too many for an agent to navigate efficiently, especially with 8 auth tools, 4 capability/metadata tools, and raw HTTP helpers padding the surface. The broad LinkedIn scope justifies some size, but several utility tools could be consolidated or removed.

Completeness3/5

Core workflows for posts, comments, reactions, media upload, and ad campaigns are represented, and raw linkedin_post can fill some gaps. However, there is no update_post, no delete_comment, and no semantic tool to attach uploaded media to a post, leaving notable lifecycle dead ends.

Maintenance

ActivityMaintained
ResponsivenessUnresponsive