Facebook Messenger MCP Bridge
Enables AI clients to read and send Facebook Messenger messages by using a Chrome extension to bypass anti-bot protections, providing tools like fb_list_conversations, fb_read_messages, and fb_send_message.
README
Facebook Messenger MCP Bridge (Python)
A complete, battle-tested AI client bridge that reads and replies to Facebook Messenger using the Model Context Protocol (MCP) and a Chrome Extension.
This system bypasses Facebook's robust anti-bot protections (like the Lexical editor) to allow seamless AI interactions on your personal Messenger account.
Architecture Overview
┌─────────────────┐ MQTT (TCP/WS) ┌──────────────────┐ stdio ┌─────────────┐
│ Chrome Ext │ ◄──────────────────► │ Python MCP │ ◄─────────────► │ AI Client │
│ (Manifest V3) │ Broker (HiveMQ) │ Server │ │ (Claude, │
│ │ │ │ │ Cursor, │
│ - content.js │ │ - fb_read │ │ v.v) │
│ - background │ │ - fb_send │ │ │
└─────────────────┘ └──────────────────┘ └─────────────┘
Features & Breakthroughs
- Robust Message Reading: Bypasses obfuscated DOM classes by parsing Facebook's hidden accessibility labels (aria-labels). This correctly identifies the sender, timestamp, and message text regardless of UI updates.
- Lexical Editor Bypass: Facebook Messenger uses the Lexical framework which ignores standard DOM value injections (
input.value). This extension bypasses it by:- Simulating a native
ClipboardEvent(Paste) to inject text into the editor. - Using Javascript to find and trigger a physical
MouseEventon the Send button.
- Simulating a native
- Stable Connection: Uses a persistent MQTT connection via WebSockets from a Chrome Extension Service Worker, relayed to a Python MCP server.
Installation & Setup
1. Install Python Dependencies
uv sync
2. Configure Environment
Create a .env file in the root directory with your MQTT broker details (e.g. HiveMQ):
HIVE_MQTT_HOST=your-cluster.s2.eu.hivemq.cloud
HIVE_MQTT_PORT=8883
HIVE_MQTT_USERNAME=mcp-user
HIVE_MQTT_PASSWORD=your-password
HIVE_MQTT_CLIENT_ID=mcp-server-001
3. Load Chrome Extension
- Open Chrome and navigate to
chrome://extensions/ - Enable Developer mode (top right toggle)
- Click Load unpacked
- Select the
chrome-extensionfolder in this project. - Make sure you are logged into
https://www.messenger.com.
4. Start the MCP Server
You can run the standalone server script to initialize both the WS-MQTT bridge and the MCP server:
uv run python start.py
5. Using with an AI Client (Cursor / Claude Desktop)
Add the following to your MCP client configuration:
{
"mcpServers": {
"facebook-messenger": {
"command": "uv",
"args": ["run", "python", "-m", "mcp_server.server"],
"env": {}
}
}
}
Available MCP Tools
| Tool | Description |
|---|---|
fb_list_conversations |
List recent Messenger conversations to get thread_ids. |
fb_read_messages |
Read message history from a specific thread_id. |
fb_send_message |
Send a text message to a thread_id (uses Paste + Click simulation). |
fb_search_contacts |
Search your Messenger contacts by name. |
fb_get_thread_info |
Get metadata about a conversation. |
Security & Disclaimer
⚠️ Important: This tool uses DOM scraping and simulated user input.
- It operates using your actual logged-in session.
- Facebook may change their UI or anti-bot measures at any time.
- Use responsibly to avoid rate limits or account blocks.
- This project is not affiliated with or endorsed by Meta/Facebook.
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
mcp-server-qdrant
这个仓库展示了如何为向量搜索引擎 Qdrant 创建一个 MCP (Managed Control Plane) 服务器的示例。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器