MCP server for QPost — lets AI agents publish video and image posts to YouTube, TikTok, Instagram.
MCP server for QPost — lets AI agents schedule and publish video/image posts to YouTube, TikTok, and Instagram through QPost's REST API.
Generate an API key from your QPost dashboard (Settings → API Keys), then pick one of the two options below.
QPost runs the same server at https://qpost.dev/mcp over Streamable HTTP:
claude mcp add --transport http qpost https://qpost.dev/mcp \
--header "x-api-key: YOUR_API_KEY"
Any MCP client that speaks Streamable HTTP can point at that URL with an
x-api-key (or Authorization: Bearer) header. The endpoint is stateless, so
there is no session to manage.
Use this if you self-host QPost or would rather run the server yourself:
claude mcp add qpost -e QPOST_API_KEY=your_key_here -- npx -y qpost-mcp
{
"mcpServers": {
"qpost": {
"command": "npx",
"args": ["-y", "qpost-mcp"],
"env": {
"QPOST_API_KEY": "your_key_here"
}
}
}
}
Set QPOST_BASE_URL too if you're self-hosting QPost (defaults to https://qpost.dev).
| Tool | Description |
|---|---|
list_connected_accounts | List connected YouTube/TikTok/Instagram accounts and their status |
create_post | Create and publish (or schedule) a post, with video or image media from a URL or local path |
list_posts | List posts, optionally filtered by status/platform |
get_post | Get a single post by ID |
update_post | Update a post's caption/schedule/timezone/status |
delete_post | Delete a post |
retry_post | Retry a failed post |
The local stdio server can read files from your machine, so create_post
accepts mediaPath as well as mediaUrl. The hosted endpoint obviously
cannot reach your disk — it takes mediaUrl/imageUrls, or mediaBase64
with an optional mediaFilename to set the MIME type.
Full request/response shapes and per-platform metadata options (YouTube category/privacy, TikTok privacy level, Instagram media type, etc.) are documented at qpost.dev/docs — this server is a thin wrapper over that same REST API.
npm install
npm run dev # runs src/index.ts directly via tsx
npm run build # compiles to dist/
MIT
Source-derived launch command. Check the maintainer’s required arguments and credentials before running:
npx -y qpost-mcpMerge this template into ~/Library/Application Support/Claude/claude_desktop_config.json. Keep existing servers. Add any arguments, credentials, and permissions required by the maintainer; this template has not been install-tested.
{
"mcpServers": {
"io-github-arslan2012-qpost-mcp": {
"command": "npx",
"args": [
"-y",
"qpost-mcp"
]
}
}
}Restart Claude Desktop completely for changes to take effect. Confirm the server appears connected in the client’s tool list, then try a read-only example from its documentation.
Claude Desktop setup referenceqpost-mcpnpmio.github.arslan2012/qpost-mcp works with any MCP-compatible client. Copy the config snippet from the Configuration section above and add it to the file shown for your client, then restart the application.
~/Library/Application Support/Claude/claude_desktop_config.jsonRestart Claude Desktop completely for changes to take effect.~/.cursor/mcp.jsonRestart Cursor for changes to take effect..vscode/mcp.jsonReload VS Code window for changes to take effect.~/.codeium/windsurf/mcp_config.jsonRestart Windsurf for changes to take effect..mcp.jsonSave at the project root, then start Claude Code in that project and review the MCP server approval prompt. Keep real credentials out of shared files.