linkedin-pipedreamPost to LinkedIn, comment, like, search organizations, and manage profiles via Pipedream OAuth integration.
Install via ClawdBot CLI:
clawdbot install G9Pedro/linkedin-pipedreamFull LinkedIn automation using Pipedream's OAuth infrastructure. Post as yourself or your organization, comment on posts, search companies, and more.
# 1. Connect LinkedIn (generates OAuth link for user to click)
pdauth connect linkedin --user telegram:5439689035
# 2. After user authorizes, verify connection
pdauth status --user telegram:5439689035
# 3. Post to LinkedIn
pdauth call linkedin.linkedin-create-text-post-user \
--user telegram:5439689035 \
--args '{"instruction": "Create a post: Excited to announce our new product launch! 🚀"}'
# Generate OAuth link
pdauth connect linkedin --user USER_ID
# Share with user: "Click to authorize LinkedIn: <link>"
# User clicks → authorizes via LinkedIn → done
# Verify connection
pdauth status --user USER_ID
User ID convention: Use telegram: format for Telegram users.
| Tool | Purpose |
|------|---------|
| linkedin-create-text-post-user | Post as personal account |
| linkedin-create-image-post-user | Post with image (personal) |
| linkedin-create-comment | Comment on any post |
| linkedin-create-like-on-share | Like a post |
| linkedin-search-organization | Search for companies |
| linkedin-get-current-member-profile | Get your own profile |
| linkedin-get-member-profile | Get any member's profile |
| linkedin-get-org-member-access | Check org admin status |
| linkedin-retrieve-comments-shares | Get comments on a post |
| linkedin-delete-post | Delete your post |
| Tool | Issue | Workaround |
|------|-------|------------|
| linkedin-create-text-post-organization | "tool name too long" bug | Use direct SDK call |
| linkedin-create-image-post-organization | Same bug | Use direct SDK call |
pdauth call linkedin.linkedin-create-text-post-user \
--user telegram:5439689035 \
--args '{"instruction": "Create a post: Your post content here. Use emojis 🎉 and hashtags #AI #Tech"}'
Tips:
pdauth call linkedin.linkedin-create-image-post-user \
--user telegram:5439689035 \
--args '{"instruction": "Create image post with text: Check out our new office! Image URL: https://example.com/image.jpg"}'
# Comment using post URN
pdauth call linkedin.linkedin-create-comment \
--user telegram:5439689035 \
--args '{"instruction": "Comment on urn:li:share:7293123456789012480 with text: Great insights! Thanks for sharing."}'
Finding post URNs:
linkedin.com/posts/username_activity-7293123456789012480 → URN is urn:li:share:7293123456789012480linkedin-retrieve-comments-shares on known postspdauth call linkedin.linkedin-create-like-on-share \
--user telegram:5439689035 \
--args '{"instruction": "Like the post urn:li:share:7293123456789012480"}'
pdauth call linkedin.linkedin-search-organization \
--user telegram:5439689035 \
--args '{"instruction": "Search for companies matching: artificial intelligence startups"}'
pdauth call linkedin.linkedin-get-current-member-profile \
--user telegram:5439689035 \
--args '{"instruction": "Get my LinkedIn profile"}'
Returns: name, headline, URN, vanity name, etc.
pdauth call linkedin.linkedin-get-member-profile \
--user telegram:5439689035 \
--args '{"instruction": "Get profile for member URN urn:li:person:30_5n7bx7f"}'
pdauth call linkedin.linkedin-get-org-member-access \
--user telegram:5439689035 \
--args '{"instruction": "Check my access level for organization 105382747"}'
Returns: ADMINISTRATOR, MEMBER, or NONE
pdauth call linkedin.linkedin-retrieve-comments-shares \
--user telegram:5439689035 \
--args '{"instruction": "Get comments for post urn:li:share:7293123456789012480"}'
pdauth call linkedin.linkedin-delete-post \
--user telegram:5439689035 \
--args '{"instruction": "Delete post urn:li:share:7293123456789012480"}'
linkedin-create-text-post-organization fails via MCP with:
Error: tool name too long
This is a Pipedream MCP bug, not a LinkedIn API issue.
Create a Node.js script to post as organization:
// org-post.mjs
import { PipedreamClient } from '@pipedream/sdk';
const client = new PipedreamClient({
projectEnvironment: 'development',
clientId: 'YOUR_CLIENT_ID', // from ~/.config/pdauth/config.json
clientSecret: 'YOUR_CLIENT_SECRET',
projectId: 'YOUR_PROJECT_ID',
});
async function postAsOrg(orgId, text) {
const result = await client.actions.run({
id: 'linkedin-create-text-post-organization',
externalUserId: 'telegram:5439689035',
configuredProps: {
linkedin: { authProvisionId: 'apn_4vhLGx4' }, // LinkedIn account ID
organizationId: orgId,
text: text,
},
});
console.log('Posted!', result);
}
// Example usage
postAsOrg('105382747', 'Hello from Versatly! 🚀');
Run with:
node org-post.mjs
| Organization | ID | URN |
|--------------|-----|-----|
| Versatly | 105382747 | urn:li:organization:105382747 |
| Item | Value |
|------|-------|
| Member URN | urn:li:person:30_5n7bx7f |
| User ID (Pipedream) | telegram:5439689035 |
| Auth Provision ID | apn_4vhLGx4 |
| Admin of | Versatly (org 105382747) |
| Type | Format | Example |
|------|--------|---------|
| Person | urn:li:person:ID | urn:li:person:30_5n7bx7f |
| Organization | urn:li:organization:ID | urn:li:organization:105382747 |
| Post/Share | urn:li:share:ID | urn:li:share:7293123456789012480 |
| Comment | urn:li:comment:(urn:li:share:ID,ID) | Complex nested URN |
# Post
pdauth call linkedin.linkedin-create-text-post-user \
--user telegram:5439689035 \
--args '{"instruction": "Create post: Just shipped a new feature! 🎉"}'
# The response includes the post URN - save it for later
# Find posts to engage with (manual: get URN from LinkedIn URL)
# Like the post
pdauth call linkedin.linkedin-create-like-on-share \
--user telegram:5439689035 \
--args '{"instruction": "Like post urn:li:share:7293123456789012480"}'
# Comment
pdauth call linkedin.linkedin-create-comment \
--user telegram:5439689035 \
--args '{"instruction": "Comment on urn:li:share:7293123456789012480: Congrats on the launch!"}'
# Search for the company
pdauth call linkedin.linkedin-search-organization \
--user telegram:5439689035 \
--args '{"instruction": "Search for OpenAI"}'
# Check if you have admin access (for orgs you manage)
pdauth call linkedin.linkedin-get-org-member-access \
--user telegram:5439689035 \
--args '{"instruction": "Check access for organization 12345678"}'
| Error | Cause | Solution |
|-------|-------|----------|
| App not connected | No LinkedIn OAuth | Run pdauth connect linkedin --user USER_ID |
| tool name too long | MCP bug for org tools | Use direct SDK workaround |
| 403 Forbidden | No permission for action | Check org admin status |
| Invalid URN | Malformed URN format | Use correct format: urn:li:type:id |
| Rate limited | Too many API calls | Wait and retry (LinkedIn limits ~100 calls/day) |
# Quick status check
pdauth status --user telegram:5439689035
# JSON output for parsing
pdauth status --user telegram:5439689035 --json
If OAuth expires or breaks:
pdauth disconnect linkedin --user telegram:5439689035
pdauth connect linkedin --user telegram:5439689035
# Share new link with user
# 1. Verify connection
pdauth status --user telegram:5439689035
# 2. Check org admin status
pdauth call linkedin.linkedin-get-org-member-access \
--user telegram:5439689035 \
--args '{"instruction": "Check access for organization 105382747"}'
# 3. Post personal announcement
pdauth call linkedin.linkedin-create-text-post-user \
--user telegram:5439689035 \
--args '{"instruction": "Create post: Thrilled to share that Versatly just launched our new AI assistant! 🤖 #AI #Startup"}'
# 4. Post as organization (use SDK workaround)
# → Run org-post.mjs script
# 5. Engage with relevant industry posts
pdauth call linkedin.linkedin-create-comment \
--user telegram:5439689035 \
--args '{"instruction": "Comment on urn:li:share:XXXXX: Great perspective on AI safety!"}'
| File | Purpose |
|------|---------|
| ~/.config/pdauth/config.json | Pipedream credentials |
| ~/.openclaw/workspace/pdauth/ | pdauth CLI source |
| ~/.openclaw/workspace/skills/pdauth/SKILL.md | pdauth skill reference |
Generated Mar 1, 2026
A social media manager uses this skill to automate LinkedIn posts and engagement for multiple tech startup clients. They schedule product announcements, share industry insights, and interact with relevant posts to boost visibility and lead generation.
A recruitment agency leverages the skill to search for organizations and profiles on LinkedIn, identifying potential candidates and companies. They automate outreach by liking and commenting on posts to build relationships and fill job openings efficiently.
An individual content creator uses the skill to post regularly on LinkedIn, sharing expertise in areas like AI or business strategy. They automate image posts, engage with followers through comments, and track profile growth to monetize through consulting or courses.
A small business owner automates LinkedIn activities to promote their services, such as web design or coaching. They post updates, comment on industry discussions, and search for potential clients or partners to drive sales and networking opportunities.
Offer a subscription-based service where clients pay monthly for automated LinkedIn posting, commenting, and engagement. Use the skill to manage multiple accounts, providing analytics and reporting to justify the fee and retain customers.
Run a marketing agency that charges retainer fees for managing LinkedIn profiles of businesses. Utilize the skill to handle posting schedules, engagement tasks, and profile optimization, scaling services across industries with tiered pricing.
Provide freelance consulting to help businesses set up and optimize LinkedIn automation using this skill. Charge project-based or hourly rates for integration, training, and troubleshooting, targeting small to medium enterprises.
💬 Integration Tip
Ensure the pdauth skill is installed first and use the provided OAuth flow with Telegram user IDs for seamless LinkedIn connection and tool execution.
Fetch and read transcripts from YouTube videos. Use when you need to summarize a video, answer questions about its content, or extract information from it.
Fetch and summarize YouTube video transcripts. Use when asked to summarize, transcribe, or extract content from YouTube videos. Handles transcript fetching via residential IP proxy to bypass YouTube's cloud IP blocks.
Browse, search, post, and moderate Reddit. Read-only works without auth; posting/moderation requires OAuth setup.
Interact with Twitter/X — read tweets, search, post, like, retweet, and manage your timeline.
LinkedIn automation via browser relay or cookies for messaging, profile viewing, and network actions.
Search YouTube videos, get channel info, fetch video details and transcripts using YouTube Data API v3 via MCP server or yt-dlp fallback.