← Back to Skills Marketplace
jaimin-345

Fb Page Publisher

by Jaimin Suriya · GitHub ↗ · v1.0.0 · MIT-0
windowsmacoslinux ✓ Security Clean
306
Downloads
0
Stars
0
Active Installs
1
Versions
Install in OpenClaw
/install fb-page-publisher
Description
Publish posts, upload photos, schedule content, read insights, and manage comments on Facebook Pages via the Graph API.
README (SKILL.md)

\r \r

Facebook Page Publisher\r

\r Manage your Facebook Page directly from an AI agent. Create posts, upload photos, schedule content, view analytics, and moderate comments -- all through natural language.\r \r

Required Environment Variables\r

\r

  • FB_PAGE_ID — The numeric ID of your Facebook Page\r
  • FB_ACCESS_TOKEN — A long-lived (non-expiring) Facebook Page Access Token with permissions: pages_manage_posts, pages_read_engagement, pages_manage_engagement\r \r

create_post\r

Create and immediately publish a text post to the Facebook Page.\r

  • message (string, required): The text content of the post.\r \r

upload_photo_post\r

Upload a photo to the Facebook Page with an optional caption. The photo must be a publicly accessible URL.\r

  • photo_url (string, required): A publicly accessible URL to the image file (JPEG, PNG, etc.).\r
  • caption (string, optional): Text caption for the photo post.\r \r

schedule_post\r

Schedule a text post for future publication. Time must be at least 10 minutes ahead and no more than 6 months.\r

  • message (string, required): The text content of the post.\r
  • scheduled_time (string, required): ISO 8601 datetime (e.g., "2026-03-10T09:00:00").\r \r

get_page_insights\r

Retrieve engagement metrics (impressions, reach, engagement, views) for the Facebook Page.\r

  • metric (string, optional): One of "impressions", "reach", "engagement", "views", or "all". Default: "all".\r
  • period (string, optional): Time period: "day", "week", or "days_28". Default: "day".\r \r

get_recent_posts\r

Fetch the most recent posts from the Page with engagement statistics (likes, comments, shares).\r

  • limit (integer, optional): Number of posts to retrieve (1-100). Default: 10.\r \r

delete_post\r

Delete a specific post from the Facebook Page. This action is irreversible.\r

  • post_id (string, required): The full post ID (format: pageId_postId).\r \r

get_post_comments\r

Retrieve comments on a specific post.\r

  • post_id (string, required): The full post ID (format: pageId_postId).\r
  • limit (integer, optional): Number of comments to retrieve (1-100). Default: 25.\r \r

reply_to_comment\r

Reply to a comment on a post as the Page.\r

  • comment_id (string, required): The ID of the comment to reply to.\r
  • message (string, required): The reply message text.\r \r

Example Usage\r

\r

User: Post "We're hiring! Check our careers page." to my Facebook page.\r
Agent: I'll publish that now using create_post.\r
\r
User: Schedule a post for tomorrow at 9 AM saying "Flash sale starts now!"\r
Agent: I'll schedule that using schedule_post with the computed datetime.\r
\r
User: Show me my page insights for the past week.\r
Agent: I'll fetch that using get_page_insights with period="week".\r
```\r
\r
## Setup\r
\r
1. Set `FB_PAGE_ID` to your Facebook Page's numeric ID.\r
2. Set `FB_ACCESS_TOKEN` to a non-expiring Page Access Token.\r
3. Run with `uv run src/server.py`.\r
Usage Guidance
This skill appears coherent and implements only Facebook Graph API operations. Before installing: (1) ensure you trust the skill's source and inspect the code (it runs a local MCP server and sends API calls only to graph.facebook.com); (2) provide only a Page Access Token with the requested scopes and be aware it grants posting/moderation rights to the Page — keep the token secret and revoke/rotate it if needed; (3) make sure you are comfortable running the 'uv' command and have the declared Python dependencies installed in a controlled environment. If you need higher assurance, run the server in an isolated environment and monitor network traffic to confirm only Facebook endpoints are contacted.
Capability Analysis
Type: OpenClaw Skill Name: fb-page-publisher Version: 1.0.0 The fb-page-publisher skill is a legitimate tool for managing Facebook Pages via the Graph API. It implements standard features such as posting, scheduling, and reading insights using the official Facebook API endpoint (graph.facebook.com). The code in src/fb_client.py and src/server.py is well-structured, lacks any signs of obfuscation, data exfiltration, or unauthorized execution, and strictly adheres to the functionality described in SKILL.md.
Capability Assessment
Purpose & Capability
The name and description match the code and declared env vars. The package implements posting, photo uploads, scheduling, insights, post listing, deletion, and comment moderation via the Facebook Graph API and only asks for FB_PAGE_ID and FB_ACCESS_TOKEN which are required for that functionality.
Instruction Scope
SKILL.md instructs running the server and setting FB_PAGE_ID and FB_ACCESS_TOKEN. The runtime code only reads these env vars (and optionally .env via python-dotenv) and makes requests to graph.facebook.com. The instructions do not ask the agent to read unrelated files, system state, or to send data to third-party endpoints beyond Facebook's Graph API.
Install Mechanism
There is no install spec (the skill includes source files and expects dependencies to be installed by the user). Declared Python dependencies (mcp, httpx, python-dotenv) are appropriate for the task. No downloads from arbitrary URLs or archive extraction are present in the package.
Credentials
The skill requests only FB_PAGE_ID and FB_ACCESS_TOKEN, which are exactly what's needed. Note: the SKILL.md asks for a long-lived non-expiring Page Access Token — that is sensitive and grants control over the Page, so users should only provide tokens they trust the skill with and rotate/revoke tokens if needed.
Persistence & Privilege
always:false and no special persistence is requested. The skill runs as an MCP server and does not modify other skills or system-wide settings. It will run autonomously if the agent is allowed to invoke it (disable-model-invocation is false, which is the platform default).
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install fb-page-publisher
  3. After installation, invoke the skill by name or use /fb-page-publisher
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.0.0
Initial release of fb-page-publisher. - Publish text posts, upload photos, and schedule content on Facebook Pages. - View engagement metrics and insights for your Facebook Page. - Retrieve recent posts and their engagement statistics. - Manage comments by viewing, deleting, and replying to comments. - Operate via the Facebook Graph API using environment variables for authentication.
Metadata
Slug fb-page-publisher
Version 1.0.0
License MIT-0
All-time Installs 0
Active Installs 0
Total Versions 1
Frequently Asked Questions

What is Fb Page Publisher?

Publish posts, upload photos, schedule content, read insights, and manage comments on Facebook Pages via the Graph API. It is an AI Agent Skill for Claude Code / OpenClaw, with 306 downloads so far.

How do I install Fb Page Publisher?

Run "/install fb-page-publisher" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is Fb Page Publisher free?

Yes, Fb Page Publisher is completely free, licensed under MIT-0. You can download, install and use it at no cost.

Which platforms does Fb Page Publisher support?

Fb Page Publisher is cross-platform and runs anywhere OpenClaw / Claude Code is available (windows, macos, linux).

Who created Fb Page Publisher?

It is built and maintained by Jaimin Suriya (@jaimin-345); the current version is v1.0.0.

💬 Comments