Skip to main content
Glama
Mohamed-Godaa

LinkedIn MCP for OpenWorker

linkedin_start_oauth_flow

Start a browser-based LinkedIn OAuth flow to capture the callback, exchange the authorization code, and store the token locally for authenticated API access.

Instructions

Start a browser-based LinkedIn OAuth flow, capture the localhost callback, exchange the code, and store the token locally.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
scopesNoOAuth scopes to request. Defaults include OIDC profile/email and w_member_social.
client_idNoDefaults to LINKEDIN_CLIENT_ID.
auth_methodNoUse client_secret for OpenID Connect. PKCE is only for non-OpenID native OAuth scopes.client_secret
redirect_uriNoLoopback redirect URI registered in the LinkedIn app.https://example.com/auth/linkedin/callback
client_secretNoDefaults to LINKEDIN_CLIENT_SECRET.
timeout_secondsNo
return_access_tokenNoWhen false, tokens are redacted from the tool result.
Install Server

TDQS

A3.5/5.0
Behavior4/5

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

Annotations already indicate a mutating, open-world tool, and the description adds concrete behavioral detail: it launches a browser-based flow, waits for a localhost callback, exchanges the authorization code, and persists the token locally. This goes beyond the annotations without contradicting them.

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 a single, front-loaded sentence that names the action, the mechanism, and the outcome with no filler or redundancy. Every phrase contributes to the agent's understanding.

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

Completeness3/5

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

The description captures the core flow and side effect well, which is adequate for a high-level selection decision. However, it omits important operational context for a complex OAuth tool: browser availability, human authorization steps, timeout implications, token storage details, and what the result contains, especially since no output schema is provided.

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 high at 86%, so the schema carries most parameter meaning. The description mentions 'localhost callback' and 'store the token locally,' which loosely aligns with redirect_uri and token handling, but it does not meaningfully expand on any individual parameter.

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 states a specific verb and resource: starting a browser-based LinkedIn OAuth flow, then captures callback, exchanges code, and stores token. It is clear what the tool does, though it does not explicitly distinguish itself from the sibling linkedin_exchange_authorization_code, which also involves exchanging a code.

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

Usage Guidelines2/5

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

The description gives no guidance on when to use this tool versus alternatives such as linkedin_exchange_authorization_code or linkedin_auth_status. Contextual conditions, prerequisites like a registered redirect URI, and whether this is the right tool for an already-obtained code are all left unstated.

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

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Mohamed-Godaa/linkedin-mcp-openworker'

If you have feedback or need assistance with the MCP directory API, please join our Discord server