MCP (streamable HTTP) via MCPServerAdapter · Facebook

Run a CrewAI crew that drafts Facebook Page posts

Community updates are good work for a crew: one agent collects what happened this month, another writes it for the Page, a third drafts it. With SocialHandoff as the publisher's MCP server, the crew creates Facebook drafts and nothing more. A person approves each post in the inbox, and if several Pages are connected, the card shows which Page the post will go to.

Prompt

Crew goal: a monthly community update for our open source project's Facebook Page. Researcher: summarize merged PRs and new contributors from the GitHub export. Writer: a friendly post under 150 words. Publisher: draft it for Facebook.

How to do it

  1. Connect Facebook and mint a key In https://app.socialhandoff.com, open Connections, sign in with Facebook and pick the Pages to connect; each Page becomes its own channel. Then create an agent key named CrewAI scoped to Facebook with draft and schedule permission.
  2. Load the tools Connect with MCPServerAdapter using transport streamable-http, pointing at https://app.socialhandoff.com/mcp and sending the key as a bearer header. The agent gets attach_media, draft_post, schedule_post, and preview_posts.
  3. Add photos only if you need them A Page post can be text and a link. For photos, the agent calls attach_media through the adapter (or you POST https://app.socialhandoff.com/v1/media/import with url and alt) and passes the ids to draft_post in mediaIds.
  4. Run the agent Kick off the crew with the export. Only the publisher agent is given the MCP tools.

Example draft

October in the project, in numbers: 64 pull requests merged, 11 first-time contributors, and 1 very long-awaited feature: plugins can now add their own settings pages.

Welcome to everyone who sent their first PR this month. If you want to join them, look for issues labeled "good first issue".

https://example.com/contribute

Gotchas

  • Only Facebook Pages can be connected, not personal profiles. Every Page you grant at sign-in becomes its own channel, so check which Page the card names before approving.
  • Close the MCPServerAdapter when the crew finishes, or use it as a context manager, so the HTTP session does not linger between runs.
  • A Page post can carry up to 10 photos or one video, not both. Each photo should have alt text, or the missing-alt-text guardrail flags it.
Facebook
  • Where you can post: Facebook Pages only. The API does not allow posting to personal profiles or to Groups through SocialHandoff.
  • Page access: You need a role on the Page that allows creating content.
  • Photos: One photo with alt text, or up to 10 photos in one post.
  • Video: One video per post.
Facebook post scheduler for Pages, with approval built in

Frequently asked questions

Can I post to a personal Facebook profile?
No. Meta only allows API publishing to Pages. Personal profiles cannot be connected.
Which crew member should hold the key?
Give the tools to one publisher agent. Researchers and writers pass it text; only the publisher calls draft_post, which keeps the audit log readable.
Do Facebook Page posts need an image?
No. A Page post can be text and a link, one or more photos (up to 10), or one video.

Let your agents post. Keep the final say.

Connect your first agent in minutes. Every draft waits in your inbox until you approve it.

14 days free. No card required.

The hosted version is opening soon

Leave your email and we will send one message when hosted accounts open, with your 14-day trial ready. Want it today? Self-host it free from the repo.

Start free trial