facebook-mcp-server

facebook-mcp-server

8

The Facebook MCP Server is designed to facilitate automation and management of interactions on Facebook Pages using natural language prompts. It empowers social media managers with tools for creating content, moderating interactions, and analyzing insights while seamlessly integrating with AI solutions like Claude.

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.


πŸ€– 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

ToolDescription
post_to_facebookCreate a new Facebook post with a message.
reply_to_commentReply to a specific comment on a post.
get_page_postsRetrieve recent posts from the Page.
get_post_commentsFetch comments on a given post.
delete_postDelete a specific post by ID.
delete_commentDelete a specific comment by ID.
delete_comment_from_postAlias for deleting a comment from a specific post.
filter_negative_commentsFilter out comments with negative sentiment keywords.
get_number_of_commentsCount the number of comments on a post.
get_number_of_likesCount the number of likes on a post.
get_post_impressionsGet total impressions on a post.
get_post_impressions_uniqueGet number of unique users who saw the post.
get_post_impressions_paidGet number of paid impressions on the post.
get_post_impressions_organicGet number of organic impressions on the post.
get_post_engaged_usersGet number of users who engaged with the post.
get_post_clicksGet number of clicks on the post.
get_post_reactions_like_totalGet total number of 'Like' reactions.
get_post_top_commentersGet the top commenters on a post.
post_image_to_facebookPost an image with a caption to the Facebook page.
send_dm_to_userSend a direct message to a user.
update_postUpdates an existing post's message.

πŸš€ 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:

curl -Ls https://astral.sh/uv/install.sh | bash

Once uv is installed, install the project dependencies:

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:

  1. Open Clade.
  2. Go to Settings β†’ Developer β†’ Edit Config.
  3. 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 πŸŽ‰