Why the calendar publishes, not the agent
Your dot runs on its own OpenAI-hosted cloud computer and browser and can work on a schedule, which makes it tempting to ask it to "post this at 9 every morning". The more reliable split is to let your dot decide and write, and let a calendar do the publishing. When your dot calls content_schedule_posts, each time you give becomes its own scheduled post in MCP Ads, and the calendar publishes it when the time comes. Nothing about that depends on your dot being mid-task at 9:00.
That split also gives you one place to see everything. Posts your dot schedules show up on the same Content calendar in the MCP Ads dashboard as posts you schedule by hand, so you can reschedule or cancel one without asking your dot at all.
Connect it in a few minutes
Dots use the same apps and connectors as ChatGPT, so MCP Ads is added once in ChatGPT and your dot can then use it. The MCP Ads plugin is in review for the ChatGPT plugin directory; until it is listed, you add it as a custom connector in Developer mode. There is no API key to copy: you sign in through the browser.
Before you send it, connect the channels you post to under Connections in the MCP Ads dashboard: Facebook and Instagram Pages, Instagram on its own login, TikTok for organic posting, LinkedIn, Threads, or a WordPress site with an application password. Your dot can only schedule to channels that are connected there.
In a Business workspace, custom connectors may need an admin to turn on Developer mode first. The Dots setup page and the Dots docs have the same steps.
Dots follow ChatGPT's permissions, and you can add rules for which tasks need your approval. Research a dot does on its own is read-only; tasks you give it or schedule can act, under their own rules and approvals, on top of the approval controls in MCP Ads.
The steps:
- In ChatGPT, open Settings → Plugins → Browse plugins, and turn on Developer mode if custom connectors are not offered yet.
- Add a custom connector named MCP Ads with the URL https://mcp-ads.com/mcp-slim.
- Sign in through the browser window that opens, with the login that owns your MCP Ads account.
- Let your dot use the MCP Ads app, then ask it: "Once you are in, list the social channels I can schedule to and what is already on my content calendar for the next 14 days."
What each channel needs
Times are local times written as YYYY-MM-DD HH:MM, one per post. "Every weekday at 9 next week" becomes five entries, and your dot fills them in for you. The timezone is your workspace timezone unless you name another one, such as Europe/London. Times already in the past are refused and nothing from that request is scheduled, which stops a half-scheduled week. One request can hold up to 60 posts.
Before anything is saved, each post is checked against the same channel rules the calendar composer uses. That matters in practice: an Instagram post without an image fails when you schedule it, while you are still in the conversation, instead of failing silently at its publishing minute.
| Channel | What the post needs | Worth knowing |
|---|---|---|
| Text, a media URL, or both | With several Pages connected, your dot is asked which Page to use | |
| An image (public URL) and a caption | Uses the Instagram connected by its own login unless you name a Page-linked account | |
| Threads | Text, optionally media | Connected as its own channel |
| Text, optionally media | Posts as the LinkedIn account connected in MCP Ads | |
| TikTok | A video (public URL) and a caption | An image alone is not enough |
| WordPress | A title and the post text | Scheduled as a blog post rather than a social post |
Prompts that work
Say what, where and when, and ask your dot to show you the drafts before it schedules. The scheduled check-ins at the end of this list are where an agent earns its keep: they run without you and only need your attention when something failed or a gap opens up.
- Write five LinkedIn posts from this blog article and show them to me. After I approve, schedule them Monday to Friday next week at 08:30.
- Schedule this caption and image on Instagram and Facebook for Thursday at 18:00 London time.
- Take this video link and schedule it on TikTok for Saturday at 11:00 with a short caption in the same tone as my last three posts.
- What is on my content calendar for the next 14 days? Show it by channel and flag any day with nothing scheduled.
- Cancel the Threads posts scheduled for Wednesday and Thursday; I will rewrite them.
- Every Friday at 4 pm, list next week's scheduled posts by channel and tell me about any day with no post.
- Every Monday at 9, list posts that failed to publish in the last 7 days with the error for each.
Checking back: published, failed and cancelled
content_list_scheduled looks ahead for scheduled posts and back for published ones, 14 days by default and up to 90. It returns each post's channel, status and local time, the link to the published post where there is one, and any post that failed along with its error. That is the raw material for a useful Monday note: what went out, where it lives, and what needs a second attempt.
Cancelling through content_cancel_scheduled does not delete anything. The post goes back to an unscheduled draft, so the text is kept and you can put it back on the calendar later. A post that has already published or failed is skipped and reported as such. To move a post rather than cancel it, reschedule it on the Content calendar in the dashboard.
What it will not do without you
A post you ask your dot to schedule, in your own words, is recorded with you as its approver, exactly as if you had scheduled it in the calendar yourself. That is the reason to ask for drafts first: once you say "schedule it", it will publish at that time unless you cancel it. Your dot also sees only the channels connected in MCP Ads, under the same workspace scope as the web app.
For paid work the rules are stricter. Budgets, statuses and new campaigns go through the approval and workspace controls in MCP Ads: your dot can prepare a change, and it goes live when you approve it.
Honest limits
Media is passed as a public image or video URL; if your asset is on your laptop, put it somewhere with a public link first. Posts publish as the connected account, and a post the platform refuses at its publishing time shows up as failed, with the error, which is exactly what the Monday check above is for. Every tool call your dot makes counts toward your MCP Ads plan, so a daily check you never read is waste.
MCP Ads is free for 30 tool calls a month, then $49/month flat for unlimited; your first dot is included in ChatGPT Pro and Business Premium at no extra cost. See pricing, or the quickstart for other AI clients.