lanternrow avatar

Facebook Pages Mcp

lanternrow/facebook-pages-mcp

Connects to Facebook Pages via Meta Graph API v25.0 for organic analytics and content management. Exposes page info, post publishing, comment threads, video metrics, and insights with date range filtering. Built specifically to avoid the June 2026 metric deprecations, so it uses page_views_total instead of the legacy page_impressions family. Handles both personal and Business Manager page tokens, includes long-lived token exchange helpers, and supports cursor-based pagination across all list endpoints. Reach for this when you need Claude to pull engagement data, analyze post performance, or publish directly to pages you manage.

tools
28
auth
Secret needed
transport
STDIO
env vars
2
last updated
Jun 29, 2026

Tools

28 tools

Public tool metadata for what this MCP can expose to an agent.

fb_list_pagesList all Facebook Pages the user manages. Returns page ID, name, category, and access token for each page. Use this to find the page_id for other tools.1 params

List all Facebook Pages the user manages. Returns page ID, name, category, and access token for each page. Use this to find the page_id for other tools.

Parameters* required
_infostring
No parameters required. Uses the configured Page Access Token to list all managed pages.
fb_get_pageGet detailed information about a Facebook Page: name, category, followers, fan count, about, description, website, and more.2 params

Get detailed information about a Facebook Page: name, category, followers, fan count, about, description, website, and more.

Parameters* required
fieldsstring
Comma-separated fields to return (e.g. "name,category,fan_count,followers_count,about,website"). Default: all basic fields.
page_idstring
Facebook Page ID (numeric). Use fb_list_pages to find this.
fb_get_page_tokenGet the Page Access Token for a specific page. Useful when managing multiple pages — each page has its own token.1 params

Get the Page Access Token for a specific page. Useful when managing multiple pages — each page has its own token.

Parameters* required
page_idstring
Facebook Page ID to get the access token for
fb_list_postsList posts from a Facebook Page feed. Returns post ID, message, creation time, picture, and permalink. Supports pagination via limit parameter.3 params

List posts from a Facebook Page feed. Returns post ID, message, creation time, picture, and permalink. Supports pagination via limit parameter.

Parameters* required
fieldsstring
Comma-separated fields (e.g. "id,message,created_time,shares,likes.summary(true)")
limitnumber
Number of posts to return (default: 25, max: 100)
page_idstring
Facebook Page ID
fb_get_postGet details of a single Facebook post by ID. Returns message, creation time, picture, permalink, and engagement counts.2 params

Get details of a single Facebook post by ID. Returns message, creation time, picture, permalink, and engagement counts.

Parameters* required
fieldsstring
Comma-separated fields to return (e.g. "id,message,created_time,shares,likes.summary(true),comments.summary(true)")
post_idstring
Facebook Post ID (format: pageId_postId)
fb_create_postCreate a new post on a Facebook Page. Can include text message and/or link. Set published=false to create an unpublished (draft) post.4 params

Create a new post on a Facebook Page. Can include text message and/or link. Set published=false to create an unpublished (draft) post.

Parameters* required
linkstring
URL to attach to the post (creates link preview)
messagestring
Text content of the post
page_idstring
Facebook Page ID to post to
publishedboolean
Set to false to create an unpublished/draft post (default: true)
fb_update_postUpdate the text message of an existing Facebook post. Only the message field can be edited after creation.2 params

Update the text message of an existing Facebook post. Only the message field can be edited after creation.

Parameters* required
messagestring
New text content for the post
post_idstring
Facebook Post ID to update (format: pageId_postId)
fb_delete_postPermanently delete a Facebook post. This action cannot be undone.1 params

Permanently delete a Facebook post. This action cannot be undone.

Parameters* required
post_idstring
Facebook Post ID to delete (format: pageId_postId)
fb_schedule_postSchedule a post to be published at a future time. The scheduled_time must be between 10 minutes and 75 days from now (Unix timestamp in seconds).4 params

Schedule a post to be published at a future time. The scheduled_time must be between 10 minutes and 75 days from now (Unix timestamp in seconds).

Parameters* required
linkstring
Optional URL to attach to the post
messagestring
Text content of the scheduled post
page_idstring
Facebook Page ID
scheduled_timenumber
Unix timestamp (seconds) for when to publish. Must be 10min-75days from now.
fb_list_commentsList comments on a Facebook post or object. Returns comment ID, message, author, time, like count, and hidden status.2 params

