# Facebook — MCP server on mcp.ai > Facebook is a social media and advertising platform used by individuals and businesses to connect, share content, and promote products or services. Only supports Facebook Pages, not Facebook Personal accounts. By: mcp.ai · official Page: https://mcp.ai/facebook ## Connect (MCP protocol) Remote MCP endpoint (HTTP, streamable): https://api.mcp.ai/p_facebook?ms=1781542320000 Add it as a custom/remote MCP connector, then authenticate when prompted. ## REST API (no MCP client required) Every tool is also a REST endpoint, authed with a workspace API key. Discover: GET https://api.mcp.ai/api/facebook/_endpoints # public; lists every endpoint Call: POST https://api.mcp.ai/api/facebook/ Authorization: Bearer sk_live_… # create one at https://mcp.ai/settings/api-keys Content-Type: application/json Body: { …args } → { "ok": true, "tool": "", "result": { … } } ## Developer docs How to use (MCP or REST), markdown: https://mcp.ai/facebook/skill.md Postman collection (v2.1): https://mcp.ai/facebook/postman.json ## Tools - facebook_add_photos_to_album(photos?: object[], album_id: string, published?: boolean, photo_urls?: string[]) — Adds photos to an existing facebook album. note: currently adds one photo at a time. for true batch upload, use facebook's batch api endpoint directly. - facebook_add_reaction(type?: string, object_id: string) — Adds a specific reaction (like, love, wow, etc.) to a facebook post or comment. - facebook_assign_page_task(user: string, tasks: string[], page_id: string) — Assigns tasks/roles to a user for a specific facebook page. - facebook_create_comment(message: string, object_id: string, attachment_id?: string, attachment_url?: string, attachment_share_url?: string) — Creates a comment on a facebook post or replies to an existing comment. - facebook_create_photo_album(name: string, message?: string, page_id: string, privacy?: object, location?: string) — Creates a new photo album on a facebook page. - facebook_create_photo_post(url?: string, photo?: object, message?: string, page_id: string, published?: boolean, backdated_time?: integer, scheduled_publish_time?: integer, backdated_time_granularity?: string) — Creates a photo post on a facebook page. - facebook_create_post(link?: string, message: string, page_id: string, published?: boolean, targeting?: object, scheduled_publish_time?: integer) — Creates a new post on a facebook page. - facebook_create_video_post(title?: string, video?: object, page_id: string, file_url?: string, published?: boolean, targeting?: object, description?: string, scheduled_publish_time?: integer) — Creates a video post on a facebook page. - facebook_delete_comment(comment_id: string) — Deletes a facebook comment. - facebook_delete_post(post_id: string) — Deletes a facebook page post. - facebook_get_comment(fields?: string, comment_id: string) — Retrieves details of a specific facebook comment. - facebook_get_comments(limit?: integer, order?: string, fields?: string, filter?: string, object_id: string) — Retrieves comments from a facebook post or comment (for replies). - facebook_get_conversation_messages(limit?: integer, fields?: string, conversation_id: string) — Retrieves messages from a specific conversation. - facebook_get_message_details(fields?: string, message_id: string) — Retrieves details of a specific message sent or received by the page. - facebook_get_page_conversations(limit?: integer, fields?: string, page_id: string) — Retrieves a list of conversations between users and the page. - facebook_get_page_details(fields?: string, page_id: string) — Fetches details about a specific facebook page. - facebook_get_page_insights(since?: string, until?: string, period?: string, metrics?: string, page_id: string) — Retrieves analytics and insights for a facebook page. - facebook_get_page_photos(type?: string, limit?: integer, fields?: string, page_id: string) — Retrieves photos from a facebook page. - facebook_get_page_posts(limit?: integer, since?: string, until?: string, fields?: string, page_id: string) — Retrieves posts from a facebook page. - facebook_get_page_roles(page_id: string) — Retrieves a list of people and their tasks/roles on a facebook page. - facebook_get_page_videos(type?: string, limit?: integer, fields?: string, page_id: string) — Retrieves videos from a facebook page. - facebook_get_post(fields?: string, post_id: string) — Retrieves details of a specific facebook post. - facebook_get_post_insights(period?: string, metrics?: string, post_id: string) — Retrieves analytics and insights for a specific facebook post. - facebook_get_post_reactions(type?: string, limit?: integer, post_id: string, summary?: boolean) — Retrieves reactions (like, love, wow, etc.) for a facebook post. - facebook_get_scheduled_posts(limit?: integer, fields?: string, page_id: string) — Retrieves scheduled and unpublished posts for a facebook page. - facebook_get_user_pages(fields?: string, user_id?: string) — Retrieves a list of pages the user manages, including tasks and access tokens. - facebook_like_post_or_comment(object_id: string) — Likes a facebook post or comment. - facebook_mark_message_seen(page_id: string, recipient_id: string) — Marks a user's message as seen by the page. - facebook_publish_scheduled_post(post_id: string) — Publishes a previously scheduled or unpublished facebook post immediately. - facebook_remove_page_task(user: string, page_id: string) — Removes a user's tasks/access from a specific facebook page. - facebook_reschedule_post(post_id: string, scheduled_publish_time: integer) — Changes the scheduled publish time of an unpublished facebook post. - facebook_send_media_message(page_id: string, media_url: string, media_type: string, is_reusable?: boolean, recipient_id: string, messaging_type?: string) — Sends a media message (image, video, audio, or file) from the page to a user. - facebook_send_message(page_id: string, message_text: string, recipient_id: string, messaging_type?: string) — Sends a text message from the page to a user via messenger. - facebook_toggle_typing_indicator(page_id: string, typing_on: boolean, recipient_id: string) — Shows or hides the typing indicator for a user in messenger. - facebook_unlike_post_or_comment(object_id: string) — Removes a like from a facebook post or comment. - facebook_update_comment(message: string, is_hidden?: boolean, comment_id: string) — Updates an existing facebook comment. - facebook_update_page_settings(about?: string, phone?: string, emails?: string[], page_id: string, website?: string, description?: string, general_info?: string) — Updates settings for a specific facebook page. - facebook_update_post(message?: string, post_id: string, og_phrase?: string, og_icon_id?: string, og_object_id?: string, og_action_type_id?: string, og_suggestion_mechanism?: string) — Updates an existing facebook page post. - facebook_upload_photo(url?: string, tags?: object[], photo?: object, caption?: string, page_id: string, published?: boolean, targeting?: object, scheduled_publish_time?: integer) — Uploads a photo file directly to a facebook page. supports local file upload up to 10mb. - facebook_upload_photos_batch(photos?: object[], page_id: string, album_id?: string, published?: boolean, photo_urls?: string[]) — Uploads multiple photo files in batch to a facebook page or album. uses facebook's batch api for efficient multi-photo upload. maximum 50 photos per batch. - facebook_upload_video(title?: string, video: object, page_id: string, published?: boolean, targeting?: object, description?: string, content_tags?: string[], custom_labels?: string[], scheduled_publish_time?: integer) — Uploads a video file directly to a facebook page. supports local file upload. for large videos (>100mb), uses resumable upload. ## Links Docs: https://mcp.ai/docs/mcps/facebook Website: https://mcp.ai/mcps/facebook