Connector reference
Radi8 MCP connector
Radi8 is a hosted remote MCP server. It holds a person's brand context, content strategy, monthly plan, drafts, schedule, and published posts, and it schedules posts to their connected channels (LinkedIn, X, Instagram, Facebook, TikTok). Radi8 is listed in Claude's connector directory and is an approved ChatGPT plugin; any client that supports remote MCP servers can connect with the details below.
Just want Radi8 in ChatGPT or Claude? The install guide gets you connected. Agents can read this page as markdown.
| Endpoint |
https://app.radi8.com/api/mcp
|
|---|---|
| Transport | Streamable HTTP, stateless |
| Sign-in | OAuth 2.1 with PKCE and dynamic client registration, or an API key |
| Scope |
mcp
|
| Tools | 36, in 9 groups (below) |
Tested clients
| Client | How it connects | |
|---|---|---|
| Claude | claude.ai, Claude Desktop, and the Claude mobile apps. Add Radi8 from the connector directory. |
Listing Install guide |
| ChatGPT | The approved Radi8 plugin. |
Listing Install guide |
| Claude Code | Uses the connectors on the claude.ai account it signs in with, so Radi8 added in Claude appears on its own. Or add it to a project: claude mcp add --transport http radi8 https://app.radi8.com/api/mcp, start a new session, then run /mcp and choose Authenticate. |
Install guide |
Any other client that supports remote MCP servers can connect with the details below.
Server
- Endpoint:
https://app.radi8.com/api/mcp - Transport: Streamable HTTP, stateless. There is no session id; every request stands on its own.
- The server sends instructions for its tools in the
initializeresult. Clients that pass them to the model get better results.
Sign-in (OAuth 2.1)
- A request without a token gets
401withWWW-Authenticate: Bearer resource_metadata="https://app.radi8.com/.well-known/oauth-protected-resource/api/mcp", scope="mcp". - Protected resource metadata:
https://app.radi8.com/.well-known/oauth-protected-resource/api/mcp. Authorization server metadata:https://app.radi8.com/.well-known/oauth-authorization-server. - Dynamic client registration (RFC 7591) at
https://app.radi8.com/api/mcp/register. Clients are public:token_endpoint_auth_methodisnone. - Authorization code grant with PKCE;
S256is required. Authorization codes expire after 10 minutes, and theredirect_urimust match the registered one exactly. - One scope:
mcp. Tokens are bound to the resourcehttps://app.radi8.com/api/mcp(RFC 8707); theresourceparameter is optional and defaults to it. - A token works until the person revokes it in Radi8.
API keys
- For a client that cannot run the browser sign-in (a script, a server-side agent, a homegrown client), create an API key in the Radi8 app: Settings, then Connect to Chat, then Your API keys. The key is shown once; it starts with
radi8_. - Send it as a bearer token:
Authorization: Bearer radi8_.... It acts as the person who created it, with the same access as the OAuth flow. - A person can hold up to 10 keys. Every key and every OAuth connection is listed under Your API keys, where it can be revoked. Revoking one does not affect the others.
- Treat a key like a password: it can schedule posts to public accounts.
Workspaces
- One token is one Radi8 user. A user has a personal workspace and may administer company workspaces.
- A new token has no active workspace. Until one is chosen, content tools return an error result that says so. Call
list_accounts, ask the person which workspace to use, then callset_active_account. The choice is saved on the token. - Only company workspaces the person administers can be selected.
Tools
Hints are the annotations each tool declares: read (readOnlyHint), destructive (destructiveHint), open-world (openWorldHint: reaches outside Radi8, to a social channel or a public URL).
Workspaces
For example: “List my Radi8 workspaces and switch to my company.”
list_accounts |
read |
get_active_account |
read |
set_active_account |
write |
Brand context and strategy
For example: “Check what Radi8 knows about my brand and ask me about anything missing.”
get_brand_context |
read |
update_brand_context |
writedestructive |
get_strategy |
read |
update_strategy |
writedestructive |
Monthly plan
For example: “What is in this month's plan that I have not posted about yet?”
get_plan |
read |
get_plan_items |
read |
update_plan |
writedestructive |
create_plan_item |
write |
edit_plan_item |
writedestructive |
delete_plan_item |
writedestructive |
create_campaign |
write |
Drafts
For example: “Draft a LinkedIn post in my voice about what we shipped this week.”
list_drafts |
read |
create_draft |
write |
edit_draft |
writedestructive |
delete_draft |
writedestructive |
Scheduling
For example: “Write a version of that for X and schedule it for next Tuesday at 9am.”
get_connected_channels |
read |
list_scheduled_posts |
read |
schedule_post |
writedestructiveopen-world |
schedule_draft |
writedestructiveopen-world |
edit_scheduled_post |
writedestructive |
unschedule_post |
writedestructive |
delete_scheduled_post |
writedestructive |
Published posts and comments
For example: “Add the article link as the first comment on my latest LinkedIn post.”
list_published_posts |
read |
get_post_comments |
readopen-world |
create_comment |
writedestructiveopen-world |
reply_to_comment |
writedestructiveopen-world |
Media
For example: “Attach the product photo from my media library.”
get_media_library |
read |
upload_image |
writeopen-world |
Brand kit
For example: “Build my brand kit from this screenshot of our homepage.”
get_brand_kit |
read |
update_brand_kit |
writedestructive |
set_brand_kit_asset |
writedestructive |
extract_brand_kit_from_image |
writedestructiveopen-world |
Saved inspiration
For example: “Show me what I saved in Discover that I could write about.”
get_discover_items |
read |
Limits
- Posts publish at their scheduled time; there is no publish-now. Scheduled times must be in the future.
- Comments and replies on LinkedIn post right away.
- Nothing already published can be edited or deleted.
- No image or video generation. Images come from a public URL (
upload_image) or the person's media library; raw image bytes are not accepted.
Errors
- Tool failures are tool results with
isError: trueand a message written for the model, not JSON-RPC errors. Pass the message to the model: it says what to do next. - A new account comes with credits to try Radi8. Once they are used up, tools that need a subscription return an
isErrorresult that links to billing in the app. - A rejected token gets
401witherror="invalid_token"orerror="insufficient_scope"inWWW-Authenticate; start the sign-in again. - Requests are rate-limited. On
429, wait and retry.
Your data
- When you use the connector, the workspace data your assistant asks for is sent to the provider of that assistant so it can answer you, the same as if you pasted it into the chat yourself. Radi8 sends only what the request needs; what the provider does with it is governed by their terms.
The privacy policy covers how Radi8 handles your information generally.
Help
Email support@radi8.com or see support. Setup for people: the install guide.