List comments on a Facebook post or object. Returns comment ID, message, author, time, like count, and hidden status.

Parameters* required
limitnumber
Number of comments to return (default: 25)
object_idstring
Post ID or object ID to get comments from
fb_create_commentAdd a comment to a Facebook post. The page will be shown as the comment author.2 params

Add a comment to a Facebook post. The page will be shown as the comment author.

Parameters* required
messagestring
Comment text
object_idstring
Post ID to comment on
fb_reply_commentReply to an existing comment. Creates a threaded reply under the specified comment.2 params

Reply to an existing comment. Creates a threaded reply under the specified comment.

Parameters* required
comment_idstring
Comment ID to reply to
messagestring
Reply text
fb_delete_commentPermanently delete a comment. This action cannot be undone.1 params

Permanently delete a comment. This action cannot be undone.

Parameters* required
comment_idstring
Comment ID to delete
fb_hide_commentHide or unhide a comment. Hidden comments are only visible to the author and page admins. Useful for moderation.2 params

Hide or unhide a comment. Hidden comments are only visible to the author and page admins. Useful for moderation.

Parameters* required
comment_idstring
Comment ID to hide/unhide
is_hiddenboolean
true to hide, false to unhide
fb_upload_photoUpload a photo to a Facebook Page from a URL. Can include a caption. Set published=false for an unpublished photo (use in multi-photo posts).4 params

Upload a photo to a Facebook Page from a URL. Can include a caption. Set published=false for an unpublished photo (use in multi-photo posts).

Parameters* required
captionstring
Caption text for the photo
page_idstring
Facebook Page ID
publishedboolean
Set to false for unpublished photo (default: true)
urlstring
Public URL of the photo to upload
fb_list_photosList photos uploaded to a Facebook Page. Returns photo ID, name, link, creation time, and image URLs at various sizes.2 params

List photos uploaded to a Facebook Page. Returns photo ID, name, link, creation time, and image URLs at various sizes.

Parameters* required
limitnumber
Number of photos to return (default: 25)
page_idstring
Facebook Page ID
fb_delete_photoPermanently delete a photo from a Facebook Page.1 params

Permanently delete a photo from a Facebook Page.

Parameters* required
photo_idstring
Photo ID to delete
fb_upload_videoUpload a video to a Facebook Page from a URL. Supports title and description. For large videos (>1GB), use chunked upload via Facebook UI.4 params

Upload a video to a Facebook Page from a URL. Supports title and description. For large videos (>1GB), use chunked upload via Facebook UI.

Parameters* required
descriptionstring
Video description
file_urlstring
Public URL of the video file to upload
page_idstring
Facebook Page ID
titlestring
Video title
fb_list_videosList videos uploaded to a Facebook Page. Returns video ID, title, description, creation time, duration, and source URL.2 params

List videos uploaded to a Facebook Page. Returns video ID, title, description, creation time, duration, and source URL.

Parameters* required
limitnumber
Number of videos to return (default: 25)
page_idstring
Facebook Page ID
fb_delete_videoPermanently delete a video from a Facebook Page.1 params

Permanently delete a video from a Facebook Page.

Parameters* required
video_idstring
Video ID to delete
fb_get_page_insightsGet analytics metrics for a Facebook Page. Common metrics: page_impressions, page_engaged_users, page_post_engagements, page_fan_adds. Period: day, week, days_28.5 params

Get analytics metrics for a Facebook Page. Common metrics: page_impressions, page_engaged_users, page_post_engagements, page_fan_adds. Period: day, week, days_28.

Parameters* required
metricstring
Comma-separated metrics (e.g. "page_impressions,page_engaged_users,page_post_engagements")
page_idstring
Facebook Page ID
periodstring
Aggregation period: "day", "week", or "days_28" (default: day)
sincestring
Start date in YYYY-MM-DD format or Unix timestamp
untilstring
End date in YYYY-MM-DD format or Unix timestamp (max 90 days range)
fb_get_post_insightsGet analytics for a specific post. Common metrics: post_impressions, post_engaged_users, post_clicks, post_reactions_by_type_total.2 params

Get analytics for a specific post. Common metrics: post_impressions, post_engaged_users, post_clicks, post_reactions_by_type_total.

