← Files SimplePost for Social MediaARCHIVED FILE
.codex-plugin/plugin.json
12.1 KB · Nov 5, 2026 · 00:16 UTC
{
"name": "app-69f882652190819192ab1c88f1218795",
"version": "3.1.0",
"description": "Schedule, publish and manage your social media posts. Save drafts, preview posts for each platform, and organize your publishing calendar across connected social accounts.",
"author": {
"name": "Creafex Lab Vladimir Haltakov",
"email": "support@simplepost.social",
"url": "https://simplepost.social"
},
"homepage": "https://simplepost.social",
"repository": "https://github.com/simple-post/core",
"license": "MIT",
"keywords": [
"social-media",
"social-posting",
"publishing",
"scheduling",
"drafts",
"content-calendar",
"mcp",
"content"
],
"skills": "./skills/",
"mcpServers": "./.mcp.json",
"interface": {
"displayName": "SimplePost for Social Media",
"shortDescription": "Schedule & publish your posts",
"longDescription": "Schedule, publish and manage your social media posts. Save drafts, preview posts for each platform, and organize your publishing calendar across connected social accounts.\n\nSchedule and publish to X (Twitter), LinkedIn, Instagram, Facebook, Threads, Bluesky, TikTok, YouTube, Pinterest, and Telegram. Supported workflows include Instagram photo carousels, TikTok and YouTube videos, X, Threads and Bluesky threads, LinkedIn updates, Facebook Page posts, Pinterest Pins with a supplied board ID, and Telegram channel announcements. Platform account and media requirements vary.\n\nUse the calendar to review upcoming posts, choose posting times, and reschedule future posts. Use the post editor to prepare shared content or different versions for each account and preview how they will look. Editor working copies autosave, and proposed writing changes stay separate until applied. Saving a draft does not publish it.\n\nConnect your social accounts in the SimplePost web app and authorize the plugin with the same login. SimplePost does not generate images, provide engagement analytics, read social inboxes or comments, or edit posts already published on social platforms.",
"developerName": "Creafex Lab Vladimir Haltakov",
"category": "Business & Operations",
"capabilities": [],
"defaultPrompt": [
"Preview these photos as an Instagram carousel.",
"Save this announcement as a draft with different versions for LinkedIn and X.",
"Show my scheduled TikTok and YouTube posts for next week."
],
"websiteURL": "https://simplepost.social",
"supportURL": "https://simplepost.social/contact",
"privacyPolicyURL": "https://simplepost.social/privacy",
"termsOfServiceURL": "https://simplepost.social/terms",
"logo": "./assets/icon.png",
"composerIcon": "./assets/icon.png"
},
"extensions": {
"com.openai": {
"onboardingSkill": "./skills/setup/SKILL.md",
"review": {
"test_cases": {
"positive": [
{
"description": "Sidebar workspace and connected destinations. Setup: dedicated reviewer account with at least one ready social destination and PLUGIN_EXTENSIONS enabled; authorize accounts:read and all posts scopes. Open the SimplePost global entrypoint if the host does not automatically render it. Expected calls: open_simplepost_workspace (view=month, timeZone=Europe/Berlin); list_accounts may also be used; get_simplepost_workspace for manual refresh.",
"prompt": "Open my SimplePost workspace and show this month in Europe/Berlin. Which connected accounts can I use?",
"tools_triggered": "open_simplepost_workspace, list_accounts, get_simplepost_workspace",
"expected_behavior": "A month calendar shows returned slots and post activity, owned account names and readiness, and a working-copy recovery list or explicit empty state. IDs, statuses, and dates agree with returned structuredContent. Opening or refreshing the workspace creates no post or editor session. The account connection link uses the saved MCP environment origin."
},
{
"description": "Persistent editor, previews, and draft save. Setup: dedicated ready X destination; a second supported test destination is needed to verify variant isolation. No publishing is requested. In the editor, type a shared message, select both test accounts, and edit only the second account variant. Save as draft, close the editor, reopen the workspace, and recover the copy. Expected calls: open_post_editor; start_post_editor_session; update_post_editor_session for autosave; validate_post_editor_session when checking; commit_post_editor_session with mode=draft and the current expectedRevision; read_post_editor_session on recovery.",
"prompt": "Open a new SimplePost editor for a draft saying \"SimplePost review draft: a small product update.\" I want to preview it and save it as a draft, without scheduling or publishing.",
"tools_triggered": "open_post_editor, start_post_editor_session, update_post_editor_session, validate_post_editor_session, commit_post_editor_session, read_post_editor_session",
"expected_behavior": "Live previews update for each selected supported destination. Autosave changes only the working copy, whose sessionId and increasing revision are returned. Editing one account variant preserves shared content and the other variant. Saving returns an owned draft post ID with draft status and no scheduledFor or platform publish result. Recovery restores content, selected accounts, variants, media/thread/options where present, and the same session ID."
},
{
"description": "Selection-aware chat and separate writing proposals. Setup: recover the working copy from case 2. Focus its text field or select the editor in the workspace, then use Ask ChatGPT. Also select an available future calendar slot and invoke its chat action. Do not press Schedule or Publish. Expected calls: read_post_editor_session with the attached sessionId; propose_post_edit with that current expectedRevision and a message patch. get_simplepost_workspace may refresh the selected slot.",
"prompt": "Shorten the draft in my selected SimplePost editor to one sentence. Show the suggestion for me to review; keep my current text until I apply it.",
"tools_triggered": "read_post_editor_session, propose_post_edit, get_simplepost_workspace",
"expected_behavior": "The suggestion is stored as proposal.patch.message with its explanation and current revision. Current editor content and saved draft remain unchanged until manual Apply. Applying changes the working copy and increments its revision through autosave, preserving other account variants. Slot chat context includes the selected local time and IANA zone without creating a schedule. Removing the selection removes its context. No commit_post_editor_session, create_post, update_scheduled_post, or discard_scheduled_post is used for the suggestion request."
},
{
"description": "Timezone preferences and explicit schedule review. Setup: use one dedicated ready X destination and the draft from case 2, with all normal posting scopes. Use a unique future time at least one day ahead that is not a daylight-saving transition. Review and confirm only this designated sample. After checking, return the sample to draft before its due time. Expected calls: update_simplepost_settings with set.timeZone=Europe/Berlin; read_post_editor_session; commit_post_editor_session only after confirmation, using the exact current expectedRevision, mode=schedule, scheduledLocal=<tomorrow YYYY-MM-DD>T14:00, timeZone=Europe/Berlin (or the equivalent correctly offset scheduledFor). inspect_posts or get_schedule to verify.",
"prompt": "Use Europe/Berlin as my SimplePost timezone. Schedule my review draft for tomorrow at 14:00 in that timezone on my dedicated X test account only. Show me the content, account, and exact time before I confirm.",
"tools_triggered": "update_simplepost_settings, read_post_editor_session, commit_post_editor_session, inspect_posts, get_schedule",
"expected_behavior": "Preferences persist and existing scheduled timestamps are unchanged. Before confirmation, the review shows the actual draft text, exact destination and local time/zone; no new scheduled action occurs. After explicit confirmation, one scheduled owned post has scheduledFor equal to that local time converted with the actual date-specific Berlin offset. Returned status and saved post agree. A stale editor revision or changed source post returns a conflict without silent overwrite. Return the sample to draft with the existing update workflow before its due time."
},
{
"description": "Legacy MCP Apps compatibility. Setup: dedicated ready X destination; use text-only content so no attachment fixture is required. This case deliberately requests standalone interfaces, leaving any active editor unchanged. Expected calls: list_accounts; show_post_preview with draft.accountIds containing the returned X test account ID and draft.message equal to the supplied text; show_schedule with view=week and timeZone=Europe/Berlin.",
"prompt": "Show a standalone SimplePost preview for my X test account with the text \"SimplePost legacy preview review.\" Then show the standalone week calendar for this week in Europe/Berlin. Do not save or publish anything.",
"tools_triggered": "list_accounts, show_post_preview, show_schedule",
"expected_behavior": "The legacy preview renders the supplied text for the returned X account and the existing calendar renders the returned week schedule. Existing resource URIs and launch behavior remain supported. No create_post, commit_post_editor_session, update_scheduled_post, or discard_scheduled_post is called, and neither saved posts nor active working copies change."
}
],
"negative": [
{
"description": "Unsupported analytics request. Explain that SimplePost cannot retrieve engagement or follower analytics; do not invent metrics or use posting, editor, or calendar tools to answer it. Expected: Explains the analytics limitation and suggests checking the social platform analytics. No SimplePost tool is invoked.",
"prompt": "Show the impressions, likes, and follower growth for my last ten LinkedIn posts."
},
{
"description": "Editing a post already published on a social platform is unsupported. Do not confuse this with editing a saved draft or a future scheduled post; do not create a replacement or delete anything. Expected: Explains that SimplePost cannot edit live platform content and directs the user to that platform. No SimplePost tool is invoked and no replacement post is created.",
"prompt": "Edit the LinkedIn post that is already live on my profile so its first sentence says \"Our launch is tomorrow.\""
},
{
"description": "Social direct messaging/inbox is unsupported, despite the social-network context. Do not treat this as a public publishing request. Expected: Explains that SimplePost cannot read comments or send direct messages. No SimplePost tool is invoked, no recipients are fabricated, and no public post is created.",
"prompt": "Send a private Instagram message to everyone who commented on my latest post."
}
]
},
"commerce": false,
"commerce_description": "The plugin does not support purchases or direct subscriptions. Hosted publishing requires an existing active SimplePost trial or paid plan; no purchase or checkout is performed through the plugin."
},
"publication": {
"release_notes": "Adds platform-specific connection links during AI onboarding. Users can authorize a chosen social platform directly after any required SimplePost sign-in, then return to their AI conversation to verify the connection and prepare a draft. Connection links check that the browser and AI use the same SimplePost account. Includes clearer posting-failure recovery and exact trial expiry dates; expired trials retain read-only access to saved posts, calendar and accounts.",
"countries": []
}
}
},
"apps": "./.app.json"
}
SHA-256: 3a87295c385c645b15d215853417d6ec44ae293befabf0403dba31486d0bd214