LeadShark MCP
Pro+Control your LeadShark automations with natural language. No UI required.
Execution-focused. Fail-safe. Intent → Automation.
New to MCP? See Anthropic's guide on connecting to remote MCP servers.
Just want to use this in Claude.ai?
Paste one URL into Settings → Connectors. Under 60 seconds, no install.
Overview
The LeadShark MCP (Model Context Protocol) server lets AI assistants like Cursor, Claude, and ChatGPT manage your entire automation workflow through conversation.
35 Tools
End-to-end automation control
Fail-Safe
Draft by default, confirm destructive
No UI
Intent → Automation directly
What You Can Do
list_recent_posts— See your latest LinkedIn postscreate_automation— Create from natural languagelist_automations— View all with performance statsget_automation— Read one automation’s full specedit_automation— Update status, keywords, copyschedule_post_with_automation— Schedule + auto-attach automationlist_scheduled_posts— View all scheduled postsget_scheduled_post— Read one scheduled post + automationedit_scheduled_post— Update content or reschedulecancel_scheduled_post— Cancel pending posts (requires confirm)set_daily_dm_limit— Safety lever (0 = emergency stop)suggest_automation_settings— AI generates settings from post textcomment_on_post— Comment on a post as yourselfreact_to_post— Like or react to a post as yourselfsend_connection_request— Invite a person to connectmanage_invitations— Accept/ignore incoming requests in bulklist_actions— Read your agent’s own action historylist_companies— See the Company Pages you managecomment_as_company— Comment as your Company Pagereact_as_company— Like or react as your Company Pagesearch— Find ICP-fit people or companies on LinkedInlist_person_posts— Pull a person’s recent posts to act onget_person_activity— A person’s recent comments & reactionslist_post_engagers— Everyone who engaged a post, dedupeddiscover_lead_magnets— Fresh lead-magnet posts to engagelist_signals— Your heat-scored hot leadsenrich— Enrich a person into a structured profileenrich_company— Enrich a company into a structured profilesend_message— DM a connection, or InMail a non-connection, as yourselfengage_with_comment— Reply to or like a comment — as yourself (Apex), or in a Company Page’s voice with organization_id (Pro+)list_recent_messages— Triage your most recent DM threadsget_messages_with_person— Read the full conversation with someonefeed— Read your own LinkedIn home feedget_lead_activity— A lead’s full activity timelinemanage_activity_limits— Check remaining budget before acting; pause/tighten a channelWhat You Can Say
Talk to your AI assistant naturally. It figures out which tool to use.
“Show me my recent posts”
→ list_recent_posts
“Automate commenters on my Claude guide post”
→ create_automation
“DM anyone who says 'interested' and auto-connect with them”
→ create_automation
“List all my running automations”
→ list_automations
“Pause the AI tools automation”
→ edit_automation
“Enable auto-like on my Claude guide automation”
→ edit_automation
“Add a follow-up DM that sends after 2 hours if no reply”
→ edit_automation
“Change the DM template to mention the new pricing”
→ edit_automation
“Turn on partially engage so I don't double-reply”
→ edit_automation
“Enable link tracking on my active automations”
→ edit_automation
“Schedule a post for tomorrow 9am EST”
→ schedule_post_with_automation
“Schedule my Claude guide giveaway post for Monday morning with full automation”
→ schedule_post_with_automation
“Plan a lead magnet post: publish Friday 10am, DM anyone who comments 'interested'”
→ schedule_post_with_automation
“Schedule a post with this image: https://example.com/my-infographic.png”
→ schedule_post_with_automation
“Create a lead magnet post for Monday 9am with the carousel image from my Google Drive”
→ schedule_post_with_automation
“Show me all my scheduled posts”
→ list_scheduled_posts
“What posts are scheduled for this week?”
→ list_scheduled_posts
“Change tomorrow's post content to include the new link”
→ edit_scheduled_post
“Reschedule Monday's post to Tuesday 2pm”
→ edit_scheduled_post
“Update Monday's post automation to use the new discount link”
→ edit_scheduled_post
“Change the keywords on my scheduled lead magnet post”
→ edit_scheduled_post
“Enable auto-like on tomorrow's scheduled post automation”
→ edit_scheduled_post
“Cancel the post scheduled for Friday”
→ cancel_scheduled_post(requires confirmation)
“Delete tomorrow's scheduled post”
→ cancel_scheduled_post(requires confirmation)
“Set my daily DM limit to zero”
→ set_daily_dm_limit(requires confirmation)
“Analyze my latest post and suggest automation settings for it”
→ suggest_automation_settings
“What keywords and DM template should I use for this lead magnet post?”
→ suggest_automation_settings
“Put the download link in the first comment instead of the post”
→ schedule_post_with_automation
“Rename that automation to 'Q3 Lead Magnet'”
→ edit_automation
“Comment 'love this — congrats on the launch!' on that post for me”
→ comment_on_post
“Like that post”
→ react_to_post
“Send a connection request to that hot lead”
→ send_connection_request
“What company pages do I manage?”
→ list_companies
“Schedule this post for Tuesday 9am as my company page”
→ schedule_post_with_automation
“Comment 'we're hiring builders!' on that post as LeadShark”
→ comment_as_company
“Like my latest post as my company page”
→ react_as_company
“Find VP Marketing people at SaaS companies in my 2nd-degree network”
→ search
“Search LinkedIn for fintech companies in London”
→ search
“Find me fresh lead-magnet posts to engage with today”
→ discover_lead_magnets
“Show me any new lead-magnet posts since yesterday”
→ discover_lead_magnets
“Who are my hottest leads right now?”
→ list_signals
“List signals with a heat score above 70”
→ list_signals
“Enrich that lead — what's their role and company?”
→ enrich
“Enrich Acme Corp — industry, size, and HQ?”
→ enrich_company
“Pull Jane Doe's last 5 posts and comment on the most recent”
→ list_person_posts
“What has this prospect been commenting on and reacting to lately?”
→ get_person_activity
“Who engaged with my last post? Build me a lead list”
→ list_post_engagers
“Show my pending connection requests”
→ manage_invitations
“Accept the founders, ignore the rest”
→ manage_invitations
“What have I already done? Anything refused or still pending approval?”
→ list_actions
Tools (35)
Complete automation control. Each tool does one thing well.
marks an Apex-only tool. Everything else is available on Pro+ and Apex.
Act on posts & people
ApexThe core “Act” arm of the agent loadout — engage as yourself with the posts and people you surface anywhere across the toolkit: discover_lead_magnets and list_signals, your own feed, get_person_activity (the posts someone's recently been commenting on and reacting to), list_post_engagers (everyone who engaged a given post), list_person_posts / list_recent_posts, or search. Use comment_on_post / react_to_post with a post's post_id, and send_connection_request to invite a person to connect. Go further into conversations with send_message (DMs, or InMail a non-connection with as_inmail) and engage_with_comment (reply to or like a comment), and read what's happening with list_recent_messages, get_messages_with_person, feed (your own home feed), and get_lead_activity (a lead's full history with you). Acting as yourself is Apex; the Company-Page equivalents below stay Pro+.
Company Pages
Pro+Act as a LinkedIn Company Page you administer. Start with list_companies to get the page's id, then pass it as organization_id to the other tools (including schedule_post_with_automation). You must be an admin of the page on your connected LinkedIn account.
Search, Discover, Signals & Enrich
ApexThe SEE and DECIDE half of the agent loop. search finds ICP-fit people or companies on LinkedIn by keyword and degree (proactive prospecting); list_person_posts pulls a person's recent posts so you have something concrete to act on (closing the loop into comment_on_post / react_to_post); get_person_activity surfaces a person's recent comments and reactions — the sharpest intent signal, available nowhere else; list_post_engagers turns any post into a deduped, warmest-first lead list of who commented, reacted, or reposted it; discover_lead_magnets pulls fresh, prospect-rich posts from the LeadShark radar to engage; list_signals returns your heat-scored hot leads; enrich and enrich_company turn a person or company into a structured profile so your agent can rank fit and intent itself. Feed them into the act tools (comment_on_post, send_connection_request, create_automation). All require Apex.
Image Attachments
Attach images to your scheduled posts by providing a publicly accessible URL. LeadShark downloads and stores the image securely.
Supported Formats
Limits
5 MB1http/httpsExample Image URLs
https://storage.googleapis.com/.../infographic.pnghttps://cdn.example.com/assets/lead-magnet.jpghttps://example.com/images/carousel.pngPro Tips
- • Use publicly accessible URLs (no auth required)
- • For Google Drive: use direct download links
- • LinkedIn carousels perform best at 1080×1350px
- • Image is downloaded once and stored securely
Example Workflow
A typical conversation from discovery to optimized automation:
“Show me my recent posts”
Here are your last 5 posts. The Claude guide post has 142 comments and no automation yet.
→ list_recent_posts
“Automate that one - DM anyone who says interested, and auto-connect with them”
Created 'Claude Guide Giveaway' as Draft. Keywords: interested. Auto-connect enabled. Ready to review.
→ create_automation
“Looks good, activate it and enable auto-like too”
Automation is now Running with auto-like enabled. I'll like comments and DM people who say 'interested'.
→ edit_automation
“Add 'send' and 'want' as keywords, and turn on partially engage”
Updated. Keywords: interested, send, want. Partially engage enabled — won't reply to comments you've already responded to.
→ edit_automation
“Enable link tracking so I can see who clicks”
Link tracking enabled. Your DM links will use leads.sh for click tracking.
→ edit_automation
“Add a follow-up DM after 2 hours if they don't reply”
Follow-up enabled. Will send after 2 hours only if no response received.
→ edit_automation
“How's it doing?”
284 comments, 156 replied, 142 DMs sent, 89 follow-ups sent, 67 new connections. Top keyword: 'interested' (67%).
→ list_automations
“Schedule a new post for Monday 9am EST with this infographic: https://cdn.example.com/guide.png”
Scheduled for Monday 9am EST with image attached. Post + automation ready. Automation will activate automatically when post publishes.
→ schedule_post_with_automation
“Pause everything, I'm going on vacation”
Daily DM limit set to 0. All sending paused across 3 automations. Automations will still capture comments. Set limit back when you return.
→ set_daily_dm_limit
Setup
Requirements
- • Node.js 18+
- • LeadShark Pro+ or Apex subscription
- • API key from Dashboard Settings
Install
npm install @leadshark/mcp-serverCursor Configuration
Create .cursor/mcp.json:
{
"mcpServers": {
"leadshark": {
"command": "npx",
"args": ["-y", "@leadshark/mcp-server"],
"env": {
"LEADSHARK_API_KEY": "${LEADSHARK_API_KEY}"
}
}
}
}Restart Cursor after adding.
Claude Desktop
claude mcp add leadshark \
--transport stdio \
--env LEADSHARK_API_KEY=your_key \
-- npx -y @leadshark/mcp-serverOpenClaw Integration
AvailableAre you a lobster? 🦞 Control LeadShark automations via WhatsApp, Telegram, or Discord using OpenClaw.
One-Line Install:
curl -sL https://apex.leadshark.io/skill/openclaw | shThis installs the LeadShark skill into OpenClaw. You'll need an API key from Settings.
Not on clawd yet? OpenClaw turns your favorite messaging app into an AI workspace. Install it, add this skill, and control your LinkedIn automation from anywhere. No more context switching. Just vibes and DMs.
Safety Model
| Action | Default Behavior |
|---|---|
| Create automation | Draft status, requires activation |
| Edit automation | Partial updates only, no destructive changes |
| Delete automation | Not supported — pause instead |
| Schedule post | Automation activates only when post publishes |
| Edit scheduled post | Only pending posts can be edited |
| Cancel scheduled post | Requires confirm: true, preserves automation templates |
| Set DM limit to 0 | Requires confirm: true |
Permission Scoped
All actions use your existing LeadShark permissions
Thin Layer
No background jobs, no side effects, just control
Auditable
Every action maps to a dashboard equivalent
Settings Reference
All available settings you can configure via the MCP:
Engagement Settings
auto_connect— Auto-accept incoming connections & send connection requests to commentersauto_like— Automatically like all comments on your postauto_enrich— Automatically enrich lead profiles with full LinkedIn data after DM is sent (Apex only)partially_engage— Only engage with comments that don't already have a manual reply from youlink_tracking— Track link clicks using leads.sh short linksicp_preset_id— UUID of an ICP preset to gate follow-up DMs. Only leads matching the preset criteria will receive follow-ups (Apex only, top-level field)Follow-up DM Settings
follow_up_enabled— Enable automated follow-up DMsfollow_up_template— The follow-up message (supports {{firstName}}, {{lastName}}, etc.)follow_up_delay_minutes— Delay before sending (1 min to 7 days)follow_up_only_if_no_response— Only send follow-up if lead hasn't repliedTemplate Variables
Comment Replies (with @mention support):
{{fullNameMention}}★{{firstNameMention}}{{firstName}}{{fullName}}★ Recommended — @mentions notify the commenter
DMs & Follow-ups (no @mention):
{{firstName}}{{lastName}}{{fullName}}{{linkedinUsername}}@mentions don't work in DMs — use plain variables
Connect to Claude.ai
The fastest way to use LeadShark with Claude. No install, no API key — Claude.ai registers itself with the LeadShark MCP server automatically over OAuth.
MCP Server URL
https://apex.leadshark.io/mcpThis is the only thing you need. Paste it into Claude.ai and authorize.
- 1
Open Settings → Connectors
In Claude.ai, click your profile menu, choose Settings, then the Connectors tab. Scroll to the bottom and click Add custom connector.
- 2
Paste the MCP URL
In the dialog that opens, paste
https://apex.leadshark.io/mcpas the MCP server URL. Leave the optional fields blank — Claude registers itself automatically. - 3
Sign in & authorize on the LeadShark page
Claude opens a popup to apex.leadshark.io. Sign in with your LeadShark account, review the requested scopes (
mcp:readandmcp:write), and click Approve. - 4
You're connected
Claude lands back on the Connectors page with LeadShark · Configure visible in the list. Try a prompt like “Show me my last 3 LinkedIn posts” to confirm it works.
Pro+ required. The MCP server returns 403 on every tool call if your account isn't Pro+ or Apex. Upgrade in Settings.
Authorization uses standard OAuth 2.1 with PKCE and dynamic client registration (RFC 7591). LeadShark never sees your Claude conversations — Claude only stores a scoped access token and calls the MCP endpoint directly.
Stuck? OAuth metadata is publicly browseable for sanity checks at /.well-known/oauth-authorization-server, or email info@leadshark.io.
Who This Is For
Power Users
Multiple automations
Agencies
Client automation at scale
Developers
AI-native workflows
Founders
Intent → Automation, fast
Questions?
Reach out for MCP support or feature requests.
