Multi-platform social media post creation, scheduling, and publishing.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Creates a short-lived link where the user can upload images from their device into the Auto Poster media library. Use this when the user wants to attach an image that exists only in the chat or on their device (no public URL) and your client cannot send file contents. Give the link to the user, wait until they say the upload is done, then call autoposter_list_media (newest first) and attach the image with mediaIds in autoposter_draft_post or autoposter_schedule_post.
This tool takes no arguments.
This tool isn't marked read-only, so it may change something on the server or in an account you connected.
Creates a short-lived link where the user can upload images from their device into the Auto Poster media library. Use this when the user wants to attach an image that exists only in the chat or on their device (no public URL) and your client cannot send file contents. Give the link to the user, wait until they say the upload is done, then call autoposter_list_media (newest first) and attach the image with mediaIds in autoposter_draft_post or autoposter_schedule_post.
No arguments.
{
"type": "object",
"properties": {}
}Deletes or cancels a draft, scheduled, or pending post by ID.
| Argument | Type | Description |
|---|---|---|
| postId* | string | The post ID to delete or cancel. |
{
"type": "object",
"required": [
"postId"
],
"properties": {
"postId": {
"type": "string",
"description": "The post ID to delete or cancel."
}
}
}Creates a draft post for human review. If API key lacks direct publish, post is saved as pending_approval and notifications are sent to workspace approvers. Accepts mediaUrls (public URLs) or files (AI-generated images or uploaded files from chat up to 100MB). For large video files over 100MB, tell the user to provide a direct public file URL or use autoposter_get_media_upload_url.
| Argument | Type | Description |
|---|---|---|
| files | array | Optional files generated in chat or uploaded by user to attach to the post. |
| content* | string | Base text content of the post. |
| mediaIds | array | Optional list of existing media IDs from workspace media library (from autoposter_list_media). |
| postType | string | Optional target format where applicable: 'post' (default feed post/carousel), 'reel' (Instagram or Facebook Reel; requires video), 'story' (Instagram or Facebook 24h Story; requires image or video), or 'shorts' (YouTube Shorts; vertical video under 60s). Ignored on platforms without format variants. |
| mediaUrls | array | Optional public image or video URLs to attach (e.g. from autoposter_upload_media). |
| accountIds* | array | List of account IDs from autoposter_list_accounts. |
| platformContent | object |
Only for clients that can perform an HTTP PUT or multipart POST (not chat-only clients such as Gemini): if you cannot make that request yourself, use autoposter_create_upload_link instead. Generates a presigned S3 upload URL for direct, high-speed upload of videos or images up to 5GB without size limits or timeouts. Returns direct PUT url, POST upload fields, and public CDN URL.
| Argument | Type | Description |
|---|---|---|
| fileName* | string | Name of the file including extension (e.g. 'promo_video.mp4', 'photo.jpg'). |
| contentType* | string | MIME type of the media (e.g. 'video/mp4', 'image/jpeg', 'image/png'). |
{
"type": "object",
"required": [
"fileName",
"contentType"
],
"properties": {
"fileName": {
"type": "string",
"description": "Name of the file including extension (e.g. 'promo_video.mp4', 'photo.jpg')."
},
"contentType": {
"type": "string",
"description": "MIME type of the media (e.g. 'video/mp4', 'image/jpeg', 'image/png')."
}
}
}Retrieves a single post by ID including its state (drafts, pending_approval, queued, posted) and live link receipts.
| Argument | Type | Description |
|---|---|---|
| postId* | string | The post ID to fetch. |
{
"type": "object",
"required": [
"postId"
],
"properties": {
"postId": {
"type": "string",
"description": "The post ID to fetch."
}
}
}Checks delivery status of a post and returns live platform links/receipts once published.
| Argument | Type | Description |
|---|---|---|
| postId* | string | The post ID to query. |
{
"type": "object",
"required": [
"postId"
],
"properties": {
"postId": {
"type": "string",
"description": "The post ID to query."
}
}
}Returns platform publishing constraints including character limits, media format requirements, and guidelines.
No arguments.
{
"type": "object",
"properties": {}
}Lists all connected social media accounts (X, LinkedIn, Instagram, TikTok, YouTube, Threads, Bluesky, Pinterest, Facebook) in the current Autoposter workspace.
No arguments.
{
"type": "object",
"properties": {}
}Lists media files (images and videos) stored in the workspace media library with public CDN URLs.
| Argument | Type | Description |
|---|---|---|
| type | string | Optional filter by media type ('image' or 'video'). |
| limit | number | Maximum number of media items to return (default 20, max 50). |
{
"type": "object",
"properties": {
"type": {
"enum": [
"image",
"video"
],
"type": "string",
"description": "Optional filter by media type ('image' or 'video')."
},
"limit": {
"type": "number",
"description": "Maximum number of media items to return (default 20, max 50)."
}
}
}Lists posts in the workspace. Supports filtering by state ('drafts', 'scheduled', 'queued', 'posted', 'failed', 'pending_approval'), caption text search, and limit.
| Argument | Type | Description |
|---|---|---|
| limit | number | Maximum number of posts to return (default 20, max 50). |
| state | string | Optional filter by post state. |
| search | string | Optional keyword to search in post captions. |
{
"type": "object",
"properties": {
"limit": {
"type": "number",
"description": "Maximum number of posts to return (default 20, max 50)."
},
"state": {
"enum": [
"drafts",
"draft",
"scheduled",
"queued",
"posted",
"failed",
"pending_approval"
],
"type": "string",
"description": "Optional filter by post state."
},
"search": {
"type": "string",
"description": "Optional keyword to search in post captions."
}
}
}Approves and immediately publishes an existing draft or pending post. Requires an API key with direct publish permission.
| Argument | Type | Description |
|---|---|---|
| postId* | string | The post ID returned by autoposter_draft_post. |
{
"type": "object",
"required": [
"postId"
],
"properties": {
"postId": {
"type": "string",
"description": "The post ID returned by autoposter_draft_post."
}
}
}Schedules a post for a future date/time. Automatically converts local time using workspace/user timezone into UTC. Accepts mediaUrls (public URLs) or files (AI-generated images or uploaded files from chat up to 100MB). For large video files over 100MB, tell the user to provide a direct public file URL or use autoposter_get_media_upload_url.
| Argument | Type | Description |
|---|---|---|
| files | array | Optional files generated in chat or uploaded by user to attach to the post. |
| content* | string | Base text content of the post. |
| mediaIds | array | Optional list of existing media IDs from workspace media library (from autoposter_list_media). |
| postType | string | Optional target format where applicable: 'post' (default feed post/carousel), 'reel' (Instagram or Facebook Reel; requires video), 'story' (Instagram or Facebook 24h Story; requires image or video), or 'shorts' (YouTube Shorts; vertical video under 60s). Ignored on platforms without format variants. |
| timezone | string | Optional IANA timezone (e.g. 'America/New_York'). If omitted, defaults to workspace or user timezone. |
| mediaUrls | array | Optional public image or video URLs to attach (e.g. from autoposter_upload_media). |
| accountIds* | array |
Uploads an image or video to Auto Poster media library. Accepts files generated in ChatGPT (e.g. DALL-E images in /mnt/data/), uploaded files, or public image URLs. Direct chat download limit is 100MB. For larger videos or files (>100MB), tell the user to provide a direct public file URL or use autoposter_get_media_upload_url for direct S3 upload up to 5GB. If the image exists only in the chat or on the user's device and cannot be sent here, use autoposter_create_upload_link instead.
| Argument | Type | Description |
|---|---|---|
| url | string | Optional public image or video URL or data URI to upload into media library. |
| file | any | File object provided by ChatGPT for AI-generated images or uploaded files. |
| name | string | Optional display name or title for the media file. |
{
"type": "object",
"$defs": {
"MediaFile": {
"type": "object",
"required": [
"download_url",
"file_id"
],
"properties": {
"file_id": {
"type": "string"
},
"file_name": {
"type": "string"
},
"mime_type": {
"type": "string"
},
"download_url": {
"type": "string"
}
},
"additionalProperties": false
}
},
"properties": {
"url": {
"type": "string",
"description": "Optional public image or video URL or data URI to upload into media library."
},
"file": {
"$ref": "#/$defs/MediaFile",
"description": "File object provided by ChatGPT for AI-generated images or uploaded files."
},
"name": {
"type": "string",
"description": "Optional display name or title for the media file."
}
}
}Return the profile represented by this request's authenticated credentials. The opaque id is unique within this app and remains unchanged across token refresh, reconnection, and display-metadata changes.
No arguments.
{
"type": "object",
"properties": {},
"additionalProperties": false
}| Optional platform-specific content overrides (e.g. twitter, linkedin). |
{
"type": "object",
"$defs": {
"MediaFile": {
"type": "object",
"required": [
"download_url",
"file_id"
],
"properties": {
"file_id": {
"type": "string"
},
"file_name": {
"type": "string"
},
"mime_type": {
"type": "string"
},
"download_url": {
"type": "string"
}
},
"additionalProperties": false
}
},
"required": [
"accountIds",
"content"
],
"properties": {
"files": {
"type": "array",
"items": {
"$ref": "#/$defs/MediaFile"
},
"description": "Optional files generated in chat or uploaded by user to attach to the post."
},
"content": {
"type": "string",
"description": "Base text content of the post."
},
"mediaIds": {
"type": "array",
"items": {
"type": "string"
},
"description": "Optional list of existing media IDs from workspace media library (from autoposter_list_media)."
},
"postType": {
"enum": [
"post",
"reel",
"story",
"shorts"
],
"type": "string",
"description": "Optional target format where applicable: 'post' (default feed post/carousel), 'reel' (Instagram or Facebook Reel; requires video), 'story' (Instagram or Facebook 24h Story; requires image or video), or 'shorts' (YouTube Shorts; vertical video under 60s). Ignored on platforms without format variants."
},
"mediaUrls": {
"type": "array",
"items": {
"type": "string"
},
"description": "Optional public image or video URLs to attach (e.g. from autoposter_upload_media)."
},
"accountIds": {
"type": "array",
"items": {
"type": "string"
},
"description": "List of account IDs from autoposter_list_accounts."
},
"platformContent": {
"type": "object",
"description": "Optional platform-specific content overrides (e.g. twitter, linkedin)."
}
}
}| List of account IDs from autoposter_list_accounts. |
| scheduledAt* | string | Scheduled ISO timestamp or local datetime string, e.g. '2026-10-05T14:00:00'. |
| platformContent | object | Optional platform-specific content overrides (e.g. twitter, linkedin). |
{
"type": "object",
"$defs": {
"MediaFile": {
"type": "object",
"required": [
"download_url",
"file_id"
],
"properties": {
"file_id": {
"type": "string"
},
"file_name": {
"type": "string"
},
"mime_type": {
"type": "string"
},
"download_url": {
"type": "string"
}
},
"additionalProperties": false
}
},
"required": [
"accountIds",
"content",
"scheduledAt"
],
"properties": {
"files": {
"type": "array",
"items": {
"$ref": "#/$defs/MediaFile"
},
"description": "Optional files generated in chat or uploaded by user to attach to the post."
},
"content": {
"type": "string",
"description": "Base text content of the post."
},
"mediaIds": {
"type": "array",
"items": {
"type": "string"
},
"description": "Optional list of existing media IDs from workspace media library (from autoposter_list_media)."
},
"postType": {
"enum": [
"post",
"reel",
"story",
"shorts"
],
"type": "string",
"description": "Optional target format where applicable: 'post' (default feed post/carousel), 'reel' (Instagram or Facebook Reel; requires video), 'story' (Instagram or Facebook 24h Story; requires image or video), or 'shorts' (YouTube Shorts; vertical video under 60s). Ignored on platforms without format variants."
},
"timezone": {
"type": "string",
"description": "Optional IANA timezone (e.g. 'America/New_York'). If omitted, defaults to workspace or user timezone."
},
"mediaUrls": {
"type": "array",
"items": {
"type": "string"
},
"description": "Optional public image or video URLs to attach (e.g. from autoposter_upload_media)."
},
"accountIds": {
"type": "array",
"items": {
"type": "string"
},
"description": "List of account IDs from autoposter_list_accounts."
},
"scheduledAt": {
"type": "string",
"description": "Scheduled ISO timestamp or local datetime string, e.g. '2026-10-05T14:00:00'."
},
"platformContent": {
"type": "object",
"description": "Optional platform-specific content overrides (e.g. twitter, linkedin)."
}
}
}