Facebook MCP Server
This project is a MCP server for automating and managing interactions on a Facebook Page using the Facebook Graph API. It exposes tools to create posts, moderate comments, fetch post insights, and filter negative feedback β ready to plug into Claude, or other LLM-based agents.
 <a href="https://glama.ai/mcp/servers/@HagaiHen/facebook-mcp-server"> <img width="380" height="200" src="https://glama.ai/mcp/servers/@HagaiHen/facebook-mcp-server/badge" /> </a>
---
π€ What Is This?
This MCP provides a suite of AI-callable tools that connect directly to a Facebook Page, abstracting common API operations as LLM-friendly functions.
β Benefits
- Empowers social media managers to automate moderation and analytics.
- Seamlessly integrates with Claude Desktop or any Agent client.
- Enables fine-grained control over Facebook content from natural language.
---
π¦ Features
| Tool | Description | |----------------------------------|---------------------------------------------------------------------| | post_to_facebook | Create a new Facebook post with a message. | | reply_to_comment | Reply to a specific comment on a post. | | get_page_posts | Retrieve recent posts from the Page. | | get_post_comments | Fetch comments on a given post. | | delete_post | Delete a specific post by ID. | | delete_comment | Delete a specific comment by ID. | | hide_comment | Hide a comment from public view. | | unhide_comment | Unhide a previously hidden comment. | | delete_comment_from_post | Alias for deleting a comment from a specific post. | | filter_negative_comments | Filter out comments with negative sentiment keywords. | | get_number_of_comments | Count the number of comments on a post. | | get_number_of_likes | Count the number of likes on a post. | | get_post_impressions | Get total impressions on a post. | | get_post_impressions_unique | Get number of unique users who saw the post. | | get_post_impressions_paid | Get number of paid impressions on the post. | | get_post_impressions_organic | Get number of organic impressions on the post. | | get_post_engaged_users | Get number of users who engaged with the post. | | get_post_clicks | Get number of clicks on the post. | | get_post_reactions_like_total | Get total number of 'Like' reactions. | | get_post_top_commenters | Get the top commenters on a post. | | post_image_to_facebook | Post an image with a caption to the Facebook page. | | send_dm_to_user | Send a direct message to a user. | | update_post | Updates an existing post's message. | | schedule_post | Schedule a post for future publication. | | get_page_fan_count | Retrieve the total number of Page fans. | | get_post_share_count | Get the number of shares on a post. | | get_post_reactions_breakdown | Get all reaction counts for a post in one call. | | bulk_delete_comments | Delete multiple comments by ID. | | bulk_hide_comments | Hide multiple comments by ID. | | bulk_unhide_comments | Unhide multiple comments by ID. | | get_comment_replies | Get all replies to a specific comment. | | get_post_permalink | Get the permalink URL of a post. | | get_scheduled_posts | List all scheduled (unpublished) posts on the Page. | | get_page_info | Get extended Page details (name, about, category, website). |
---
π Setup & Installation
1. Clone the Repository
git clone https://github.com/your-org/facebook-mcp-server.git
cd facebook-mcp-server
2. π οΈ Installation
Install dependencies using uv, a fast Python package manager: If uv is not already installed, run: ``bash curl -Ls https://astral.sh/uv/install.sh | bash ``
Once uv is installed, install the project dependencies: ``bash uv pip install -r requirements.txt ``
3. Set Up Environment
Create a .env file in the root directory and add your Facebook Page credentials. You can obtain these from https://developers.facebook.com/tools/explorer
FACEBOOK_ACCESS_TOKEN=your_facebook_page_access_token
FACEBOOK_PAGE_ID=your_page_id
π§© Using with Claude Desktop
To set up the FacebookMCP in Clade:
- Open Clade.
- Go to Settings β Developer β Edit Config.
- In the config file that opens, add the following entry:
"FacebookMCP": {
"command": "uv",
"args": [
"run",
"--with",
"mcp[cli]",
"--with",
"requests",
"mcp",
"run",
"/path/to/facebook-mcp-server/server.py"
]
}
---
β Youβre Ready to Go!
Thatβs it β your Facebook MCP server is now fully configured and ready to power Claude Desktop. You can now post, moderate, and measure engagement all through natural language prompts!
---
π€ Contributing
Contributions, issues, and feature requests are welcome! Feel free to fork the repo and submit a pull request.
- Create a branch:
git checkout -b feature/YourFeature - Commit your changes:
git commit -m 'feat: add new feature' - Push to the branch:
git push origin feature/YourFeature - Open a pull request π






