mcp-server-unipile
Provides 95 tools to connect AI assistants to LinkedIn, Email, Calendar, WhatsApp, Instagram, and Telegram through the Unipile API, enabling cross-platform messaging, search, and account management.
README
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
<details> <summary>Account Management (10)</summary>
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
</details>
<details> <summary>Messaging (14)</summary>
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
</details>
<details> <summary>Attendees (6)</summary>
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
</details>
<details> <summary>Email (11)</summary>
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
</details>
<details> <summary>Calendar (7)</summary>
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
</details>
<details> <summary>LinkedIn Search (6)</summary>
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.)
</details>
<details> <summary>LinkedIn Profiles & Users (7)</summary>
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
</details>
<details> <summary>LinkedIn Connections (7)</summary>
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
</details>
<details> <summary>LinkedIn InMail (2)</summary>
send_inmail- Send InMail messageget_inmail_credits- Check remaining credits
</details>
<details> <summary>LinkedIn Posts (6)</summary>
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
</details>
<details> <summary>LinkedIn Jobs & Recruiter (13)</summary>
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
</details>
<details> <summary>Webhooks (3)</summary>
list_webhooks- List configured webhookscreate_webhook- Create webhookdelete_webhook- Delete webhook
</details>
<details> <summary>Advanced (3)</summary>
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
</details>
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
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。