Skip to main content
Glama

PostLake: the social operating system for AI agents

Give an agent one reliable way to run social. PostLake lets agents publish, schedule, monitor, discover, reply, moderate, and learn across X, LinkedIn, Instagram, TikTok, Facebook, Threads, Bluesky, YouTube, and Pinterest.

One connection gives an agent one normalised contract instead of nine platform SDKs, nine auth models, and nine incompatible result shapes. It can act with a hosted MCP server, a drop-in agent skill, or the REST API.

An agent can plan a campaign, validate each destination before it spends a credit, publish or save a draft for approval, confirm asynchronous posts, read conversations and comments, handle what needs a response, and use the results to decide what to do next.

Why agents use PostLake

One contract, every network

Post once or fan out to every connected network. Each target has the same state, URL, time, and error shape, so an agent handles the result once rather than writing platform-specific recovery logic.

Safe to let an agent act

validate_post provides a free dry run before publishing. Idempotency keys make retries safe. Owners can require approval on an OAuth connection, which forces every publish request from that agent into a draft and prevents it from approving its own work. confirm_post checks an asynchronous provider after it accepts a post, and every action reports the individual target result rather than hiding partial failure.

Not just a publishing endpoint

An agent can read a unified feed of notifications, direct messages, comments, and post performance. It can then reply, moderate, engage, research a topic, or inspect an account before it acts. Social management stays in the same workflow as publishing.

Human control where it belongs

OAuth makes the account owner approve a connection in the browser. get_connect_link lets an agent send them directly to that approval step. Owners can revoke an agent, manage channels, set agent limits, and require approval from PostLake. An OAuth agent cannot create an unrestricted account key to bypass those controls, and never needs a social-network password.

Related MCP server: postforme-mcp-pro

Start in minutes

Hosted MCP: Cursor, Claude, ChatGPT, Gemini, Copilot, and more

PostLake is a remote Streamable HTTP MCP server. Nothing is installed, run, or self-hosted. Add this server in your MCP client, then complete the PostLake OAuth approval once.

{
  "mcpServers": {
    "postlake": {
      "url": "https://api.postlake.dev/mcp"
    }
  }
}

Cursor

Open Settings -> Tools & MCP -> New MCP server, add the configuration above, then select Connect for PostLake and approve the browser sign-in.

Claude Code

claude mcp add --transport http postlake https://api.postlake.dev/mcp

Other MCP clients

Add https://api.postlake.dev/mcp as a remote MCP server. The initial OAuth challenge opens the host's sign-in and approval flow. Full setup instructions: https://docs.postlake.dev/mcp

Drop-in skills: coding agents

Install PostLake's agent skills for Claude Code, Cursor, Codex, Windsurf, and other skills-compatible coding agents:

npx skills add postlake/postlake-mcp --all

Set POSTLAKE_API_KEY in the agent's runtime, then ask it to handle social work in plain language. The skills cover accounts, publishing, scheduling, media, and analytics.

REST API: custom agent runtimes

Use https://api.postlake.dev/v1 from LangGraph, CrewAI, AutoGen, OpenAI tool calls, or any HTTPS client. The REST API and MCP server work against the same profiles, channels, posts, and safety rules.

What an agent can do

The MCP server currently provides 53 focused tools. They are designed around social outcomes rather than individual platform APIs.

Outcome

Tools

Understand the account

whoami, get_credits, list_profiles, list_social_accounts, get_social_account, list_account_targets, check_allowance

Connect and organise channels

create_profile, rename_profile, delete_profile, connect_account, get_connect_link, disconnect_account

Plan and validate

get_platform_capabilities, get_publish_info, validate_post

Publish and schedule

create_post, get_post, confirm_post, list_posts, edit_post, cancel_post, publish_draft, delete_post

Media

upload_media, upload_media_batch

Unified Inbox

list_notifications, mark_notifications_seen, list_conversations, read_conversation, mark_conversation_read, send_message, read_comments, reply_to_comment, hide_comment, delete_comment

