---
name: postroutine-social-manager
version: 1.1.0
title: Social Media Assistant (via postroutine.io)
description: >-
  Turn your OpenClaw into an autonomous social media manager using PostRoutine.
  Schedule, publish, and manage posts across Instagram, Facebook, X, LinkedIn,
  YouTube, TikTok, Threads, Pinterest, Bluesky, Reddit, Telegram, Discord,
  Google Business, Snapchat, WhatsApp, Slack, and more. Use when the user wants
  to post or schedule without opening the dashboard.
homepage: https://postroutine.io/openclaw
keywords: social-media, automation, postroutine, openclaw, tiktok, instagram, youtube, mcp
metadata:
  openclaw:
    requires:
      env:
        - POSTROUTINE_API_KEY
    primaryEnv: POSTROUTINE_API_KEY
---

# PostRoutine Social Manager

Manage social media posting for PostRoutine via REST API or MCP.

## Environment

```bash
POSTROUTINE_API_KEY=pr_live_xxx
POSTROUTINE_API_URL=https://qnadvdhrowsqgqimlues.supabase.co/functions/v1/api/v1
POSTROUTINE_MCP_URL=https://www.postroutine.io/api/mcp
```

Get a key: https://postroutine.io/dashboard/api-keys

## Auth

```
Authorization: Bearer $POSTROUTINE_API_KEY
```

## Workflow

1. List accounts — `GET /social-accounts` or MCP `accounts_list`
2. Confirm targets with the user before any write
3. Prefer **drafts** or **schedules** — do not publish/reply unless the user explicitly approves
4. Upload media if needed — `POST /media/presign`
5. Create post — `POST /posts` (`scheduled_at`, `use_queue`, or draft; avoid `publish_now` without approval)
6. Check results — `GET /posts/{id}` or `post_results_list`
7. Only claim a post is live after delivery status confirms success

Approval-first safety: https://postroutine.io/developers/guides/agent-safety  
Recipes: https://postroutine.io/developers/guides/agent-recipes

## MCP

Endpoint: `https://www.postroutine.io/api/mcp`

Prefer Bearer headers. Avoid key-in-URL when the client supports headers.

Key tools: `accounts_list`, `posts_create`, `posts_list`, `posts_cross_post`, `analytics_list`, `inbox_conversations_list`, `queues_get_next_slot`

Cursor (`.cursor/mcp.json`):

```json
{
  "mcpServers": {
    "postroutine": {
      "url": "https://www.postroutine.io/api/mcp",
      "headers": { "Authorization": "Bearer YOUR_API_KEY" }
    }
  }
}
```

## Docs

- https://postroutine.io/AGENTS.md
- https://postroutine.io/llms.txt
- https://postroutine.io/llms-full.txt
- https://postroutine.io/openapi.json
- https://postroutine.io/cursor
- https://postroutine.io/codex
- https://postroutine.io/claude-cowork
- https://postroutine.io/perplexity
- https://postroutine.io/agents
- https://postroutine.io/developers/guides/agent-safety
- https://postroutine.io/developers/guides/agent-recipes
- https://postroutine.io/skills/postroutine-social-manager/SKILL.md

## Rules

- List accounts before posting; confirm IDs with the user.
- Never expose the API key.
- Prefer `use_queue: true` when the user says “schedule to my queue”.
- Treat publish, inbox reply, and retry as approval-gated actions by default.