Labsco
MCP SERVER

MCP Server Unipile

by Sundeepg98

LinkedIn, email, calendar, WhatsApp, Instagram and Telegram behind one API — 95 tools covering messaging, recruiting, inbox and scheduling through Unipile.

CRM & Sales Pipeline
Summary
The whole outreach stack, one credential.

The value is not any single tool — it is that finding someone, messaging them on LinkedIn, following up by email and putting the call in the calendar all happen through one connection instead of four integrations. The escape hatch is worth knowing about: a raw LinkedIn request tool means an endpoint the wrapper does not cover is still reachable. Setting the default account ids removes an argument from most calls, which is the difference between a workable session and constant id-passing.

What it is

An MCP server over the Unipile API, which is itself a unified layer across LinkedIn, Gmail, Outlook, WhatsApp, Instagram and Telegram. Each tool maps to one Unipile endpoint, so a single connection covers the whole set of accounts you have linked in your Unipile dashboard.

What you get
  • Cross-platform messaging: list and read conversations, send, forward and delete messages, react, mark read or archive, and search across chats — `list_chats`, `get_chat_messages`, `send_message`, `forward_message`, `list_all_messages`, `add_message_reaction`
  • Email over Gmail and Outlook alike: list with filters, read, send with open and click tracking, draft, move and label, and walk folders — `list_emails`, `get_email`, `send_email`, `draft_email`, `update_email`, `list_email_folders`, `list_email_labels`
  • Calendar across Google and Microsoft: calendars, events, creation and edits — `list_calendars`, `list_events`, `create_event`, `edit_event`, `delete_event`
  • LinkedIn search over people, companies, posts and jobs, including Sales Navigator, with a call that returns the valid filter IDs for locations and industries — `search_people`, `search_companies`, `search_posts`, `search_jobs`, `search_people_sales_nav`, `get_search_params`
  • LinkedIn relationship management: send, accept, decline and cancel invitations, list sent and received, list connections, and send InMail against a credit balance you can check — `send_invitation`, `list_invitations_received`, `list_relations`, `send_inmail`, `get_inmail_credits`
  • Posting and engagement: create posts, comment, react, and read a post's comments and reactions — `create_post`, `comment_on_post`, `react_to_post`, `list_post_comments`, `list_post_reactions`
  • The recruiter side: create, edit, publish and close job postings, list applicants, open one, download a resume, and read Recruiter hiring projects — `create_job`, `publish_job`, `close_job`, `get_job_applicants`, `get_applicant_resume`, `get_hiring_projects`
  • Account plumbing: connect, reconnect, resync and restart accounts, and solve 2FA checkpoints — `list_accounts`, `connect_account`, `reconnect_account`, `solve_checkpoint`, `resend_checkpoint`
  • Webhooks for real-time events, profile-visitor data, skill endorsements, and a raw LinkedIn request escape hatch — `create_webhook`, `get_profile_visitors`, `endorse_skill`, `raw_linkedin_request`
Requirements

A Unipile account with API access and at least one platform account connected in the dashboard. Two required environment variables: `UNIPILE_BASE_URL` (your instance URL) and `UNIPILE_API_KEY`. Two optional ones save passing an account id on every call: `UNIPILE_LINKEDIN_ACCOUNT_ID` and `UNIPILE_EMAIL_ACCOUNT_ID`. Python 3.10 or higher; run it with `uvx mcp-server-unipile`. The package is `mcp-server-unipile` (0.1.5 in pyproject).

Setup effort

One command plus a key — uvx mcp-server-unipile, then supply credentials