MCP server for Facebook Pages — create posts, manage comments, and get insights via Claude Code/Desktop. Uses the Facebook Graph API v25.0 directly with no Facebook SDK dependency.
- Node.js >= 18.0.0
- Facebook Page Access Token with the required permissions (see Setup)
Add to your project's .mcp.json:
{
"mcpServers": {
"facebook": {
"command": "npx",
"args": ["-y", "@m8lab/mcp-facebook"],
"env": {
"FACEBOOK_PAGE_ID": "your_page_id",
"FACEBOOK_PAGE_ACCESS_TOKEN": "your_page_access_token"
}
}
}
}Add to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):
{
"mcpServers": {
"facebook": {
"command": "npx",
"args": ["-y", "@m8lab/mcp-facebook"],
"env": {
"FACEBOOK_PAGE_ID": "your_page_id",
"FACEBOOK_PAGE_ACCESS_TOKEN": "your_page_access_token"
}
}
}
}| Tool | Description |
|---|---|
facebook_create_post |
Publish an immediate post (text, link, picture) |
facebook_schedule_post |
Schedule a post 10 min–6 months in the future |
facebook_delete_post |
Permanently delete a post by ID |
facebook_get_posts |
List recent Page feed posts (up to 100) |
facebook_get_comments |
List comments on a specific post (up to 100) |
facebook_reply_comment |
Reply to an existing comment |
facebook_hide_comment |
Hide or unhide a comment |
facebook_get_insights |
Retrieve Page-level analytics (views, fans, engagement) |
| Variable | Description |
|---|---|
FACEBOOK_PAGE_ID |
Numeric ID of your Facebook Page (e.g. 123456789012345) |
FACEBOOK_PAGE_ACCESS_TOKEN |
Long-lived Page Access Token with the required permissions |
- Go to Meta for Developers and create or open an App.
- Under Use Cases, add Pages and request the following permissions:
pages_manage_posts— create, schedule, delete postspages_read_engagement— read posts and commentspages_manage_engagement— reply to and hide commentspages_read_user_content— read commentsread_insights— access Page analytics
- In the Graph API Explorer:
- Select your App and your Page under User or Page.
- Click Generate Access Token and approve all required permissions.
- Use the token expander in Access Token Debugger to convert it to a long-lived token (~60 days) or generate a never-expiring System User token via Business Manager.
- Your Page ID is the number in your Page's About section or visible in the Graph API Explorer dropdown.
App Review Note: For a live app serving users other than yourself and your test users, Facebook requires App Review for
pages_manage_postsand related permissions. During development you can use the token for your own pages without review.
# Clone the repo
git clone https://github.com/lmtNoLimit/mcp-facebook.git
cd mcp-facebook
# Install dependencies
npm install
# Type check
npm run typecheck
# Build
npm run build
# Watch mode
npm run devCopy .env.example to .env and fill in your credentials to run locally:
cp .env.example .env
# Edit .env with your FACEBOOK_PAGE_ID and FACEBOOK_PAGE_ACCESS_TOKEN
node dist/index.jsMIT — see LICENSE