The social publishing API built for AI agents
Surgemesh is an agent-first social publishing API. AI agents and developers use one REST and MCP interface to schedule, publish, list and cancel social posts across brands, and they see the exact surge-adjusted price of each delivery before they commit.
What Surgemesh is
Surgemesh is an agent-first social publishing API. It gives software agents and developers a single interface, REST or MCP, for putting posts on Facebook Pages and Instagram on behalf of one or many brands.
Most publishing tools are designed for a person clicking through a dashboard. Surgemesh is designed for a program that reads a spec, gets a price, makes a request, reads a machine-readable error and decides what to do next without a human in the loop.
- One API, two protocols: REST at
https://api.surgemesh.com/v1and MCP athttps://api.surgemesh.com/mcp. - Four core actions: schedule, publish, list and cancel posts.
- Billing unit: the delivery, one post sent to one channel, from $0.02 base.
How it works
- Sign up with one call.
POST /v1/signupwith an email returns a sandbox account, a first brand and an API key. - Connect a channel.
POST /v1/channelslinks a Facebook Page or Instagram account to a brand. - Get a quote.
GET /v1/quotereturns the surge multiplier and price for your 15-minute slot, plus cheaper nearby slots when the slot is busy. - Create the post.
POST /v1/postswith anIdempotency-Keyheader. The price is locked when the post is accepted.
The sandbox validates every post without publishing it. Your first credit top-up switches the account to live; payments are not enabled yet during the beta. The full walkthrough with curl is in the docs quickstart.
Built agent-first, not agent-compatible
- OpenAPI document at
https://api.surgemesh.com/openapi.json. - MCP server (stateless JSON-RPC 2.0 over HTTP) with tools
get_pricing,get_quote,list_channels,list_brands,create_post,list_posts,cancel_postandget_usage. - A2A agent card at
https://api.surgemesh.com/.well-known/agent.json. - llms.txt and a full plain-markdown reference at /llms-full.txt.
- Machine-readable errors:
application/problem+jsonwith a stableerrorcode and ahintthat tells the agent what to do next. - Safe retries:
POST /v1/postsrequires anIdempotency-Key, so a retried create never duplicates a post or a charge. - Price before commit: public quotes, a locked price on acceptance, and an optional
max_price_usdceiling. - Agent-payable credit: top-ups over x402 in USDC on Base (payments are not enabled yet during the beta).
Read the guide for AI agents.
Supported networks
| Network | network value | Credential | Route |
|---|---|---|---|
| Facebook Pages | facebook | Meta access token + page_id | Native |
instagram | Meta access token + ig_user_id | Native |
These are the only networks Surgemesh accepts today. Instagram posts need at least one image or video in media_urls.
Pricing at a glance
- $0.02 per delivery base price, where a delivery is one post to one channel.
- Surge pricing by slot load: 0.8x below 20% load, 1x below 60%, then rising to a 3x cap at full load in 0.25 steps.
- Locked price: the price is fixed when the post is accepted.
- Prepaid credit: pack_5 ($5 for $5), pack_20 ($20 for $22) and pack_100 ($100 for $120). Credit never expires.
- 50 free deliveries every month on live accounts, used before credit.
- Beta note: payments are not switched on yet. The sandbox is free and works now.
See the worked surge example.
Multi-tenant by design
Each Surgemesh account is a tenant with up to 25 brands, their channels, up to 50 active API keys and its own usage ledger. Each key carries explicit scopes (read, write, admin) and can be restricted to specific brands, so every agent or client gets only the access it needs.
Channel credentials are encrypted at rest and never returned. Details are on the security page.
Status
Surgemesh is in public beta. Available now: the REST API, the MCP server, the sandbox, public pricing and quotes, brands, channels, keys, and native publishing to Facebook Pages and Instagram. Payments are not enabled yet, so credit top-ups (and therefore going live) are not possible during the beta. Card payments and signed webhooks are coming.