mcp-server-unipile

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.

Category
访问服务器

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
Email 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

  1. A Unipile account with API access
  2. At least one connected account (LinkedIn, Gmail, WhatsApp, etc.) in your Unipile dashboard
  3. 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 accounts
  • get_account - Get single account details
  • connect_account - Connect via native auth (username/password)
  • reconnect_account - Reconnect via hosted auth (returns browser URL)
  • delete_account - Remove an account
  • resync_account - Force full data resync
  • restart_account - Restart sync processes
  • solve_checkpoint - Solve 2FA/checkpoint challenge
  • resend_checkpoint - Resend verification code
  • get_my_profile - Get your own profile

</details>

<details> <summary>Messaging (14)</summary>

  • list_chats - List conversations (filterable by account/platform)
  • get_chat - Get conversation details
  • get_chat_messages - List messages in a chat
  • get_message - Get single message details
  • send_message - Send a message in a chat
  • forward_message - Forward a message
  • get_message_attachment - Download attachment
  • start_chat - Start new conversation
  • update_chat - Mark read/unread, archive
  • sync_chat - Sync conversation history
  • list_all_messages - Cross-chat message search
  • delete_chat - Delete a conversation
  • delete_message - Delete a message
  • list_chat_attendees - List participants in a chat

</details>

<details> <summary>Attendees (6)</summary>

  • list_attendees - List all contacts/attendees
  • get_attendee - Get attendee details
  • get_attendee_picture - Download profile picture (base64)
  • list_chats_by_attendee - Find chats with specific person
  • list_messages_by_attendee - Messages from specific person
  • add_message_reaction - React to a message

</details>

<details> <summary>Email (11)</summary>

  • list_emails - List emails with filters
  • get_email - Read a specific email
  • send_email - Send email with optional open/click tracking
  • draft_email - Create email draft
  • delete_email - Delete email
  • get_email_attachment - Download email attachment
  • list_email_contacts - List email contacts
  • update_email - Modify email (read/star/move)
  • list_email_folders - List folders (inbox, sent, drafts, etc.)
  • get_email_folder - Get folder details
  • list_email_labels - List Gmail labels

</details>

<details> <summary>Calendar (7)</summary>

  • list_calendars - List all calendars
  • get_calendar - Get calendar details
  • list_events - List calendar events
  • get_event - Get event details
  • create_event - Create calendar event
  • edit_event - Modify event
  • delete_event - Delete event

</details>

<details> <summary>LinkedIn Search (6)</summary>

  • search_people - Search LinkedIn members
  • search_people_sales_nav - Sales Navigator advanced search
  • search_companies - Search companies
  • search_posts - Search LinkedIn content
  • search_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 profile
  • get_company_profile - Get company page details
  • edit_own_profile - Edit your headline/summary/location
  • list_followers - List your followers
  • list_following - List who you follow
  • list_user_comments - User's comment history
  • list_user_reactions - User's reaction history

</details>

<details> <summary>LinkedIn Connections (7)</summary>

  • send_invitation - Send connection request
  • accept_invitation - Accept connection request
  • decline_invitation - Decline request
  • cancel_invitation - Cancel sent request
  • list_invitations_sent - View sent invitations
  • list_invitations_received - View received invitations
  • list_relations - List all connections

</details>

<details> <summary>LinkedIn InMail (2)</summary>

  • send_inmail - Send InMail message
  • get_inmail_credits - Check remaining credits

</details>

<details> <summary>LinkedIn Posts (6)</summary>

  • create_post - Create LinkedIn post
  • get_post - Get post details
  • comment_on_post - Comment on a post
  • react_to_post - React to a post
  • list_post_comments - List post comments
  • list_post_reactions - List post reactions

</details>

<details> <summary>LinkedIn Jobs & Recruiter (13)</summary>

  • search_jobs - Search job postings as candidate
  • list_jobs - List your job postings
  • get_job - Get job posting details
  • create_job - Create job posting
  • edit_job - Edit job posting
  • publish_job - Publish draft job
  • close_job - Close job posting
  • get_job_applicants - List applicants
  • get_job_applicant - Get applicant details
  • get_applicant_resume - Download applicant resume
  • get_hiring_projects - List Recruiter hiring projects
  • get_hiring_project - Get project details
  • perform_linkedin_action - Follow/unfollow/block users
  • solve_job_checkpoint - Solve job publishing checkpoint

</details>

<details> <summary>Webhooks (3)</summary>

  • list_webhooks - List configured webhooks
  • create_webhook - Create webhook
  • delete_webhook - Delete webhook

</details>

<details> <summary>Advanced (3)</summary>

  • get_profile_visitors - Who viewed your profile
  • endorse_skill - Endorse a connection's skill
  • raw_linkedin_request - Raw LinkedIn API request
  • list_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

Baidu Map

百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
Kagi MCP Server

Kagi MCP Server

一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

官方
精选
Python
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选
Neon MCP Server

Neon MCP Server

用于与 Neon 管理 API 和数据库交互的 MCP 服务器

官方
精选
Exa MCP Server

Exa MCP Server

模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

官方
精选