Parameters* required
metricstring
Comma-separated metrics (e.g. "post_impressions,post_engaged_users,post_clicks")
post_idstring
Facebook Post ID (format: pageId_postId)
fb_get_page_fansGet total fan (follower) count for a Facebook Page over time. Returns daily values showing the total page likes.1 params

Get total fan (follower) count for a Facebook Page over time. Returns daily values showing the total page likes.

Parameters* required
page_idstring
Facebook Page ID
fb_get_page_viewsGet page view count over time. Returns total number of times the Page profile was viewed.2 params

Get page view count over time. Returns total number of times the Page profile was viewed.

Parameters* required
page_idstring
Facebook Page ID
periodstring
Aggregation period: "day", "week", or "days_28" (default: day)
fb_list_conversationsList Messenger conversations for a Facebook Page. Returns conversation ID, last update time, snippet, message count, and participants.2 params

List Messenger conversations for a Facebook Page. Returns conversation ID, last update time, snippet, message count, and participants.

Parameters* required
limitnumber
Number of conversations to return (default: 25)
page_idstring
Facebook Page ID
fb_get_messagesGet messages from a specific Messenger conversation. Returns message ID, text, sender, and time.2 params

Get messages from a specific Messenger conversation. Returns message ID, text, sender, and time.

Parameters* required
conversation_idstring
Conversation ID from fb_list_conversations
limitnumber
Number of messages to return (default: 25)
fb_send_messageSend a text message via Messenger to a user. Requires the recipient PSID (Page-Scoped ID). Note: 24-hour messaging window applies — can only respond within 24h of the user's last message.3 params

Send a text message via Messenger to a user. Requires the recipient PSID (Page-Scoped ID). Note: 24-hour messaging window applies — can only respond within 24h of the user's last message.

Parameters* required
page_idstring
Facebook Page ID
recipient_idstring
Recipient PSID (Page-Scoped User ID). Found in conversation participants.
textstring
Message text to send (max 2000 characters)
fb_send_typingShow or hide the typing indicator in Messenger. Use before sending a message for a more natural conversation feel.3 params

Show or hide the typing indicator in Messenger. Use before sending a message for a more natural conversation feel.

Parameters* required
actionstring
Typing action: "typing_on", "typing_off", or "mark_seen" (default: typing_on)
page_idstring
Facebook Page ID
recipient_idstring
Recipient PSID (Page-Scoped User ID)

Sponsors

Configuration

FB_PAGE_ACCESS_TOKEN*secret

Long-lived Facebook Page Access Token

FB_PAGE_ID*

Default Facebook Page ID (numeric)

Readme

facebook-pages-mcp

npm version License: MIT

MCP server for Facebook Pages organic analytics and management, powered by Meta Graph API v25.0.

Built for Claude Code and any MCP-compatible AI tool. Gives your AI assistant direct access to your Facebook Page data — posts, insights, comments, and more.

Part of The SEO Engine toolkit by Rex Jones — AI-powered SEO and social media tooling for agencies and businesses.

Why this exists


View the full README on GitHub

Details

Repository
github.com/lanternrow/facebook-pages-mcp
Category
Monitoring & Observability
Package
facebook-pages-mcp
Transport
STDIO
Auth
Required
Registry
MCP registry, active

More from lanternrow

Related Monitoring & Observability MCP servers

View all
1nicofains1 avatarAgentWatchnicofains1/agentwatchMulti-agent observability: cascade failure detection, heartbeats, and forensic replay0stars
2posthog avatarPostHog MCP Serverposthog/posthogOfficial PostHog MCP Server for product analytics, feature flags, experiments, and more.35Kstars
3agentdeskai avatarBrowserToolsagentdeskai/browser-tools-mcpMonitor browser logs directly from Cursor and other MCP compatible IDEs.7.2Kstars
4irinabuht12-oss avatarGoogle Ads + Meta Ads + SEO/GEO MCPirinabuht12-oss/google-ads-meta-ads-mcpGoogle Ads, Meta Ads, Google Analytics (GA4) & Search Console MCP server by Ryze AI7Kstars
5tufantunc avatarSSH — policy-gated remote accesstufantunc/ssh-mcpPolicy-gated, audited SSH for Linux and Windows hosts: roles, approvals, and an audit log.875stars
6samvallad33 avatarVestigesamvallad33/vestigeCausal Proof Engine for AI agents: signed log, zero vectors, failures traced to their cause.658stars