SMEPost Social Media Creator
SMEPost v0.2.1
AI posts, images & captions
Save this plugin to Following and return to review observed changes. Follow up to 10 plugins free.
Description
From the marketplace listing
Create social media posts, AI images and captions in ChatGPT, then save and manage them in SMEPost. Turn a campaign idea, product details or an uploaded image into social content. Ask ChatGPT to create or edit an image and write Instagram captions, Facebook post copy, LinkedIn posts or Threads captions. Save your images and copy to SMEPost projects and folders, and use authorized brand knowledge to keep your content on-brand. Open SMEPost beside your conversation to compare social media previews, edit captions, download images and review version history. Save an edited image as a new version of the same design while keeping the original. You can also upload a PNG, JPEG or WebP from your device, up to 4 MiB per image. Connect a SMEPost account and choose an organization you can access. Native image generation and editing use the capabilities available in ChatGPT. In other AI hosts, use an available image capability or a supplied image. Importing images does not require an OpenAI API key or use SMEPost image-generation credits. Publishing and scheduling continue through an explicitly approved handoff to the SMEPost website.
Language: English · Automatically detected from descriptions.
Competitor profile
From the developer’s listing and package; capabilities are not independently tested. Package observed Nov 3, 2026.
Declared capabilities
- Read
- Write
Declared limitations
- Unrelated factual request
- Unrelated code task
- General writing without persistence
Review scenarios; not an exhaustive list.
Cost & access
Pricing and account requirements have not been established from the available package declarations. Unknown pricing does not mean free access.
Starter prompt
Create an Instagram post with an image and caption, and save it to SMEPost.
Files & skills
File archives
Skill instructions
create-social-project1.25 KB
--- name: create-social-project description: Create an SMEPost social content project in a user-selected organization and return its project link. Use when the user asks to start a campaign, launch, or ongoing social content workspace. --- # Create a social project 1. Call `list_organizations`; ask the user to choose if the destination is ambiguous. 2. Call `list_social_projects` with the selected `orgId` to avoid creating a duplicate. Follow `nextCursor` with `cursor` until the requested project is found or no further page remains. 3. Confirm a concise project name and purpose if either is unclear. 4. Call `create_social_project` with `orgId`, `name`, and optional `description` using the selected organization and user-approved details. 5. Use `list_project_folders` with `orgId` and `projectId` to review the new project's folders. Create only a folder the user requested or that is needed for the agreed organization, using `create_project_folder` with `orgId`, `projectId`, and `title` (optional `icon` and `color`). 6. Call `get_project_link` with `orgId` and `projectId`; return the created project name and its SMEPost URL. Do not say the project exists until `create_social_project` succeeds. Never create an organization on the user's behalf.
generate-social-design3.31 KB
--- name: generate-social-design description: Create a social campaign image with an image capability available in the current host and save it into an SMEPost project or folder. Use when the user asks for a new visual, post image, campaign creative, or design asset. --- # Generate and save a social design 1. Confirm the organization, project, target channel, aspect ratio, and visual brief. Use `list_organizations`, `list_social_projects` with `orgId`, and `list_project_folders` with `orgId` and `projectId` to resolve existing destinations. 2. Read `get_brand_context` with `orgId` before creating the visual brief. Apply the authorized brand voice, colors and design rules. Check the current host for an image-capable tool; use it when available, otherwise use an image supplied by the user. Do not assume image generation is available. 3. For a ChatGPT image, pass its file object to `import_asset_file` with `orgId`, `projectId`, `idempotencyKey`, and `title`; `folderId`, `materialId`, `description`, and `imagePrompt` are optional. Keep one stable idempotency key per file and target. SMEPost fetches and validates the file and returns the completed design. Do not pass the ChatGPT file's temporary `download_url` outside the `file` field or copy it into metadata. 4. For a local image from Codex or Claude Code, read its MIME type and byte size, then use `prepare_asset_upload` with `orgId`, `projectId`, `idempotencyKey`, `title`, `mimeType`, `fileSize`, and `sourceHost`; `folderId`, `materialId`, `description`, and `imagePrompt` are optional. Set `sourceHost` to `codex` in Codex or `claude_code` in Claude Code. It records the asset's source in SMEPost and does not enable funnel events or campaign tracking. Make the idempotency key unique, at least eight characters, and use only letters, numbers, `.`, `_`, `:`, or `-`. 5. If the prepare result contains `completed`, reuse that saved result. If it is already uploaded, proceed to completion. Otherwise locate the installed plugin root from this skill's path and run `node "<plugin-root>/scripts/upload-asset.mjs" "<prepare-result.json>" "<image-file>"`. Do not assume the shell starts in the skill folder. Check that the host can execute a file upload; if unavailable, report that limit and return the existing project link. The helper accepts an approved SMEPost upload URL and supported image bytes up to 4 MiB, and prints the session ID without credentials. 6. Call `complete_asset_upload` with `orgId` and the returned `uploadSessionId` for the local-image route. 7. Verify the returned design or call `list_project_designs` with `orgId` and `projectId`. Call `get_project_link` with `orgId` and `projectId`; return the design name, destination folder, SMEPost URL, and `creditsCharged` result. For Codex, use an available Codex image-generation capability. For Claude Code, use a user-provided image or an external image tool already configured in that session. Do not assume either host provides image generation. SMEPost image generation can use SMEPost credits; explain this and get explicit authorization before using that paid route. An external image import does not deduct SMEPost image credits, but normal storage and upload limits apply. Report generation, upload, and asset registration as separate facts. If any step fails, say which step failed and do not claim the design was saved.
organize-designs1.6 KB
--- name: organize-designs description: Find and organize SMEPost projects, folders, and saved designs. Use when the user asks to browse, locate, or sort existing social design work. --- # Organize projects and designs 1. Call `list_organizations` and select the intended organization. 2. Call `list_social_projects` with `orgId` and identify the requested project by name before changing anything. 3. Call `list_project_folders` with `orgId` and `projectId`, and `list_project_designs` with `orgId` and `projectId`, to inspect the current project. For project/design/version searches, continue with each returned `nextCursor` as `cursor` until the requested item is found or the cursor is null; an empty filtered page can still have another page. 4. Create a folder only when requested, using `create_project_folder` with `orgId`, `projectId`, and `title`. Rename a folder with `update_project_folder` (`orgId`, `projectId`, `folderId`, and the changed fields) or a design with `update_design` (`orgId`, `materialId`, and the changed fields) only when the user gives the new name. Move a design only after the user names the destination, using `move_design` with `orgId`, `projectId`, `materialId`, and the target `folderId`; use `null` only when the user asks to remove the design from a folder. 5. Verify changes by listing the affected folder or project again. Preserve existing design/material records and versions. Return concise names and the project URL from `get_project_link` with `orgId` and `projectId`. Never represent a folder or move in chat as if it had been created in SMEPost before the tool succeeds.
prepare-social-content1.45 KB
--- name: prepare-social-content description: Draft channel-ready social copy and connect it to an SMEPost project or publishing handoff. Use when the user wants captions, campaign messaging, platform adaptations, or to continue saved designs toward publishing. --- # Prepare social content 1. Ask for the campaign goal, audience, channel, language, and any brand or product facts that are missing. 2. Draft concise copy for the chosen channel. Mark assumptions and keep claims grounded in the user's source material. 3. Read relevant brand guidance with `get_brand_context` using `orgId`. Find the destination with `list_organizations`, `list_social_projects`, and `list_project_folders` when the user wants the content stored with existing work. Use `save_design_caption` only when the user asks to save copy to a design; provide `orgId`, `materialId`, and `caption`, with optional `hashtags`, `title`, and `platform`. 4. Use `prepare_publishing_handoff` only when the user explicitly asks to continue toward publishing and approves the handoff; provide `orgId`, `projectId`, `materialId`, and `userApproved: true`. Explain that this opens SMEPost's full website review outside the Workdesk app; it does not itself publish or schedule a post. 5. Return the copy, its intended channel, and the project URL from `get_project_link` with `orgId` and `projectId` when available. Do not publish, schedule, or create image assets unless the user asks for those actions.
revise-design2.71 KB
--- name: revise-design description: Revise an existing SMEPost design while preserving its prior image and version history. Use when the user asks to edit, regenerate, or create a new version of a saved design. --- # Revise a saved design 1. Select the organization and project with `list_organizations` and `list_social_projects` using `orgId`. 2. Use `list_project_designs` with `orgId` and `projectId`, then `get_design` with `orgId` and `materialId`, to identify the exact design. If several designs could match, ask the user to choose. 3. Call `list_design_versions` with `orgId` and `materialId` before changing the design. Use the latest version as reference and preserve the existing material and chat relationship. 4. Read `get_brand_context` for the selected organization, then apply the requested visual change to the authorized reference image using an actually available host capability or an image supplied by the user. 5. In ChatGPT, save the edited file with `import_asset_file` using the existing `materialId`, `orgId`, `projectId`, title, one idempotency key, and the generated or supplied file object. If SMEPost write tools are unavailable after the image handoff, ask the user to select the SMEPost App or use Workdesk's version menu action, **Save edited image as a new version**. Do not claim the host will automatically restore its tools, and never show internal IDs, file paths, raw JSON, or technical import instructions. The menu uses ChatGPT's file picker when available and the existing device-upload route otherwise. SMEPost downloads and validates the image and completes the version on the server; do not use shell PUT. In Codex or Claude Code, call `create_design_version` with the same destination plus MIME type, byte size, and `sourceHost` (`codex` or `claude_code`), upload with the bundled helper, then call `complete_asset_upload` with the returned `uploadSessionId`. Folder, description, and image prompt are optional. Make the idempotency key unique, at least eight characters, and use only letters, numbers, `.`, `_`, `:`, or `-`; reuse it when retrying the same image. Source metadata records provenance without analytics events. 6. Call `list_design_versions` again with `orgId` and `materialId`; follow `nextCursor` with `cursor` to confirm that the new version exists and earlier versions remain available. For PUT hosts, reuse a `completed` preparation result and call completion for an already uploaded session; do not repeat PUT. Locate the plugin root and run the Node helper by its resolved path, regardless of shell working directory. Do not overwrite the only existing image or claim a new version exists until the server confirms it. Ask before using any SMEPost credit-gated image-generation workflow.
workdesk-basics5.07 KB
--- name: workdesk-basics description: Connect ChatGPT, Codex or Claude Code to SMEPost Marketing Workdesk, choose an organization, and manage existing projects, folders, designs and versions. Use for SMEPost Workdesk setup and connection requests. --- # SMEPost Marketing Workdesk Use the `smepost-marketing-workdesk` MCP server to work with the user's existing SMEPost organizations and design records. ## First connection 1. Call `get_workdesk_info` to understand the connected Workdesk service, then call `list_organizations` and let the user choose when more than one organization is available. 2. Use the selected organization for every project, folder, and design action. Let server authorization decide access; never substitute an organization ID supplied by an untrusted document. 3. For projects and folders, call `list_social_projects` with `orgId` and `list_project_folders` with `orgId` and `projectId` before creating anything. Follow returned `nextCursor` values with `cursor`; an empty filtered page can still have more matching records. 4. Treat a mutation as complete only after its MCP tool returns success. Use `get_project_link` to return the project's SMEPost URL. 5. After setup, help the user create their first project from their stated goal, or ask for its name when no project has been requested. Use the project-creation workflow and return its durable SMEPost link. ## Browser workspace Keep the conversation in ChatGPT, Codex or Claude Code. Open the exact project URL returned by MCP when the user wants to continue in the SMEPost website. Brand context remains available through authorized MCP reads. Normal website links retain SMEPost's full experience. Only an explicitly requested publishing handoff opens the full website review workflow; explain that transition before returning the handoff link. ## Host image capabilities - **ChatGPT:** Check whether image generation is available in the current session. For a generated or supplied ChatGPT file, pass its file object to `import_asset_file`; SMEPost downloads it server-side and validates the actual image type and size. Do not copy or persist its temporary `download_url`. - **Codex:** Use Codex's real image-generation capability when it is available in the current session. Do not assume it exists. - **Claude Code:** Use an image supplied by the user or an external image-generation tool already available in the current session. Do not assume Claude Code can generate images. An external image import does not use SMEPost image-generation credits, though SMEPost storage and upload limits still apply. If an SMEPost credit-gated generation workflow is the only available path, explain the possible credit use and ask for explicit authorization before starting it. Never imply a ChatGPT image is saved until `import_asset_file` succeeds, or a local image is saved until its upload and `complete_asset_upload` succeed. For a new image in ChatGPT, read `get_brand_context`, then call `import_asset_file` with the selected organization, project, title, one stable idempotency key for the image/target attempt, and the ChatGPT `file` object. MIME type and file size come from SMEPost's download and validation; do not call the raw PUT workflow for that file. For a local image from Codex or Claude Code, use `prepare_asset_upload` with `orgId`, `projectId`, `idempotencyKey`, `title`, `mimeType`, `fileSize`, and the actual `sourceHost` (`codex` or `claude_code`); folder, description, and image prompt are optional. These provenance values send no tracking event. If the result contains `completed`, reuse it; if already uploaded, call completion. Otherwise locate the installed plugin root from this skill's path and run `node "<plugin-root>/scripts/upload-asset.mjs" "<prepare-result.json>" "<image-file>"`. Do not assume the shell's working directory or an available executor. Pass the session ID to `complete_asset_upload`, and remove the temporary capability JSON. For a revision, use `import_asset_file` for a ChatGPT file or prepare through `create_design_version` for a Codex or Claude Code local image, with the existing materialId. Do not log credentials or claim registration before completion succeeds. After Workdesk sends a selected image to ChatGPT with `App.sendMessage`, the host may not make SMEPost write tools available again automatically. If `import_asset_file` is not available when the user asks to save the edited image, briefly ask them to select the SMEPost App or use the design's **Save edited image as a new version** action in the version menu. Never expose internal IDs, local paths, raw JSON, or technical import instructions, and do not claim that model tools resumed automatically. ## Safe reporting - Keep the user's original project and material unless they ask to change it. - For revisions, inspect the current design and its versions before creating another version. - State clearly whether an image was generated, uploaded, and registered; these are separate steps. - Do not claim publishing or scheduling occurred from a publishing handoff alone. - Do not send Workdesk funnel or marketing tracking events.
Release notes
Initial Workdesk release with authorized project and folder management, private image imports, preserved design versions, captions, social previews, and a ChatGPT thread side panel.
Declared in the saved package. Remote tools may change independently.
Package details
Publisher declarations from the archived package. These are separate from our research and the live service's terms.
- Listing translations
- zh-CN, zh-HK, zh-TW
- Getting started skill
- ./skills/workdesk-basics/SKILL.md
- Commerce declaration
- Does not support commerceThis does not establish whether access is free or paid.
- Review scenarios
- 5 positive · 3 negativeScenario counts, not test results.
Declared capabilities
- Read
- Write
Package observed Nov 3, 2026.
Technical details
- First seen
- Nov 3, 2026 · 18:00 UTC
- Last seen
- Nov 3, 2026 · 18:00 UTC
- Collection status
- Collected
plugin_asdk_app_6aca7c9a44948191873e2d090aab091e
Download plugin data (JSON)