Post with CrewAI

Post to social media
with CrewAI.

Add PostLake to a CrewAI crew as one custom tool and any agent in the crew can publish to every social network — one call, one normalised response. Or connect PostLake's MCP server and skip the wrapper.

Get started free →

No card for the free tier · one API for every network · full MCP access

The fastest way: ask your agent

Prefer no code at all? Connect PostLake's hosted MCP server to your AI assistant (Claude, ChatGPT, Cursor and others) and just ask it to post. It authorizes over OAuth — no key to paste. See the MCP guide.

Post with CrewAI

This is the whole integration — connect your accounts once in the dashboard, then:

from crewai.tools import tool
import requests

@tool("Post to social")
def post_to_social(text: str, platforms: list[str]) -> str:
    """Publish text to the given social networks via PostLake."""
    r = requests.post(
        "https://api.postlake.dev/v1/posts",
        headers={"Authorization": "Bearer YOUR_API_KEY"},
        json={"text": text, "platforms": platforms, "profile": "my-brand"},
    )
    return r.text

# Pass the tool to an agent: Agent(role="Publisher", tools=[post_to_social], ...)

Step by step

  1. Create a PostLake API key (Settings → API Keys) and connect your accounts under a profile.
  2. Define one CrewAI tool that POSTs to /v1/posts — the snippet above is all of it.
  3. Give the tool to whichever agent should publish: Agent(role="Publisher", tools=[post_to_social]).
  4. Run the crew — the publishing agent posts everywhere in one call and gets a normalised result back.

Good to know

Why PostLake

One call, every network

List the platforms in one request and PostLake posts to all of them, returning a single normalised shape — your code never branches per platform.

No app setup

PostLake manages each network's developer app and OAuth for you — nothing to register or get reviewed yourself.

Agent-safe

Idempotency keys mean a retry never double-posts, and analytics come back normalised so an agent can decide what to post next.

Honest pricing

A free tier to start, then usage-based credits — one per post. You only pay for posts that actually publish.

Common questions

How do I add social posting to a CrewAI agent?

Define a CrewAI custom tool that calls PostLake's /v1/posts endpoint and pass it to the agent's tools list. That agent can then publish to every network. You can also connect PostLake's MCP server instead.

Does each agent need its own posting logic?

No — one shared tool calling PostLake covers every network, so any agent you give it to can publish without duplicated code.

Can CrewAI use PostLake via MCP?

Yes — PostLake is an MCP server, so an MCP-enabled crew can use its posting tools directly.

More guides

Python · Node.js · n8n · Make · Zapier · All guides · Full docs

One API and MCP server for every major network. Free to start.

Get started free →