“List my connected accounts and tell me which ones need media before I can post.”
ChatGPT checks your PostQuest accounts and their current platform requirements, then summarizes what each channel needs.
Connect ChatGPT to PostQuest, then move from an idea to platform-ready drafts and an approved schedule without leaving the conversation.
https://mcp.post-quest.com/mcpPaste this URL into ChatGPT. Sign in with OAuth. No API key.
ChatGPT custom apps with full MCP write actions are currently available to Business and Enterprise/Edu workspaces. Pro users can connect custom apps for read and fetch workflows.
Review current ChatGPT MCP requirementsFive-minute setup
You will authorize access with OAuth and select a workspace. There is no PostQuest API key to paste into your conversation.
In ChatGPT on the web, open Settings → Apps → Advanced settings and enable Developer mode for your workspace.
Return to Settings → Apps, choose Create, name the app PostQuest, paste the MCP endpoint, and let ChatGPT scan the available tools.
Continue through OAuth, sign in to PostQuest, and select the workspace ChatGPT may access.
Open the Apps menu in a new conversation, enable PostQuest, and begin with an account or draft request.
Try these prompts
These are illustrative conversations. Your assistant will show the actual tool calls and request approval when an action needs it.
“List my connected accounts and tell me which ones need media before I can post.”
ChatGPT checks your PostQuest accounts and their current platform requirements, then summarizes what each channel needs.
“Draft three launch posts for LinkedIn and X. Tailor each caption and keep everything as a draft.”
ChatGPT creates draft content with platform-specific captions. Nothing is scheduled or published.
“Validate the approved version, attach the image from this public URL, and schedule it for Tuesday at 9:00 AM Singapore time.”
ChatGPT validates the post and asks for explicit approval before applying the schedule.
19 MCP tools
The list below comes directly from the registered MCP server metadata, so names and behavior descriptions stay aligned with the live integration.
list_social_accountsRead connected account IDs, workspace timezone, publishing opt-in, and content pillars. Never exposes provider credentials.
get_platform_requirementsRead caption, media and account requirements before drafting or scheduling. Supply an account ID for live account-specific limits.
create_postCreate a draft by default. Setting scheduled_at can create a public publishing commitment, and publish_now can publish externally; use either only after explicit user approval. Timestamps require an ISO-8601 offset. Retries may create another post because this tool is not idempotent.
update_postUpdate an existing unpublished post. Omitted fields are preserved. A scheduled_at changes its public publishing commitment; publish_now publishes externally. Use either only after explicit approval. Retries can repeat a publish request, so check the post before retrying.
set_platform_captionsTailor captions per selected platform or account. Keys are platform names or platform:account_id. Other post fields are preserved.
validate_postRead-only dry-run of publish-time validation. Leaves nothing behind: no saved post, reserved quota, upload, schedule, or publication. It uses the real validation path inside a rolled-back transaction and returns structured platform, field, code, message, and blocking issues. Use existing media IDs.
schedule_postSchedule a post only after explicit user approval. This creates a future public publishing commitment. The timestamp must contain Z or an explicit timezone offset. Validates content, media and quota before scheduling; retries are safe for the same post and timestamp.
publish_postImmediately publish an existing post. Call only after the user explicitly approves immediate publication. Requires workspace agent publishing opt-in; API keys also need publish:now.
list_postsList posts in the authorized workspace with bounded pagination. Returns UTC timestamps and workspace timezone.
get_postRead one post and its account-specific captions, publication state and validation warnings.
delete_postPermanently delete a draft or scheduled post after user approval. Refuses published posts, partially published posts and posts currently publishing.
upload_mediaUpload a public HTTPS URL, or raw base64 (maximum 3 MiB decoded) only for small files you already hold as bytes. Never re-encode a conversation image as base64: in ChatGPT use upload_media_file. Saved in the media library until deleted; counts toward storage quota. Use the returned media ID in posts. No redirects or private-network URLs.
upload_media_fileChatGPT only: import an image or video from this conversation, such as one ChatGPT generated or the user attached, into the media library. Pass the file itself; never convert it to base64. Use the returned media ID in posts. Other clients should use upload_media with a public HTTPS URL.
open_media_uploaderShow an upload widget where the user picks images or videos from their device into the media library. Use this in Claude and other clients when the user wants to attach a file that has no public URL, including a file already attached to this chat: files in your sandbox cannot be passed, so ask the user to choose the file in the widget. The widget reports the new media IDs in the conversation; list_media also shows them. In clients that cannot display widgets, such as terminals, give the user the returned upload_url to open in their browser instead. Never base64-encode the file instead.
list_mediaList workspace media IDs and temporary signed preview URLs. URLs expire after five minutes; call again to refresh.
get_analytics_summarySummarize post performance for a date range: totals compared with the previous period, daily changes, results by content format and the top posts. Numbers appear about 24 hours after a post goes live and refresh daily. Some platforms report only some metrics, so a zero can mean not reported.
list_post_analyticsList lifetime metrics per published post on connected accounts, including posts made outside PostQuest. Limited to the plan history. Use sort to find the best performers.
get_post_analyticsRead one post's lifetime metrics and its day-by-day history: the cumulative totals on each day and how much each grew since the day before.
sync_analyticsQueue a refresh of post metrics from the connected platforms. Analytics already sync every 24 hours, so call this only when the user asks for fresh numbers. Allowed once every 15 minutes per workspace; results arrive within a few minutes.
ChatGPT questions
Full MCP actions that create, schedule, publish, or delete currently require ChatGPT Business or Enterprise/Edu. ChatGPT Pro supports read and fetch access for custom apps.
Only after you explicitly approve the action, and only when publish-now has been enabled for your PostQuest workspace. Draft creation remains the default.
Only data available to the PostQuest user and workspace you authorize through OAuth. The tool set is limited to the actions listed on this page.
Disconnect the PostQuest app in ChatGPT or revoke its authorization from your PostQuest account.
Also supported: Claude
Prefer Claude? Connect the same workspace through a remote custom connector.
Connect PostQuest with one MCP URL. Sign in with OAuth. No API key or copy-paste workflow required.
Works with Claude Code, Claude Desktop, Cursor, Windsurf, ChatGPT, and any MCP-compatible client.
Start 7-day free trialNo card requiredCancel anytime