PostQuest
Let your AI agent draft, validate, schedule and publish social media posts to Instagram, TikTok, X, LinkedIn, YouTube and 5 more networks, then read post analytics. Hosted remote server with OAuth; everything starts as a draft until you approve.
Hosted MCP Server
npx add-mcp 'https://mcp.post-quest.com/mcp'Installs into Claude Code, Codex, Cursor and more
Documentation
Connect PostQuest in under a minute
One endpoint for every assistant. Sign in with OAuth when your assistant asks, with no API key in the chat.
Claude
Custom connector
- 1 In Claude or Claude Desktop, open Settings → Connectors and choose Add custom connector.
- 2 Name it PostQuest and paste the endpoint below.
- 3 Choose Connect, sign in to PostQuest, and pick the workspace Claude may use.
https://mcp.post-quest.com/mcp
Remote connectors work on every Claude plan; Free allows one.
ChatGPT
Developer mode app
- 1 In ChatGPT on the web, open Settings → Apps → Advanced settings and turn on Developer mode.
- 2 Back in Apps, choose Create, name it PostQuest, and paste the endpoint below.
- 3 Sign in to PostQuest, pick a workspace, then enable PostQuest from the Apps menu in a chat.
https://mcp.post-quest.com/mcp
Full write workflows require ChatGPT Business or Enterprise/Edu.
Claude Code
One terminal command
- 1 Run this command in your terminal.
- 2 Start Claude Code, run /mcp, choose postquest, and finish the sign-in in your browser.
claude mcp add --transport http postquest https://mcp.post-quest.com/mcp
- 1 In PostQuest, open Settings → API & MCP and create an API key for one workspace.
- 2 Add this server to your client’s MCP config and replace YOUR_API_KEY with the key.
{
"mcpServers": {
"postquest": {
"url": "https://mcp.post-quest.com/mcp/direct",
"headers": {
"Authorization": "Bearer YOUR_API_KEY"
}
}
}
}
Works with Cursor and other clients that send a Bearer header. Field names can differ slightly between clients.
Choose your assistant
One PostQuest workflow. Two ways to work.
Each guide covers the current setup path, plan requirements, practical prompts, and every tool available to the assistant.
ChatGPT MCP integration
Draft, validate, and schedule social posts through a custom ChatGPT app.
Full write workflows require ChatGPT Business or Enterprise/Edu.
Claude MCP integration
Plan and schedule social content through a Claude remote connector.
Remote connectors work on every Claude plan; Free allows one.
How it works
Connect once. Keep the conversation moving.
- 01
Add PostQuest
Paste the PostQuest MCP endpoint into your assistant’s app or connector settings. - 02
Authorize a workspace
Complete OAuth in your browser and choose the PostQuest workspace the assistant may access. - 03
Start with a draft
Ask the assistant to inspect your accounts, create tailored drafts, and validate them before you approve scheduling.
19 live tools
Everything your assistant can ask PostQuest to do.
This catalog is generated from the same tool metadata registered by the live MCP server.
Discover your workspace
List connected accounts
list_social_accounts
Returns connected account IDs, workspace timezone, publishing opt-in and content pillars. Provider credentials are not included.
Get platform requirements
get_platform_requirements
Returns caption, media and account requirements for each platform. With an account ID, returns the live limits for that account.
Draft and refine
Create a post
create_post
Creates a post, saved as a draft by default. Setting scheduled_at schedules public publication; publish_now publishes to the connected networks immediately. Timestamps require an ISO-8601 offset. Not idempotent: each call creates a new post.
Update a post
update_post
Updates an existing unpublished post; omitted fields are preserved. Changing scheduled_at changes when it publishes publicly; publish_now publishes it immediately. Not idempotent when publish_now is set.
Set platform captions
set_platform_captions
Tailor captions per selected platform or account. Keys are platform names or platform:account_id. Other post fields are preserved.
Validate a proposed post
validate_post
Read-only dry run of publish-time validation. Leaves nothing behind: no saved post, reserved quota, upload, schedule or publication. Runs the real validation path inside a rolled-back transaction and returns structured platform, field, code, message and blocking issues. Takes existing media IDs.
Schedule and publish
Schedule a post
schedule_post
Schedules a post for future public publication. The timestamp must contain Z or an explicit timezone offset. Validates content, media and quota before scheduling. Idempotent for the same post and timestamp.
Publish a post now
publish_post
Immediately publishes an existing post to its connected networks. Requires the workspace agent publishing opt-in; API keys also need the publish:now ability.
Review and manage
List posts
list_posts
List posts in the authorized workspace with bounded pagination. Returns UTC timestamps and workspace timezone.
Get a post
get_post
Read one post and its account-specific captions, publication state and validation warnings.
Delete an unpublished post
delete_post
Permanently deletes a draft or scheduled post. Published posts, partially published posts and posts currently publishing cannot be deleted.
Manage media
Upload media
upload_media
Imports media into the media library from a public HTTPS URL, or from base64 data up to 3 MiB decoded. Returns a media ID for use in posts. Media counts toward the storage quota until deleted. Redirects and private-network URLs are rejected.
Upload conversation file
upload_media_file
Imports an image or video attached to or generated in a ChatGPT conversation into the media library, using the file reference ChatGPT supplies. Returns a media ID for use in posts.
Open media uploader
open_media_uploader
Shows an upload widget where the user picks images or videos from their device into the media library, for files without a public URL. The widget reports the new media IDs in the conversation. The result also includes an upload_url that opens the same uploader in a browser, for clients that cannot display widgets.
List media
list_media
Lists workspace media IDs with temporary signed preview URLs that expire after five minutes.
Measure results
Get analytics summary
get_analytics_summary
Summarize 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 analytics
list_post_analytics
Lists lifetime metrics per published post on connected accounts, including posts made outside PostQuest. Limited to the plan history. Sortable by metric.
Get post analytics
get_post_analytics
Read 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 analytics
sync_analytics
Queues a refresh of post metrics from the connected platforms. Analytics also sync automatically every 24 hours. Limited to once every 15 minutes per workspace; results arrive within a few minutes.
Common questions
Before you connect
The assistant gets a focused set of social publishing tools, not unrestricted access to your account.
What is the PostQuest MCP server?
It is a secure bridge that lets supported AI assistants use PostQuest tools to inspect connected accounts, create drafts, validate posts, manage media, and schedule approved content.
Which AI assistants can connect?
PostQuest currently documents remote MCP setup for ChatGPT and Claude. Both connect to the same PostQuest endpoint and use OAuth to authorize a workspace.
Can an AI publish without my approval?
No. Drafts are the default. Scheduling, publishing immediately, and deleting require explicit approval, and publish-now must also be enabled by the workspace.
Do I need to paste an API key into the chat?
No. PostQuest uses OAuth, so you authorize access in a browser and choose the workspace the assistant may use.