Linkedin Pages Mcp — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited Linkedin Pages Mcp (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
MCP server for managing LinkedIn Company Pages via the official Community Management API. Post content, manage comments, track analytics, and more — all through the Model Context Protocol.
This is the first MCP server for LinkedIn Company Page management using LinkedIn's official API.
| Category | Tools |
|---|---|
| Posts | Create, list, get, update, delete posts (text, images, articles, polls) |
| Comments | Read, create, and delete comments on behalf of the company page |
| Reactions | Read reactions, react to posts (LIKE, PRAISE, EMPATHY, INTEREST, APPRECIATION) |
| Analytics | Follower stats and demographics, page views/clicks, per-post engagement |
| Media | Initialize image uploads for rich media posts |
| Organization | Get company page details (name, industry, website, staff count) |
16 tools total. All using LinkedIn's official REST API with proper OAuth 2.0 authentication.
Your company page URL looks like https://www.linkedin.com/company/111806031/ — the number is your Organization ID.
LinkedIn uses 3-legged OAuth 2.0. You need these scopes:
w_organization_social — post and comment on behalf of the companyr_organization_social — read posts, comments, and engagementrw_organization_admin — manage page and read analyticsSee LinkedIn OAuth documentation for the full flow.
pip install linkedin-pages-mcpOr from source:
git clone https://github.com/MCPWorks-Technologies-Inc/linkedin-pages-mcp.git
cd linkedin-pages-mcp
pip install -e .Set environment variables:
export LINKEDIN_ACCESS_TOKEN="your-oauth-token"
export LINKEDIN_ORGANIZATION_ID="111806031"Or create a .env file (see .env.example).
Add to your .mcp.json:
{
"mcpServers": {
"linkedin-pages": {
"command": "linkedin-pages-mcp",
"env": {
"LINKEDIN_ACCESS_TOKEN": "your-oauth-token",
"LINKEDIN_ORGANIZATION_ID": "111806031"
}
}
}
}Then ask your AI assistant:
"Post an update to our LinkedIn company page about our latest release"
"Show me our LinkedIn page analytics for this month"
"Reply to the latest comments on our most recent post"
Add as an MCP server plugin on your MCPWorks namespace:
"Add the LinkedIn Pages MCP server to my namespace"
Then your MCPWorks functions can call LinkedIn tools from inside the sandbox:
from functions import mcp__linkedin_pages__linkedin_get_posts
from functions import mcp__linkedin_pages__linkedin_get_follower_stats
posts = mcp__linkedin_pages__linkedin_get_posts(count=5)
stats = mcp__linkedin_pages__linkedin_get_follower_stats(time_granularity="MONTH")
top_post = max(posts['elements'], key=lambda p: p.get('engagement', 0))
result = {
'followers': stats.get('followerCount'),
'top_post': top_post.get('commentary', '')[:100],
'total_posts': len(posts['elements']),
}All LinkedIn data stays in the sandbox. Only the summary returns to the AI context.
| Tool | Description |
|---|---|
linkedin_create_post | Create a text, article, or media post on the company page |
linkedin_get_posts | List recent posts (paginated, sorted by last modified) |
linkedin_get_post | Get a single post by ID |
linkedin_update_post | Update post text/commentary |
linkedin_delete_post | Delete a post |
| Tool | Description |
|---|---|
linkedin_get_comments | Get comments on a post |
linkedin_create_comment | Comment on a post as the company page |
linkedin_delete_comment | Delete a comment |
| Tool | Description |
|---|---|
linkedin_get_reactions | Get reactions on a post |
linkedin_react_to_post | React to a post as the company page |
| Tool | Description |
|---|---|
linkedin_get_follower_stats | Follower counts and growth over time |
linkedin_get_page_stats | Page views and clicks |
linkedin_get_post_stats | Per-post engagement (impressions, clicks, likes, comments, shares) |
linkedin_get_follower_demographics | Follower breakdown by location, seniority, industry, company size |
| Tool | Description |
|---|---|
linkedin_init_image_upload | Get an upload URL and media URN for image posts |
| Tool | Description |
|---|---|
linkedin_get_organization | Get company page details |
| Tier | Calls/App/Day | Calls/Member/Day | Webhooks |
|---|---|---|---|
| Development | 500 | 100 | No |
| Standard | Unrestricted | Unrestricted | Yes |
Development tier is granted on application. Standard tier requires a video demo review by LinkedIn (~60 days).
MIT License. See LICENSE.
Built by MCPWorks Technologies Inc.
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.