facebook-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| MCP_HOST | No | HTTP transport only. Host to bind. | 127.0.0.1 |
| MCP_PATH | No | HTTP transport only. Path for the MCP endpoint. | /mcp |
| MCP_PORT | No | HTTP transport only. Port to bind. | 8000 |
| FB_PAGE_ID | No | Single-page mode. Page id, used together with FB_PAGE_ACCESS_TOKEN. | |
| FB_TIMEOUT | No | Graph request timeout, in seconds. | 30 |
| FB_APP_SECRET | No | Your app secret. Turns on appsecret_proof signing (recommended). | |
| MCP_LOG_LEVEL | No | Log level (logs go to stderr). | INFO |
| MCP_READ_ONLY | No | Hide every write tool. | false |
| MCP_TRANSPORT | No | Transport to use: stdio or http. | stdio |
| MCP_AUTH_TOKEN | No | HTTP only: require Authorization: Bearer <token>. | |
| FB_DEFAULT_PAGE | No | Page id or name to use when a tool call doesn't name one. | |
| FB_GRAPH_API_VERSION | No | Graph API version. | v26.0 |
| FB_PAGE_ACCESS_TOKEN | No | Single-page mode. Page access token, used together with FB_PAGE_ID. | |
| FB_USER_ACCESS_TOKEN | No | Multi-page mode. A long-lived user token; every Page you manage is discovered. Use instead of the single-page variables. |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| logging | {} |
| prompts | {
"listChanged": true
} |
| resources | {
"subscribe": false,
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_pagesA | List the Facebook Pages this server can manage (id and name). |
| get_page_infoB | Get a Page's profile: name, category, about, link and audience size. |
| list_postsA | List a Page's published posts, newest first, with engagement counts. |
| list_scheduled_postsB | List a Page's posts that are scheduled but not yet published. |
| get_postB | Get a single post with its message, permalink and engagement counts. |
| create_postA | Publish (or schedule) a text/link post on a Page. Needs a message, a link, or both. |
| create_photo_postA | Publish (or schedule) a photo post from a public URL or a local image file. |
| update_postB | Replace the text of an existing Page post. |
| delete_postB | Permanently delete a Page post. This cannot be undone. |
| create_reelA | Upload a local video and publish (or schedule) it as a Reel on a Page. Large videos can take several minutes; upload progress is reported to the client. |
| list_commentsA | List comments on a post, or replies to a comment. |
| add_commentA | Comment as the Page on a post, or reply to a comment by passing its id. Optionally attach a local image (photo comment). |
| set_comment_hiddenA | Hide (or unhide) a comment. Hidden comments stay visible only to their author. |
| delete_commentA | Permanently delete a comment. This cannot be undone. |
| get_page_insightsA | Get Page-level analytics (default: post engagements) for a period and date range. |
| get_post_insightsB | Get analytics for one post (default: reactions by type and clicks). |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 16 tools
Each tool targets a distinct resource and action across pages, posts, comments, and insights, so an agent can select the right one. The only mild overlap is among create_post, create_photo_post, and create_reel, but their media-type descriptions make the boundaries clear.
All tool names use snake_case with a verb-first pattern (list_, get_, create_, update_, delete_, add_, set_). Minor compound names like set_comment_hidden and create_photo_post still follow a predictable verb-entity structure.
With 16 tools, the set is slightly above the ideal 3-15 range, but each tool maps to a meaningful Page-management operation. The count is reasonable for covering posts, scheduling, comments, pages, and insights.
Core lifecycle operations are covered for posts, comments, pages, and insights, including scheduling and moderation. Minor gaps remain, such as editing comments or media-specific update/delete operations, but most workflows have workarounds.