mcp-server-unipile
95-tool MCP server for the Unipile unified API — messaging (LinkedIn, WhatsApp, Instagram, Telegram), email (Gmail, Outlook), calendar, LinkedIn search (people, companies, posts, jobs), profile management, connections, InMail, and webhooks.
mcp-server-unipile
A comprehensive Model Context Protocol (MCP) server for the Unipile API — 95 tools covering the full API surface.
Connect your AI assistant to LinkedIn, Email, Calendar, WhatsApp, Instagram, and Telegram through a single unified interface.
Features
| Category | Tools | Capabilities |
|---|---|---|
| Account Management | 10 | List, get, connect, delete, reconnect, resync, restart accounts + 2FA checkpoints |
| Messaging | 14 | Cross-platform chat (LinkedIn, WhatsApp, Instagram, Telegram) with search, reactions, forwarding |
| Attendees | 6 | Contact management, profile pictures, chat history by person |
| 11 | Send, read, search, draft, track opens/clicks (Gmail + Outlook unified) | |
| Calendar | 7 | Events, scheduling, free/busy queries (Google + Microsoft unified) |
| LinkedIn Search | 6 | People, companies, posts, jobs (candidate-side), Sales Navigator |
| LinkedIn Profiles | 7 | View/edit profiles, followers, following, user activity |
| LinkedIn Connections | 7 | Invitations, relations, connection management |
| LinkedIn InMail | 2 | Send InMail, check credits |
| LinkedIn Posts | 6 | Create, comment, react, view engagement |
| LinkedIn Jobs | 13 | Job search, posting, applicant management, recruiter features |
| Webhooks | 3 | Real-time event notifications |
| Advanced | 3 | Profile visitors, raw API access, skill endorsements |
Installation
Using uvx (recommended)
uvx mcp-server-unipile
Using pip
pip install mcp-server-unipile
From source
git clone https://github.com/Sundeepg98/mcp-server-unipile.git
cd mcp-server-unipile
pip install -e .
Configuration
Environment Variables
| Variable | Required | Description |
|---|---|---|
UNIPILE_BASE_URL | Yes | Your Unipile API base URL (e.g., https://apiX.unipile.com:XXXXX/api/v1) |
UNIPILE_API_KEY | Yes | Your Unipile API key |
UNIPILE_LINKEDIN_ACCOUNT_ID | No | Default LinkedIn account ID (avoids passing it to every LinkedIn tool) |
UNIPILE_EMAIL_ACCOUNT_ID | No | Default email account ID (avoids passing it to every email/calendar tool) |
Get your API credentials from the Unipile Dashboard.
Claude Desktop
Add to your claude_desktop_config.json:
{
"mcpServers": {
"unipile": {
"command": "uvx",
"args": ["mcp-server-unipile"],
"env": {
"UNIPILE_BASE_URL": "https://apiX.unipile.com:XXXXX/api/v1",
"UNIPILE_API_KEY": "your_api_key",
"UNIPILE_LINKEDIN_ACCOUNT_ID": "your_linkedin_id",
"UNIPILE_EMAIL_ACCOUNT_ID": "your_email_id"
}
}
}
}
Claude Code
Add to your .claude.json (user or project scope):
{
"mcpServers": {
"unipile": {
"type": "stdio",
"command": "uvx",
"args": ["mcp-server-unipile"],
"env": {
"UNIPILE_BASE_URL": "https://apiX.unipile.com:XXXXX/api/v1",
"UNIPILE_API_KEY": "your_api_key",
"UNIPILE_LINKEDIN_ACCOUNT_ID": "your_linkedin_id",
"UNIPILE_EMAIL_ACCOUNT_ID": "your_email_id"
}
}
}
}
VS Code / Cursor
Add to your .vscode/mcp.json:
{
"servers": {
"unipile": {
"command": "uvx",
"args": ["mcp-server-unipile"],
"env": {
"UNIPILE_BASE_URL": "https://apiX.unipile.com:XXXXX/api/v1",
"UNIPILE_API_KEY": "your_api_key"
}
}
}
}
Prerequisites
- A Unipile account with API access
- At least one connected account (LinkedIn, Gmail, WhatsApp, etc.) in your Unipile dashboard
- Python 3.10+
Usage Examples
Search for jobs
Search for remote Python developer jobs posted this week
Your AI assistant will call search_jobs with keywords, remote_policy, and posted_at filters.
Send a LinkedIn message
Message John Smith on LinkedIn asking about the engineering role at his company
Uses search_people to find John, then send_message to reach out.
Manage email
Show me unread emails from today and draft a reply to the one from HR
Uses list_emails with filters, then draft_email for the response.
Track engagement
Who viewed my LinkedIn profile this week? Also show my latest followers.
Uses get_profile_visitors and list_followers.
All 95 Tools
Account Management (10)
list_accounts- List all connected accountsget_account- Get single account detailsconnect_account- Connect via native auth (username/password)reconnect_account- Reconnect via hosted auth (returns browser URL)delete_account- Remove an accountresync_account- Force full data resyncrestart_account- Restart sync processessolve_checkpoint- Solve 2FA/checkpoint challengeresend_checkpoint- Resend verification codeget_my_profile- Get your own profile
Messaging (14)
list_chats- List conversations (filterable by account/platform)get_chat- Get conversation detailsget_chat_messages- List messages in a chatget_message- Get single message detailssend_message- Send a message in a chatforward_message- Forward a messageget_message_attachment- Download attachmentstart_chat- Start new conversationupdate_chat- Mark read/unread, archivesync_chat- Sync conversation historylist_all_messages- Cross-chat message searchdelete_chat- Delete a conversationdelete_message- Delete a messagelist_chat_attendees- List participants in a chat
Attendees (6)
list_attendees- List all contacts/attendeesget_attendee- Get attendee detailsget_attendee_picture- Download profile picture (base64)list_chats_by_attendee- Find chats with specific personlist_messages_by_attendee- Messages from specific personadd_message_reaction- React to a message
Email (11)
list_emails- List emails with filtersget_email- Read a specific emailsend_email- Send email with optional open/click trackingdraft_email- Create email draftdelete_email- Delete emailget_email_attachment- Download email attachmentlist_email_contacts- List email contactsupdate_email- Modify email (read/star/move)list_email_folders- List folders (inbox, sent, drafts, etc.)get_email_folder- Get folder detailslist_email_labels- List Gmail labels
Calendar (7)
list_calendars- List all calendarsget_calendar- Get calendar detailslist_events- List calendar eventsget_event- Get event detailscreate_event- Create calendar eventedit_event- Modify eventdelete_event- Delete event
LinkedIn Search (6)
search_people- Search LinkedIn memberssearch_people_sales_nav- Sales Navigator advanced searchsearch_companies- Search companiessearch_posts- Search LinkedIn contentsearch_jobs- Search job postings (candidate-side, with Easy Apply flag)get_search_params- Get valid filter IDs (locations, industries, etc.)
LinkedIn Profiles & Users (7)
get_profile- Get a user's LinkedIn profileget_company_profile- Get company page detailsedit_own_profile- Edit your headline/summary/locationlist_followers- List your followerslist_following- List who you followlist_user_comments- User's comment historylist_user_reactions- User's reaction history
LinkedIn Connections (7)
send_invitation- Send connection requestaccept_invitation- Accept connection requestdecline_invitation- Decline requestcancel_invitation- Cancel sent requestlist_invitations_sent- View sent invitationslist_invitations_received- View received invitationslist_relations- List all connections
LinkedIn InMail (2)
send_inmail- Send InMail messageget_inmail_credits- Check remaining credits
LinkedIn Posts (6)
create_post- Create LinkedIn postget_post- Get post detailscomment_on_post- Comment on a postreact_to_post- React to a postlist_post_comments- List post commentslist_post_reactions- List post reactions
LinkedIn Jobs & Recruiter (13)
search_jobs- Search job postings as candidatelist_jobs- List your job postingsget_job- Get job posting detailscreate_job- Create job postingedit_job- Edit job postingpublish_job- Publish draft jobclose_job- Close job postingget_job_applicants- List applicantsget_job_applicant- Get applicant detailsget_applicant_resume- Download applicant resumeget_hiring_projects- List Recruiter hiring projectsget_hiring_project- Get project detailsperform_linkedin_action- Follow/unfollow/block userssolve_job_checkpoint- Solve job publishing checkpoint
Webhooks (3)
list_webhooks- List configured webhookscreate_webhook- Create webhookdelete_webhook- Delete webhook
Advanced (3)
get_profile_visitors- Who viewed your profileendorse_skill- Endorse a connection's skillraw_linkedin_request- Raw LinkedIn API requestlist_user_posts- List a user's posts
How It Works
This server wraps the Unipile REST API into MCP tools. Unipile acts as a unified layer over multiple platforms:
Your AI Assistant
|
v
MCP Server (this package)
|
v
Unipile API
|
v
LinkedIn | Gmail | WhatsApp | Instagram | Telegram | Outlook
Each tool maps to one Unipile API endpoint. Authentication is handled via API key. Account-specific operations use either the default account IDs from environment variables or accept explicit account_id parameters.
License
MIT
相关服务器
Instagram
Interact with Instagram Business accounts using the Instagram Graph API.
LnExchange MCP Node Service
A Node.js service for interacting with the LnExchange API for spot trading.
X (Twitter)
Integrate with the X (Twitter) API for workflow automation, enhanced error handling, and real-time documentation.
Email sending MCP
Sends emails using the Resend API. Requires a Resend API key.
A2A MCP Server
A bridge server connecting Model Context Protocol (MCP) with Agent-to-Agent (A2A) protocol.
Instagram DMs
Send Instagram DMs via your LLM
A2A Client MCP Server
An MCP server client for the Agent-to-Agent (A2A) protocol, enabling LLMs to interact with A2A agents.
Dixa MCP Server
A server for the Dixa API, enabling management of conversations and tags.
MCP IDE Bridge
An open-source messaging server for client-to-client communication using MCP HTTP Streamable messaging.
Tidio
Connect Tidio with your website via MCP. Embed the widget without exiting your programming environment.