Skip to content
LunarPost

Social posting API and MCP server

Post to your customers' social accounts with one API call.

Lunar Post schedules videos and images to seven networks for every customer you serve. Each customer connects their own accounts on a page you send them.

Start free trialRead the docs

14 days free, 50 posts, no card.

Ask for an upload URL, send the bytes, then schedule.

# 1. Ask for an upload URL, then PUT the file to itcurl -X POST https://post.lnr.ae/api/post/v1/media/uploads \  -H "Authorization: Bearer YOUR_API_KEY" \  -H "Content-Type: application/json" \  -d '{ "fileName": "cold-brew.mp4", "contentType": "video/mp4", "sizeBytes": 48211904 }'# 2. Schedule it to the customer's accountscurl -X POST https://post.lnr.ae/api/post/v1/posts \  -H "Authorization: Bearer YOUR_API_KEY" \  -H "Content-Type: application/json" \  -d '{    "mediaId": "MEDIA_ID",    "profileId": "PROFILE_ID",    "accountIds": ["INSTAGRAM_ID", "TIKTOK_ID"],    "caption": { "caption": "Cold brew is back." },    "when": "next_free_slot"  }'

Ember Roasters

@emberroasters

ScheduledFri 20 Nov
Espresso pouring into a glass, from Ember Roasters' video

Twelve hours steeped, zero bitterness. Cold brew is back. #coldbrew

Uses 2 of this month's posts

Seven networks, one schedule

TikTok posts land in the creator's TikTok inbox, where they tap Post.

  • Instagram
  • TikTok
  • YouTube
  • LinkedIn
  • Facebook
  • Threads
  • Pinterest

How it works

Built for posting on someone else's behalf

Profiles keep every customer's accounts apart, so an agency with forty clients never posts to the wrong one.

  1. Add a customer

    Create a profile with your own id for them. It holds their accounts and nothing else.

    POST /api/post/v1/profiles
    
    {
      "name": "Ember Roasters",
      "externalRef": "cus_8841"
    }
    
    → 201  { "id": "7c9e6679-…" }
  2. Send a connect link

    Your customer signs in on each network's own page. You never handle a password.

    Connect Ember Roasters' accounts

    • InstagramConnected
    • TikTokConnected
    • YouTubeConnect

    post.lnr.ae/connect

  3. Schedule the posts

    One video or image, many accounts, a caption written for each network. Pick a time, now, or each account's next free slot.

    • Wed 18 Nov 09:00Published
    • Wed 18 Nov 09:00Published
    • Fri 20 Nov 09:00Scheduled
    • Fri 20 Nov 09:00Scheduled

For Claude, Cursor and other MCP clients

“Post this every weekday at 9” is now a conversation

Connect an AI tool to the Lunar Post MCP server. It makes or finds the video, uploads it, writes a caption for each network and shows you the plan before anything goes out.

  • Asks before it posts: scheduling tools return a preview and wait for your OK.
  • 18 tools, from adding a customer to retrying a failed post.
  • One API key works for the REST API and the MCP server.

Add Lunar Post to Claude Code

claude mcp add --transport http lunar-post \
  https://post.lnr.ae/api/post/mcp \
  --header "Authorization: Bearer YOUR_API_KEY"

You

Make a 15-second teaser for Ember's cold brew and post it to their Instagram and TikTok every weekday at 9.

Claude

  • create_upload_urlember-teaser.mp4
  • complete_upload15 s · 1080×1920
  • schedule_postpreview

Ready to schedule

10 posts on Instagram and TikTok, Monday to Friday at 09:00, starting next Monday.

Uses 10 of 500 posts this monthWaiting for your OK

Who builds on Lunar Post

  • Developers

    Add posting to an app without building seven network integrations, token refreshes and upload rules.

  • SaaS products

    Let your users publish what they make in your product to their own accounts, on their own schedule.

  • Agencies

    Run every client's posting from one workspace, with each client's accounts kept apart.

networks
7
MCP tools
18
requests a minute per key
60
days free, no card
14

Your first post is one call away

Start the 14-day trial with 50 posts and 3 profiles. No card needed.