Publish LinkedIn posts, upload media, manage comments and reactions, and read organization statistics.
Overview
Connect LinkedIn so AI clients can publish and manage your own posts (and Company Page posts when Community Management scopes are approved), upload media, work with comments and reactions, and read organization statistics. This is the hosted LinkedIn MCP integration for Claude, ChatGPT, Cursor, and other MCP clients — no self-hosted server required.
Common use cases
- Draft and publish posts — create text, image, video, or article posts as yourself or a Page you administer.
- Engage on posts — list comments, reply, and react.
- Page analytics — share, follower, and page statistics for organizations you manage.
Prerequisites
- A LinkedIn account
- A stackgate.ai account
- A LinkedIn developer application with Community Management API as the only product on that app (LinkedIn does not allow OpenID Connect or other products on the same CMA application)
- For Company Page tools: an admin/content role on the Page you want to manage
Getting credentials
- Sign in to stackgate.ai.
- Go to My Integrations and open LinkedIn.
- Click Connect LinkedIn and approve the OAuth prompt (basic profile + member/organization social scopes from Community Management).
- stackgate.ai stores your OAuth tokens encrypted. No manual API keys are required.
Optional for Pages: after connecting, use list_organizations then set_default_organization so create/upload tools default to that Page.
Using with AI clients
- Dedicated endpoint:
POST /mcp/linkedinwith a Sanctum bearer token - Private gateway: one config for all integrations — use
linkedin__*namespaced tools
See Documentation for HTTP authentication and private gateway setup.
Limitations
- No inbox / direct messages — LinkedIn does not grant general partners read/reply access to member DMs.
- No list-my-posts — listing member-authored historical posts requires a closed LinkedIn permission (
r_member_social). - Drafts — LinkedIn’s Posts API only accepts
PUBLISHEDon create. Review text in chat before callingcreate_post. - Organization list/post/analytics tools need Community Management approval on your LinkedIn developer app.
- Email is usually not returned on connect (CMA apps do not include OpenID /
r_emailaddress).
Troubleshooting
- 422 integration not configured — complete the OAuth connect flow in My Integrations.
- 403 / ACCESS_DENIED — missing OAuth scope or Page role; reconnect and confirm Community Management scopes and Page admin role.
- Token expired — disconnect and reconnect LinkedIn from the integration page.
- Media stuck PROCESSING — wait and call
get_image/get_video; large videos take longer to become AVAILABLE. - Cannot add OpenID to the same app — expected: CMA must be the only product. Use this CMA app for the LinkedIn integration; LinkedIn Ads uses a separate Advertising API app.
Available tools
-
get_me
Get the connected LinkedIn person profile and default organization from stored credentials.
-
list_organizations
List LinkedIn organizations where the connected person has an assigned role.
-
set_default_organization
Set the default LinkedIn organization URN used when publishing organization posts.
-
create_post
Create a LinkedIn post as the connected person, default organization, or explicit author URN.
-
get_post
Get a LinkedIn post by URN.
-
list_organization_posts
List LinkedIn posts authored by an organization with the Rest.li author finder.
-
update_post
Update the commentary on a LinkedIn post using Rest.li partial update.
-
delete_post
Delete a LinkedIn post by URN.
-
reshare_post
Reshare an existing LinkedIn post as the connected person, default organization, or explicit author.
-
upload_image
Upload an image to LinkedIn from base64, temp storage file_id, or source URL.
-
get_image
Get LinkedIn image metadata by image URN.
-
upload_video
Upload a video to LinkedIn from base64, temp storage file_id, or source URL.
-
get_video
Get LinkedIn video metadata by video URN.
-
get_social_metadata
Get social metadata for a LinkedIn entity URN.
-
list_comments
List comments on a LinkedIn entity such as a post URN.
-
create_comment
Create a comment on a LinkedIn entity.
-
delete_comment
Delete a comment from a LinkedIn entity.
-
update_comment
Update the text of a LinkedIn comment using Rest.li partial update.
-
list_reactions
List reactions on a LinkedIn entity.
-
create_reaction
Create a reaction on a LinkedIn entity.
-
delete_reaction
Delete a reaction on a LinkedIn entity for the actor.
-
get_organization_share_statistics
Get LinkedIn share statistics for an organization URN.
-
get_organization_follower_statistics
Get LinkedIn follower statistics for an organization URN.
-
get_organization_page_statistics
Get LinkedIn page statistics for an organization URN.
MCP endpoint:
https://stackgate.ai/mcp/linkedin
(HTTP) or via the
private gateway.