Let your AI assistant schedule your posts
An MCP server is a small program that lets an AI assistant use a tool on your behalf, through the Model Context Protocol.[1] Octoque's runs on your computer and talks to the Octoque API with your key. Tell your assistant "post lassi.mp4 to Instagram and YouTube at golden hour" and it uploads the file, writes the captions and schedules each platform at its own time. It is told never to post without your clear go-ahead, and a key without post.publish can only make drafts.
What it does
Most social media MCP servers wrap a single platform. Octoque's wraps a scheduler: one request can reach Instagram, YouTube, LinkedIn, X, Facebook, Threads, Bluesky and your other connected accounts, each with its own caption and time. Because it only calls the public Octoque API, everything the app enforces still applies: your role, the key's scopes, caption limits, plan allowances and each platform's rules.
The nine tools
| Tool | What it does | Key needs |
|---|---|---|
list_accounts | Lists your connected accounts: platform, handle and whether each is healthy. | post.read |
best_times | The next golden hour per platform, in your audience's time zone. | Any key |
schedule_post | Makes and sends a post. When: golden (each platform at its golden hour, the default), queue (your next free posting time), now, or an exact time with a time zone. Takes per-platform captions, a YouTube title and a local video or photo. | post.write + post.publish |
save_draft | Makes the same post but leaves it as a draft for you to finish in the app. | post.write |
list_posts | Recent posts, filtered by status or caption text. | post.read |
get_post | One post: each platform's status, time, live link and any problem in plain words. | post.read |
retry_post | Sends the platforms that failed again. | post.publish |
cancel_post | Unschedules a post. Anything already live is not touched. | post.publish |
post_results | Views, likes, comments and shares per platform. | post.read |
Things to ask
- "Which accounts do I have connected in Octoque?"
- "When is golden hour on Instagram and YouTube tomorrow?"
- "Schedule ~/Movies/lassi.mp4 to Instagram and YouTube at golden hour. Write a short caption for each and title the YouTube one 'Three-minute mango lassi'."
- "Save a draft for LinkedIn and X about today's launch. I'll finish it in the app."
- "What failed this week? Retry it."
- "How did yesterday's video do on each platform?"
Set it up
You need an Octoque plan with the API (any paid plan, or the free trial) and an API key. MCP is an open standard, so the server is the same for every app; only where you paste it differs.
Jump to: Claude Desktop · Claude Code · Gemini CLI · GitHub Copilot in VS Code · Cursor · Devin Desktop (Windsurf) · OpenAI Codex · LM Studio · ChatGPT · Any other MCP app
- In Octoque, open You → Developers & AI and make a key. Name it after the app, such as "Cursor", so you can tell keys apart later. Copy it: it's shown once.
- Add the server to your assistant with one of the setups below.
- Ask: "Which accounts do I have connected in Octoque?" If you see them, it works.
Claude Code
One command adds it. --scope user makes it available in every project; leave it out to add it to the current project only.[2]
claude mcp add \
--env OCTOQUE_API_KEY=oq_live_•••• \
--env OCTOQUE_API_URL=https://api.octoque.com \
--transport stdio --scope user octoque \
-- /path/to/python -m scheduler.mcp_serverCheck it with claude mcp list, or type /mcp inside Claude Code. It should say connected.[2]
Claude Desktop
Open Claude's Settings → Developer → Edit Config. That opens claude_desktop_config.json (on a Mac in ~/Library/Application Support/Claude/, on Windows in %APPDATA%\Claude\). Add Octoque, save, then quit Claude completely and open it again.[3]
{
"mcpServers": {
"octoque": {
"command": "/path/to/python",
"args": ["-m", "scheduler.mcp_server"],
"env": {
"OCTOQUE_API_KEY": "oq_live_••••",
"OCTOQUE_API_URL": "https://api.octoque.com"
}
}
}
}If it doesn't appear, the log files in ~/Library/Logs/Claude (mcp-server-octoque.log) say why. Paths in the config must be absolute.[3]
Gemini CLI
One command adds it for every project (-s user). Or add the same entry as Claude Desktop's under mcpServers in ~/.gemini/settings.json. Local servers connect only in folders you trust (gemini trust).[6]
gemini mcp add -s user -e OCTOQUE_API_KEY=oq_live_•••• -e OCTOQUE_API_URL=https://api.octoque.com octoque /path/to/python -m scheduler.mcp_serverGitHub Copilot in VS Code
Run MCP: Open User Configuration from the Command Palette to add it everywhere, or create .vscode/mcp.json in one project. VS Code calls the list servers. It asks you to trust the server the first time it starts; then Octoque's tools appear in Copilot Chat's agent mode.[7]
{
"servers": {
"octoque": {
"type": "stdio",
"command": "/path/to/python",
"args": ["-m", "scheduler.mcp_server"],
"env": {
"OCTOQUE_API_KEY": "oq_live_••••",
"OCTOQUE_API_URL": "https://api.octoque.com"
}
}
}
}Cursor
Add it to ~/.cursor/mcp.json for every project, or .cursor/mcp.json for one. Cursor wants "type": "stdio", and you can write the key as ${env:OCTOQUE_API_KEY} to keep it out of the file.[8]
{
"mcpServers": {
"octoque": {
"type": "stdio",
"command": "/path/to/python",
"args": ["-m", "scheduler.mcp_server"],
"env": {
"OCTOQUE_API_KEY": "oq_live_••••",
"OCTOQUE_API_URL": "https://api.octoque.com"
}
}
}
}Devin Desktop (formerly Windsurf)
In the Cascade panel, open … (Actions), then the MCP config file. It's ~/.config/devin/mcp_config.json on a Mac or Linux and %APPDATA%\devin\mcp_config.json on Windows. Use the same entry as Claude Desktop.[9]
{
"mcpServers": {
"octoque": {
"command": "/path/to/python",
"args": ["-m", "scheduler.mcp_server"],
"env": {
"OCTOQUE_API_KEY": "oq_live_••••",
"OCTOQUE_API_URL": "https://api.octoque.com"
}
}
}
}OpenAI Codex
One command adds it, and the Codex app, CLI and IDE extension all share it. Check with codex mcp list.[10]
codex mcp add octoque --env OCTOQUE_API_KEY=oq_live_•••• --env OCTOQUE_API_URL=https://api.octoque.com -- /path/to/python -m scheduler.mcp_serverOr write it into ~/.codex/config.toml yourself:
[mcp_servers.octoque]
command = "/path/to/python"
args = ["-m", "scheduler.mcp_server"]
[mcp_servers.octoque.env]
OCTOQUE_API_KEY = "oq_live_••••"
OCTOQUE_API_URL = "https://api.octoque.com"LM Studio
Run Octoque with a model on your own computer. In LM Studio 0.3.17 or later, open the Program tab in the right sidebar, then Install → Edit mcp.json, and add the same entry as Claude Desktop.[11] Smaller local models can be shaky with tools, so start with a key without post.publish.
ChatGPT
Not yet. ChatGPT connects only to remote MCP servers reached over HTTPS (or through OpenAI's tunnel), not to programs on your computer.[4] It will work with the hosted version. Until then you can use the API from your own code.
Other MCP clients
Any app that can start a local stdio MCP server works with the same command and the two settings: OCTOQUE_API_KEY (required) and OCTOQUE_API_URL. Most use the mcpServers format shown for Claude Desktop.
Safety
An assistant that can post for you should be easy to stop. Here is what keeps it in check, from strongest to softest:
- The key's scopes are enforced by Octoque's servers. Give the key
post.readandpost.writeonly and it can never send anything:schedule_poststops with "This API key doesn't have the post.publish scope" and the post waits as a draft. - No account controls. Keys can't change your password, make keys, manage your team or billing, or delete anything at account level.
- No deleting. None of the nine tools deletes a post or touches one that's already live.
cancel_postonly unschedules. - Your client asks first. The MCP specification says a person should always be able to deny a tool call, and that clients should ask before sensitive actions.[1] Claude Desktop asks for your approval before a tool runs.[3]
- The assistant is told to ask. Octoque's server tells the assistant to never post without your clear go-ahead and to save a draft when unsure. That's an instruction to the model, not a lock, which is why the scopes above matter.
- Revoke it any time. Revoking the key in You → Developers & AI stops the server at once. The key list shows when it was last used.
The server only receives what the assistant sends to a tool (a caption, a file path, a time), not your conversation. If you run it in HTTP mode instead of stdio, it listens only on your own computer (127.0.0.1).
What it can't do yet
- TikTok privacy. TikTok requires you to choose who can see each post, with no default.[5] The assistant can't make that choice yet, so a post that includes TikTok stays a draft: finish TikTok in the app, or leave it out.
- One file per post, from your computer (the assistant passes its path). Carousels are made in the app or through the API.
- Platform choices beyond a YouTube title. A Pinterest board, a Reddit community and title, polls and threads are set in the app or through the API's target
options. - Connecting accounts happens in the app, because each platform needs its own sign-in page.
Updated .
Questions people ask
Is the MCP server free?
It comes with every paid plan and the 14-day free trial, at no extra cost. Posts it makes count towards your plan like any other.
Which assistants does it work with?
Any app that runs local MCP servers: Claude Desktop, Claude Code, Gemini CLI, GitHub Copilot in VS Code, Cursor, Devin Desktop (Windsurf), OpenAI Codex and LM Studio have steps above. ChatGPT and other assistants that run in a browser need the hosted version, which is planned.
Will it post without asking me?
It's told not to, and most apps ask before running a tool, but the reliable guard is the key: without post.publish it can only make drafts. Start there if you're unsure.
What does golden hour mean here?
Each platform has a starting hour when audiences tend to be most active, shifted to your audience's time zone. schedule_post uses it by default. How golden hour works.
Can it write the captions?
The assistant writes them; the server just checks each one fits its platform and sends it. You can ask for a different caption per platform.
Does Octoque train AI on my posts?
No. See the AI terms.
Keep reading
Sources
All links checked on 16 October 2026.
- Model Context Protocol specification: Tools (2025-11-25)
- Claude Code docs: Connect Claude Code to tools via MCP
- Model Context Protocol: Connect to local MCP servers (Claude Desktop)
- OpenAI Apps SDK: Connect from ChatGPT
- TikTok for Developers: Content Sharing Guidelines (updated 4 August 2026)
- Gemini CLI docs: MCP servers
- VS Code docs: Add and manage MCP servers
- Cursor docs: Model Context Protocol
- Devin Desktop docs: Cascade MCP integration
- OpenAI Codex docs: Model Context Protocol
- LM Studio docs: Use MCP servers