Discover and understand the network

search_posts, look_up_profile, read_profile_posts, search_places, list_own_posts, list_tagged_posts

Engage and manage presence

engage, update_profile

Commerce, events, and collaborations

list_products, list_branded_partners, list_ad_accounts, list_events, create_event, find_creators

Measure and improve

get_post_analytics, get_analytics

Account-key-authenticated MCP callers can also use create_api_key to hand off to another trusted service. OAuth agents do not see or receive this tool because an account key would bypass their owner-set limits.

An agent workflow that does not break trust

  1. Call whoami and list_social_accounts to understand the account, limits, connected channels, and current readiness.

  2. If a human still needs to connect a channel, call get_connect_link and send them the short-lived approval URL. Do not ask them to hunt through a dashboard.

  3. Call get_platform_capabilities and validate_post before creating a multi-network post. PostLake returns each target's exact constraint and fix.

  4. Use create_post to publish, schedule, or save a draft for human review. If the owner enabled Require my approval, PostLake saves a draft even when the agent does not request one. Include an idempotency key so a retry cannot double-post.

  5. If a platform is processing asynchronously, call confirm_post to obtain the provider-confirmed state without waiting for a public URL.

  6. Use list_notifications, list_conversations, and read_comments to see what needs attention. Reply, moderate, or engage only where the platform supports it.

  7. Use get_analytics and get_post_analytics to turn results into the next informed action, not a spreadsheet someone has to interpret later.

Example prompts

  • "Check every connected channel, then tell me what needs a human approval."

  • "Draft a launch post for LinkedIn, Instagram, Threads, and TikTok. Validate it, save it as a draft, and show me the platform-specific changes."

  • "Read new DMs and comments. Give me concise reply drafts, but do not send anything until I approve them."

  • "Find what people are saying about this topic, inspect the strongest three accounts, then propose a post that adds something useful."

  • "Confirm yesterday's TikTok post, then compare its performance with the rest of the week and recommend the next post."

Platform-aware, not platform-blind

PostLake knows the constraints that cause social automations to fail in real life: media types, image counts, caption limits, creator-level TikTok settings, network-specific privacy options, post destinations, async publishing, and whether a given connection can read, search, message, or engage.

When a platform cannot perform an action, PostLake says so in the response. An empty list never silently means a network was not read. A partial publish does not pretend every destination succeeded. Agents get the information they need to recover safely.

Security and ownership

For interactive MCP clients, PostLake uses OAuth and PKCE. The account owner approves each connected agent once and can revoke it from the dashboard at any time. OAuth tokens are scoped to that client and refresh automatically. Owners can enforce profile, platform, daily-credit, pack-credit, and approval limits. An approval-gated agent cannot publish its own drafts or mint an unrestricted account API key.

For unattended services, use a PostLake API key in the service's secret store, not in a prompt or source file. Keys have account-level access, so use a named key per trusted service and revoke it when it is no longer needed.

Pricing

Every plan includes the MCP server and agent access. Start with 20 free credits per month and no card. Credits are charged when publishing or where a platform charges for a particular operation. See the current pricing and credit rates at https://postlake.dev/pricing.

Documentation

Built by PostLake. Issues and pull requests are welcome.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

No tool schema history has been recorded yet.

Maintenance

ActivityMaintained
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    D
    maintenance
    MCP server for the Post for Me API, enabling publishing, scheduling, editing, deleting, and analyzing social media posts across 9 platforms from any MCP client.
    27
    47
    1
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    A full social media management MCP server enabling post, read, schedule, and analyze across Facebook, Instagram, LinkedIn, X/Twitter, Pinterest, and YouTube from any MCP-compatible AI client.
    MIT
  • F
    license
    Not graded
    quality
    C
    maintenance
    Provides unified access to social media data across nine networks (Instagram, TikTok, YouTube, etc.) through a set of MCP tools for profiles, posts, search, and comments, backed by the SocialBridge API.
    -

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/PostLake/postlake-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server