Integration details
Description
Radi8 holds your brand context, content strategy and monthly plan, and keeps what you publish aligned with them. Connected to ChatGPT, it lets you read that context in the conversation, draft a post against it, check the draft against what you have already published on that channel, attach an image from your media library, and put the post on the calendar for LinkedIn, X, Instagram, Facebook or TikTok. Posts publish at their scheduled time, so there is always a window to change your mind. Requires a Radi8 account.
- Integration type
- Plugin
- Verification status
- Not applicable
- Platform
- ChatGPT
- Primary Subcategory
- Pending
- Secondary Subcategories
- None listed
- Brand
- Radi8
- Access
- Account required
- First tracked
- 2026-09-30
- Tool count
- 36
- Geography
- US
The Primary Subcategory used for this profile’s headline score.
Other Subcategories where the Integration is listed.
ChatGPT Plugin discovery is coming soon
ChatGPT can surface a Plugin when it matches a user's request.Your Plugin Discovery Score measures how often yours appears.
No spam. Unsubscribe any time.
What discovery looks like

Get alerts for Radi8
Get updates when Radi8’s Discoverability Score or category rank changes.
Competitive lineup
36 tools agents can invoke
Upload an image from a public URL into the currently-selected workspace's Radi8 media library. Radi8 fetches the image server-side, so the URL must be publicly reachable; raw image bytes are not accepted. Returns a media_asset_id that can be passed to schedule_post or create_draft. Requires an active account. Custom quote-card backgrounds must be square (1024×1024 recommended); non-square images are auto-cropped to square.
upload_image
Turn a reference image into a complete brand design system and save it to the active brand kit. The user uploads a screenshot/poster/website/brand reference; this reads it with vision and extracts colors (sampled hex), typography (closest loadable Google Fonts), motifs, a composition archetype (editorial/refined/sticker/vintage), and style dials — then writes them into the brand kit so Radi8's design tooling renders on-brand. The image must already be in the workspace media library: upload it with upload_image (or via the app), then pass its media_asset_id. Logos are not auto-extracted — attach a clean logo separately with set_brand_kit_asset.
extract_brand_kit_from_image
Post a top-level comment on one of the currently-selected workspace's published LinkedIn posts (personal profile or Company Page). Identify the post by post_id (from list_published_posts) or its LinkedIn post_urn. Common use: 'link in first comment' — post the external link as a comment so it doesn't suppress the post's reach. To reply to an existing comment instead, use reply_to_comment.
create_comment
Create a campaign in the content plan for a given month in the currently-selected workspace. A campaign groups related items around one objective. Requires an active account and an existing plan for the month — if none exists, tell the user to create one in the Plan workspace first. Tag it with the growth engine it primarily drives, or omit `engine` for a general awareness campaign. Returns campaign_id — pass it to create_plan_item to add the campaign's items.
create_campaign
Create a draft post in the currently-selected workspace. Drafts are saved but not published — they sit in the user's Post workspace until they're edited or scheduled. Requires an active account. Use this for work in progress, or when there is no publish time yet; schedule_draft moves it to the queue later. VIDEO: videos cannot be added over MCP — only images. A video must already be in the workspace media library (added at app.radi8.com); get_media_library returns its media_asset_id for media_asset_ids. A single video asset on an Instagram draft publishes as a Reel when scheduled; on TikTok it publishes as a standard video. For image drafts (Instagram single image or carousel, TikTok photo mode), upload_image and get_media_library both work normally. Images are not generated over MCP — the user creates them at app.radi8.com and they appear in get_media_library. TIKTOK PRIVACY NOTE: TikTok drafts created via MCP publish as PRIVATE (only visible to the user themselves) when later scheduled, because TikTok's Content Posting API audit requires the user to pick a privacy level through an in-app picker. A public TikTok post has to be composed at app.radi8.com, where those privacy options are surfaced.
create_draft
Add a new item to the content plan for a given month in the currently-selected workspace. Requires an active account and an existing plan for the month — if none exists, tell the user to create one in the Plan workspace first. If the user just wants a placeholder ('record podcast with Jed'), pass only `title`. Use `item_type` to capture non-post items like 'video' or 'newsletter'. Pass `campaign_id` (from create_campaign) to attach it to a campaign; otherwise it lands in an ad-hoc bucket. Set `execution` to 'publish' for items Radi8 posts, or 'diy' for actions the user does themselves and marks done.
create_plan_item
Delete a draft post in the currently-selected workspace. Only posts with status 'draft' can be deleted via this tool — for scheduled posts use delete_scheduled_post. This is irreversible — the record cannot be recovered afterwards.
delete_draft
Delete a plan item by id in the currently-selected workspace. Also removes any generation executions for this item (cascade). This is irreversible — the record cannot be recovered afterwards.
delete_plan_item
Delete a scheduled post in the currently-selected workspace. Only posts with status 'scheduled' can be deleted — drafts and already-published posts are rejected. This is irreversible — the record cannot be recovered afterwards.
delete_scheduled_post
Edit a draft post in the currently-selected workspace. Only posts with status 'draft' are editable via this tool — for scheduled posts use edit_scheduled_post. Pass any combination of content, media_asset_ids, and first_comment. Providing media_asset_ids replaces the full attachment list (pass [] to clear). To convert this draft into a scheduled post, call schedule_draft instead.
edit_draft
Update fields on an existing plan item in the currently-selected workspace. Only provided fields are changed; others stay as-is. The brief is MERGED, not replaced — only the brief keys you send change; every other key already on the brief is preserved. Use status='done' after the post is scheduled so the item drops off outstanding work, or status='skipped' if it's no longer happening.
edit_plan_item
Edit a scheduled post in the currently-selected workspace. Only posts with status 'scheduled' can be edited — drafts and already-published posts are rejected. Pass any combination of content, scheduled_at, media_asset_ids, or first_comment. Providing media_asset_ids replaces the full attachment list (pass [] to clear).
edit_scheduled_post
Return which Radi8 workspace is currently active for this session — Personal, a specific Company, or null if the user has not chosen yet. Call this at the start of a new conversation before any content tool so you know whether to prompt the user to pick an account.
get_active_account
Fetch the active Radi8 brand context for the currently-selected workspace — includes brand voice, content topics, target audience, personas, and tone guidelines. Requires an active account. Returns a readiness block alongside the context, reporting whether the stored context is complete enough to generate against.
get_brand_context
Fetch the active Radi8 brand kit for the currently-selected workspace — the visual identity counterpart to brand context. Includes the color palette (background/ink/accent/muted), typography roles (headline/headline_accent/eyebrow/body with family/weight/style), recurring visual motifs, layout rules, and references to attached logo/wordmark assets. Requires an active account. Call this whenever the user asks for image, design, social card, or visual work so the response stays on-brand visually.
get_brand_kit
Fetch the content strategy for the currently-selected workspace — includes content pillars, preferred channels, posting schedule, business goals, and primary CTA. Requires an active account. Use this to align post content with the workspace's strategic direction.
get_strategy
Fetch the monthly content plan object for the currently-selected workspace — the plan container (title, summary, monthly brief, status, date range). Use get_plan_items for the plan's items. Defaults to the current month.
get_plan
Fetch all social media channels connected in the currently-selected workspace. Requires an active account. Only channels in the `connected` list can be scheduled to. A channel in the `needs_reconnect` list has an access token that has expired and cannot be auto-refreshed, so scheduling to it will fail; `setup_url` is where the workspace owner reconnects it.
get_connected_channels
List draft (not-yet-scheduled) posts in the currently-selected workspace, most recently updated first. Use this to show the user what is in progress, or to find a post_id for edit_draft, delete_draft, or schedule_draft.
list_drafts
Fetch the media library for the currently-selected workspace — uploaded and AI-generated images and videos with preview URLs. Requires an active account. Use this when the user wants to browse existing media instead of uploading new. Each asset returns a media_type ('image' or 'video'); videos also return duration_seconds when known. Videos can only be uploaded via the Radi8 web app (app.radi8.com) — MCP can reference them by media_asset_id once they exist, but cannot create them.
get_media_library
Fetch content plan items for a given month from the currently-selected workspace. Returns all items in the plan (including done and skipped) with their briefs, target channels, scheduled dates, and status. Requires an active account. Use this to align new posts with the existing plan and to see what has already been executed.
get_plan_items
List posts already published to social platforms in the currently-selected workspace, most recently published first. Published posts are immutable. Call this BEFORE drafting on a given channel so you can avoid duplicating angles, hooks, CTAs, or Discover items the user has already posted there. Optional platform filter narrows the check to one channel.
list_published_posts
Fetch recently-curated content from the Discover feed in the active workspace. Personal scope returns the user's personal Discover feed; company scope returns the company's Discover feed (never mixed). Discover items are articles, posts, and links the user or company has saved as inspiration. Use these to ground new drafts in topics already on the user's radar — quote them, riff on them, or counter them, and check that you're not posting the same item twice on the same channel. Excludes archived items.
get_discover_items
List scheduled (not-yet-published) posts in the currently-selected workspace, most recent scheduled time first. Use this to show the user what is queued, to find a post_id for edit_scheduled_post or delete_scheduled_post, or to avoid scheduling collisions.
list_scheduled_posts
List the Radi8 workspaces the user can act in: their Personal workspace and any Company workspaces they ADMINISTER. Company access through MCP is admin-only — companies where the user is just a member are intentionally not listed (they manage those from the Radi8 web app). Returns each workspace's id, display name and kind. A workspace must be selected with set_active_account before any content tool will run.
list_accounts
Read comments on one of the currently-selected workspace's published LinkedIn posts. Only works for a connected LinkedIn Company Page (org workspace) — LinkedIn restricts reading comments on personal posts. Identify the post by post_id (from list_published_posts) or its LinkedIn post_urn. Use this to see what people are saying so you can reply with create_comment / reply_to_comment.
get_post_comments
Reply to an existing LinkedIn comment (a nested reply) on one of the currently-selected workspace's posts. Provide the comment_urn (from get_post_comments) and your reply text. Works for both personal and Company Page connections.
reply_to_comment
Promote an existing draft to scheduled in the currently-selected workspace. The post will be published automatically at scheduled_at via the workspace's connected channel. Requires status='draft'. Scheduling to a channel that is not connected will fail. The change is reversible with unschedule_post up until the post publishes.
schedule_draft
Create a scheduled post in the currently-selected workspace. Published automatically at the specified time via the workspace's connected channel. Requires an active account. Scheduling to a channel that is not connected will fail. VIDEO: videos cannot be added over MCP — only images. A video must already be in the workspace media library (added at app.radi8.com); get_media_library returns its media_asset_id for media_asset_ids. A single video asset on an Instagram post publishes as a Reel; on TikTok it publishes as a standard video. For image posts (Instagram single image or carousel, TikTok photo mode), upload_image and get_media_library both work normally. Images are not generated over MCP — the user creates them at app.radi8.com and they appear in get_media_library. TIKTOK PRIVACY NOTE: TikTok posts scheduled via MCP publish as PRIVATE (only visible to the user themselves) because TikTok's Content Posting API audit requires the user to pick a privacy level through an in-app picker. A TikTok post that needs to be public, or visible to followers, has to be composed at app.radi8.com, where those privacy options are surfaced.
schedule_post
Attach a logo, wordmark, symbol, or pattern asset to the active brand kit. The asset must already exist in the workspace media library — first call upload_image to get a media_asset_id, then call this tool with that id plus the role. Replaces any existing asset at the same (role, variant) slot. Variants let you store multiple versions of the same role (e.g., a 'light' wordmark for dark backgrounds and a 'dark' wordmark for light backgrounds).
set_brand_kit_asset
Set which Radi8 workspace to use for this session — "personal" or a specific company (pass company_id from list_accounts). Company access is admin-only: this will fail for a company where the user is only a member (use scope="personal" for them). The choice persists across tool calls until the user asks to switch. Call this after the user confirms their choice. If the user says "switch accounts" later, call this again with the new selection.
set_active_account
Convert a scheduled post back to a draft in the currently-selected workspace. Clears scheduled_at and sets status='draft'. Requires status='scheduled' — published posts cannot be reverted. Use this when the user wants to keep the content but pull it off the publish queue. To re-queue it later, call schedule_draft.
unschedule_post
Update the active brand context for the currently-selected workspace. Provide only the fields you want to change — they are merged into the existing context and saved as a new version (the prior version is archived). Readiness is system-managed and cannot be set directly. Personas, if provided, replace the full personas array. Array fields (topics, expertise, pain_points, value_props, proof_points, cta_preferences, avoid_topics, avoid_claims, approved_claims, content_goals, recurring_patterns) replace wholesale — pass the full intended list, or `[]` to clear. `cta_preferences` and `cta_library` are one field under two names — write either and both stay in sync. `value_proposition` (a one- or two-sentence prose pitch you could read aloud to a prospect) and `value_props` (a list of discrete benefit statements) are INDEPENDENT fields — editing one never changes the other, so don't repeat the pitch as a value_props item. channel_notes is a map keyed by channel name (linkedin, x, instagram, tiktok, facebook, or any custom string the user wants — youtube, substack, podcast, etc.) — values are freeform per-channel guidance that the post generation flow will apply when targeting that channel; channel_notes merges by key (pass empty string to clear a channel).
update_brand_context
Update the active brand kit for the currently-selected workspace. Provide only the fields you want to change — top-level keys are shallow-merged into the existing kit and saved as a new version (the prior version is archived; logo/wordmark assets carry forward automatically). Inside `colors` and `typography`, pass only the roles you are changing; pass null for a role to clear it. Pass full arrays for `motifs` and `layout_rules` — they replace wholesale when provided. Set `archetype` to change the composition look (how headlines are treated) — useful when generated images look off-brand (e.g. an unwanted heavy outline / jittered 'sticker' treatment on a clean brand: set archetype to 'editorial'). Logo and wordmark assets are managed separately via set_brand_kit_asset (attach an already-uploaded media_asset_id from upload_image).
update_brand_kit
Update the content strategy for the currently-selected workspace. Provide only the fields you want to change — they are shallow-merged into the existing strategy (including schedule sub-fields). Array fields (content_pillars, authority_topics, preferred_channels, offers, cta_preferences, objections, substantiation_links, proof_points, do_not_apply) replace wholesale — pass the full intended list, or `[]` to clear. This is a fast-save: the CMO AI review is NOT re-run. The user can re-run the review in Radi8 when ready. channel_strategy is a map keyed by channel name (linkedin/x/instagram/tiktok/facebook plus any custom name the user wants — youtube, substack, podcast, etc.); pass partial updates and they merge by key (empty string clears a channel). do_not_apply is the user's explicit decline list — the CMO will stop re-suggesting items in it. The adoption and advocacy engine facets are nested objects (the growth engines beyond acquisition) — pass only the sub-fields you're changing and they deep-merge into the existing facet, like schedule.
update_strategy
Update the monthly content plan container for the currently-selected workspace. Only title, monthly_brief, and summary are editable — plan status and generated snapshots are system-managed. Use delete_plan_item or create_plan_item to change the items inside the plan.
update_plan
How do I improve a ChatGPT Plugin's discoverability?
The levers are the listing surface agents actually read: names, descriptions, keywords, tool metadata, and registry health. Which lever matters depends on where discovery breaks, which is what continuous measurement shows.
Where is this profile measured?
This profile uses the geography attached to the latest public registry snapshot: US. Locale tags are intentionally omitted.