# Social Infrastructure for AI Agents · Claude, ChatGPT · PostLake > Markdown version of https://postlake.dev/agents/ . The canonical page for humans. > PostLake is the social infrastructure for AI agents: https://postlake.dev/llms.txt Give your agent social capabilities. Install one skill and any coding agent (Claude Code, Cursor, Codex, Windsurf) can observe, publish, engage and measure across every network. Prefer MCP or plain REST? Those work too. ``` npx skills add postlake/postlake-mcp --all ``` Adds five skills: accounts, publish, schedule, media, analytics. Set a `POSTLAKE_API_KEY` and you're live. Then just ask: *"Draft 5 posts for this week from the changelog, schedule them 24 hours out as drafts, and do not publish until I approve."* Your agent already knows how. Calendar the agent fills: https://postlake.dev/guides/ai-content-calendar.md Drafts until you approve: https://postlake.dev/guides/human-approval-drafts.md Vs Postiz: https://postlake.dev/compare/postiz-alternative.md ## Three ways in - **Drop-in skill.** One command installs five skills into your coding agent. No glue code. `npx skills add postlake/postlake-mcp --all` (Claude Code · Cursor · Codex · Windsurf) - **Hosted MCP server.** Point any MCP client at `https://api.postlake.dev/mcp` and approve once over OAuth. [MCP setup](https://postlake.dev/mcp.md) - **Plain REST API.** Call `https://api.postlake.dev/v1` from any language or framework. LangChain, CrewAI, OpenAI tools. [Docs](https://docs.postlake.dev/) ## Set up MCP for your agent - [Claude](https://postlake.dev/agents/claude.md): let Claude post to all your socials through PostLake. - [ChatGPT](https://postlake.dev/agents/chatgpt.md): let ChatGPT post to all your socials through PostLake. - [Cursor](https://postlake.dev/agents/cursor.md): let Cursor post to all your socials through PostLake. - [Gemini](https://postlake.dev/agents/gemini.md): let Gemini post to all your socials through PostLake. - [GitHub Copilot](https://postlake.dev/agents/github-copilot.md): let GitHub Copilot post to all your socials through PostLake. ## Common questions ### How do I let my AI agent post to social media? Connect PostLake's hosted MCP server to your AI assistant (Claude, ChatGPT, Cursor, Gemini, Copilot and others), approve it once with OAuth, then just ask it to post. No API key to paste and no code required. ### Which AI agents can post to social media with PostLake? Any MCP-capable assistant. Claude, ChatGPT, Cursor, Gemini CLI, VS Code / GitHub Copilot, and any other MCP host, plus any agent framework like LangGraph or CrewAI via the REST API. ### Do I need to write code to use PostLake with an agent? No. The MCP server is no-code: connect it to your AI host and ask in plain language. If you're building your own agent runtime, the REST API and idempotency keys are there too. ### Is it safe to let an agent post on my behalf? Only approve clients you trust. OAuth avoids pasting an existing API key into the client, idempotency keys prevent duplicate posts, publishing limits are enforced, and you can require your approval before anything publishes. An OAuth agent cannot mint an unrestricted account key or approve its own gated drafts. ### How much does it cost to use PostLake with an AI agent? There's a free tier, 20 credits a month, no card, then usage-based credits at one per post (X costs more). The MCP server and agent access are included on every plan. ### Can an agent fill a content calendar without Postiz? Yes. The agent writes `scheduledAt` (and `timezone`) on each post. Turn on Require my approval for its OAuth connection and PostLake automatically keeps every request as a draft until the owner approves it. The dashboard month view is the review queue. Postiz is the calendar app (self-host or $29/mo). PostLake is the hosted API the agent talks to. Plain markdown for agents: https://postlake.dev/agents/index.md · https://postlake.dev/llms.txt