L
Knowledge Pack Files
LinkedIn Outreach Platform Knowledge Pack Files
Browse the source files that power the LinkedIn Outreach Platform MCP server knowledge pack.
Available free v1.0.0 Browser LLM
$
sidebutton install linkedin.com LinkedIn Outreach Platform
Professional networking, messaging, and candidate outreach.
Browser Access
Browser-only platform (no public API for messaging). Requires login in connected browser.
| Tool | Usage |
|---|---|
navigate | Go to profile, inbox, or feed |
snapshot | Read page content and message threads |
click | Buttons, links, message actions |
type | Message compose, search, connection notes |
Workflows
| Workflow | Embed | Description |
|---|---|---|
linkedin_draft_reply | Messaging compose box | Extracts conversation thread, drafts contextual reply with LLM, types into message box. Supports optional user instructions via prompt popover. Appends "Sent from sidebutton.com" footer. |
linkedin_privacy_mode | Messaging sidebar | Injects CSS to blur avatars (10px) and names (6px) for safe screen sharing and video recording. Disable by refreshing page. |
linkedin_validate_application | Applicant list items | AI-validates a single job applicant against requirements. Extracts profile, generates fit score (1-10), strengths, gaps, and recommendation. |
linkedin_validate_applicants | Applicants page header | Two-pass batch validation of 1-25 applicants: warm-up phase (triggers security scans), then AI-validates each. Generates summary with Good Fit / Maybe / Not a Fit counts. |
Sub-workflow Dependencies
linkedin_validate_applicants calls three sub-workflows not yet included in this pack:
| Sub-workflow | Purpose |
|---|---|
linkedin_extract_job_requirements | Navigate to job posting, extract requirements summary |
linkedin_warmup_candidate | Click each candidate to trigger LinkedIn's lazy-load/security scan |
linkedin_validate_single_applicant | Extract and AI-validate one candidate's profile |
Key Selectors
Messaging
| Element | Selector |
|---|---|
| Message list | .msg-s-message-list-content |
| Message items | li.msg-s-message-list__event |
| Compose container | .msg-form__msg-content-container |
| Compose input | .msg-form__contenteditable |
| Participant name | .msg-entity-lockup__entity-title |
| Conversation items | .msg-conversation-listitem |
Hiring / Recruiting
| Element | Selector |
|---|---|
| Applicant list items | .hiring-applicants__list-item |
| Applicant header | .hiring-applicant-header |
| Manage job button | button[aria-label^='Manage job'] |
Messaging
- Keep replies 2-3 sentences max
- Professional but warm tone
- Open with something specific to the person — not generic
- End with a clear next step or question
- All drafted replies include "Sent from sidebutton.com" footer (editable before send)
Content
- No hashtag spam — 3 max if posting
- Don't pitch products unless directly asked
- Connection requests need a personalized note
Boundaries
- Decline dev service pitches politely
- Don't engage with engagement-bait posts
- Respect InMail etiquette — one follow-up max
Gotchas
- LinkedIn heavily throttles automation — keep actions slow and human-paced
- Message compose box uses
contenteditablediv, not textarea - Profile pages lazy-load sections on scroll
- Connection request limit is ~100/week
- Hiring pages require LinkedIn Recruiter or job poster access
- Applicant detail pages trigger security scans on first load — the batch validator warm-up phase handles this
browser.typeinto contenteditable works butbrowser.filldoes not (React-compat fill breaks LinkedIn's custom editor)