Postoria MCP Server
OfficialThe Postoria MCP Server allows AI clients to manage Postoria social media publishing workflows through the following capabilities:
Workspace & Account Management
List all workspaces available to your API key (
list_workspaces)List social accounts within a workspace (
list_social_accounts)List publishing queues within a workspace (
list_queues)
Media Handling
Create signed upload URLs for raw media bytes (
create_media_upload) and complete the upload afterward (complete_media_upload)Upload local files directly from the MCP server machine (
upload_media_from_file, stdio mode only)Import media from a publicly accessible URL (
import_media_from_url)Check processing status and details of a media item (
get_media)
Post Publishing
Publish a post immediately (
publish_post_now)Schedule a post for a specific UTC date/time (
schedule_post)Add a post to a publishing queue (
add_post_to_queue)Retrieve post status and publishing results (
get_post)Delete or cancel a post (
delete_post)
Post Options (for publish/schedule/queue actions)
Set caption, content type (text, image, video, carousel, link), and link URL
Attach media via media IDs
Add a first comment with optional delay
Configure repost/recycle settings
Apply platform-specific settings for TikTok (duet, stitch, visibility, comments, branded content, etc.) and YouTube (title, tags, category, visibility, made-for-kids, language, etc.)
The server supports local stdio transport for desktop/IDE clients and streamable HTTP for hosted clients, authenticating via Postoria Public API keys.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Postoria MCP Server Publish a post to my LinkedIn account now."
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Postoria MCP Server
Postoria MCP Server connects MCP-compatible AI clients to Postoria.
Use it to list workspaces, find social accounts and queues, upload or import media, publish posts, schedule posts, add posts to queues, check post status, and delete posts.
Package
npx -y @postoria/mcp-serverRelated MCP server: postiz-mcp
Features
Local
stdiotransport for desktop and IDE MCP clientsStreamable HTTP transport for hosted MCP clients
Works with Postoria Public API keys
Supports Postoria workspaces, social accounts, queues, media, and posts
MCP Registry metadata in
server.json
Supported tools
Tool | Description |
| List available Postoria workspaces |
| List social accounts in a workspace |
| List queues in a workspace |
| Create a signed media upload URL |
| Complete a media upload after raw bytes are uploaded |
| Upload a local file from stdio clients |
| Import media from a public URL |
| Get media status and details |
| Publish a post immediately |
| Schedule a post for a specific time |
| Add a post to a Postoria queue |
| List posts in a workspace with filters and pagination |
| Get post status and details |
| Delete a post created through the Public API |
upload_media_from_file is available only in local stdio mode. It is not exposed through the hosted Streamable HTTP endpoint.
Requirements
Node.js 20+
A Postoria Public API key for local stdio usage
A Postoria Public API key or OAuth access token for hosted Streamable HTTP usage
Local stdio usage
Add this to your MCP client configuration:
{
"mcpServers": {
"postoria": {
"command": "npx",
"args": ["-y", "@postoria/mcp-server"],
"env": {
"POSTORIA_API_KEY": "pst_live_your_api_key_here"
}
}
}
}Hosted Streamable HTTP usage
Hosted endpoint:
https://mcp.postoria.io/mcpSend an Authorization header on every hosted MCP request. Postoria Public API keys are forwarded
to the Public API directly:
Authorization: Bearer pst_live_your_api_key_hereOAuth access tokens accepted by the hosted endpoint are exchanged server-side before calling the Postoria Public API.
OAuth-capable clients discover the authorization server from the protected resource metadata:
https://mcp.postoria.io/.well-known/oauth-protected-resource/mcpMedia upload options
Use import_media_from_url when the media is already available through a public URL.
Use create_media_upload when the client will upload raw file bytes to the returned signed upload URL. After the raw bytes are uploaded with PUT, call complete_media_upload.
Use upload_media_from_file in local stdio mode when the media file exists on the same machine where the MCP server is running.
Run from source
npm install
npm run buildRun in local stdio mode:
POSTORIA_API_KEY=pst_live_your_api_key_here npm run dev:stdioRun in local HTTP mode:
npm run dev:httpHTTP mode requires the MCP client to send Authorization: Bearer <token> on every /mcp request.
POSTORIA_API_KEY is used by local stdio mode only.
Local HTTP endpoint:
http://localhost:3000/mcpHealth check:
http://localhost:3000/healthMCP Registry
server.json includes distribution metadata for:
remote Streamable HTTP endpoint:
https://mcp.postoria.io/mcplocal npm stdio package:
@postoria/mcp-server
Security notes
The MCP server does not store Postoria API keys.
Local stdio mode reads
POSTORIA_API_KEYfrom the environment.Hosted HTTP mode requires
Authorization: Bearer <token>on every MCP request.Hosted HTTP mode exchanges OAuth access tokens server-side and does not store refresh tokens.
POSTORIA_API_KEYis used by local stdio mode only.delete_postis destructive and should only be called after user confirmation.
Development
npm install
npm run typecheck
npm run build
npm run format:checkAvailable Tools
14 toolsadd_post_to_queueB
Create a Postoria post and add it to a publishing queue.
Inputs: queue_id (required), workspace_id (required), social_account_ids (required), repost, +8 more.
complete_media_uploadB
Complete a media upload after the raw file bytes have been uploaded to the signed upload URL.
Inputs: media_id (required), workspace_id (required).
create_media_uploadA
Create a media upload slot and signed upload URL. This tool does not upload file bytes; upload raw bytes to the returned URL with PUT, then call complete_media_upload.
Inputs: name (required), content_type (required), workspace_id (required).
delete_postA
Delete/cancel a Postoria post. This is destructive and should only be called after user confirmation.
Inputs: post_id (required), workspace_id (required).
get_mediaA
Get the processing status and details for a Postoria media item.
Inputs: media_id (required), workspace_id (required).
get_postA
Get status and publishing results for a Postoria post.
Inputs: post_id (required), workspace_id (required).
import_media_from_urlB
Import media into Postoria from a public URL.
Inputs: url (required), workspace_id (required).
list_postsB
List posts in a Postoria workspace, optionally filtered by accounts, queue, status, networks, UTC date range, and cursor pagination.
Inputs: workspace_id (required), limit, cursor, status, +5 more.
list_queuesA
List publishing queues in a Postoria workspace. Returns queue IDs that should be used with add_post_to_queue.
Inputs: workspace_id (required).
list_social_accountsA
List social accounts in a Postoria workspace. Returns account IDs that should be used when publishing, scheduling, or queueing posts.
Inputs: workspace_id (required).
list_workspacesA
List Postoria workspaces available to the API key. Returns workspace IDs that should be used in follow-up Postoria tools.
Inputs: no named parameters.
publish_post_nowB
Create and publish a Postoria post immediately.
Inputs: workspace_id (required), social_account_ids (required), repost, tiktok, +7 more.
schedule_postB
Create a Postoria post scheduled for a specific UTC date-time.
Inputs: workspace_id (required), scheduled_time (required), social_account_ids (required), repost, +8 more.
upload_media_from_fileA
Upload a local file from the machine running this MCP server. Local stdio mode only.
Inputs: file_path (required), workspace_id (required), filename, content_type.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 14 tools
Each tool maps to a distinct resource/action: workspaces, social accounts, queues, media, and posts are cleanly separated. The three media intake paths (local file, URL, signed-URL slot) are differentiated by their descriptions, so an agent should be able to select correctly.
Tools consistently follow a snake_case verb_noun pattern (get_, list_, create_, delete_, publish_, schedule_, add_, upload_, import_, complete_). Minor variations like publish_post_now and add_post_to_queue are still predictable and fit the overall convention.
14 tools is well within the ideal 3-15 range and covers all major workflows: discovery, media ingestion, post creation, retrieval, and deletion. No tool feels redundant, and the count matches the server's domain.
The core post lifecycle is covered: create (now/scheduled/queued), read (get/list), and delete, plus media upload and workspace/account/queue discovery. Obvious gaps are an update/edit endpoint for posts and media listing/deletion, but these are not fatal to common workflows.
Maintenance
Related MCP Connectors
Create, schedule, and publish social posts through the hosted SocialSpool MCP connector.
Create, schedule, and publish social posts, manage accounts, and read analytics as MCP tools.
Publish, schedule, and manage social media posts across major platforms via the Postproxy API.
PostHero MCP server — schedule and publish social media posts from any MCP-compatible AI tool
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceEnables interaction with the Postiz social media management platform through MCP tools. Supports creating and managing posts, retrieving integrations, and accessing account information through multiple transport protocols.2-
- AlicenseAqualityCmaintenanceEnables interaction with Postiz for social media scheduling, content management, and analytics through MCP-compatible clients, with write and delete operations gated by environment variables.2038 npm2MIT
- AlicenseAqualityCmaintenanceMCP server for the Post for Me API, enabling publishing, scheduling, editing, deleting, and analyzing social media posts across 9 platforms from any MCP client.27278 npm1MIT
- AlicenseAqualityBmaintenanceEnables agents and scripts to drive a social publishing account through remote or local MCP tools: drafting, scheduling, approving and publishing posts, running durable background jobs with file attachments, and reading or editing Brand Memory, assets, and standing agents. Hosts can connect over OAuth with no API key, or run the stdio variant with a key for local disk tools.651MIT