Everything PlanMedia does,
as tools your assistant can call
One address, an OAuth sign-in in your browser, and thirty-seven tools appear inside the assistant you already work in. No API key, no client to register, no glue code.
https://app.planmedia.ai/mcp
{
"mcpServers": {
"planmedia": {
"type": "http",
"url": "https://app.planmedia.ai/mcp"
}
}
}One address, and the client works the rest out. There is no API key to paste: your assistant registers itself and opens a browser for you to sign in.
Where it runs
Every line below was checked against that vendor's own current documentation. Note the wrapper key: it is not the same in all of them, and the wrong one fails without an error.
- Claude Code
claude mcp add --transport http planmedia https://app.planmedia.ai/mcpThen /mcp in a session and Authenticate. - Claude
Customize → Connectors → Add custom connectorWeb, desktop and mobile share one connection. Free accounts hold one custom connector. - Codex CLI
codex mcp add planmedia --url https://app.planmedia.ai/mcpThen codex mcp login planmedia. - ChatGPT desktop
Settings → MCP servers → Add server → Streamable HTTPShared with the Codex CLI and IDE extension. On the web it is Developer mode, in beta, on a paid workspace. - Cursor
~/.cursor/mcp.jsonSame block, without the type line. Needs a paid Cursor plan. - VS Code
.vscode/mcp.jsonGitHub Copilot agent mode. Here the wrapper key is servers, not mcpServers. - Zed
Settings → AI → MCP Servers → Add Remote ServerZed calls the key context_servers. - Cline
MCP Servers → Configure MCP ServersIts type is streamableHttp, camelCase. - goose
goose configure → Add Extension → Remote ExtensionStreamable HTTP.
Thirty-seven tools
Everything the app does, an assistant can do. Approvals are the exception, and deliberately so: a post still has to be approved by a person, so an assistant cannot sign off its own work.
Your brands, each one's brand DNA, the month's calendar, a post in full, the media library and the credit meter.
- list_clients
- get_brand
- get_brand_setup
- list_posts
- get_post
- list_elements
- get_element
- list_media
- get_agent_prompts
- get_usage
Draft a post in the brand's own voice, generate an image anchored to real photographs, plan a film scene by scene, then render it.
- create_post
- update_post
- generate_image
- generate_element_image
- create_storyboard
- render_video
- check_job
The @elements a brand is made of: real suites, dishes, places and people whose photographs anchor every image generated.
- create_element
- create_brand_element
- add_element_images
- update_element
- delete_element
Build a brand from its own website, then set its identity, voice, hard rules, languages, publishing rhythm and the agent team itself.
- create_brand
- setup_brand_from_website
- check_brand_setup
- set_brand_details
- set_brand_identity
- set_brand_voice
- set_brand_rules
- set_brand_languages
- set_content_strategy
- create_content_pillars
- update_content_pillar
- delete_content_pillar
- set_agent_prompt
- set_agent_models
- delete_custom_agent
What does not work yet
- ChatGPT supports MCP on the web only. There is no way to add or use a custom server from the iOS or Android apps.
- ChatGPT deep research and company knowledge are not compatible. Those surfaces require a server that implements OpenAI's read-only search and fetch tools, and PlanMedia exposes domain tools instead.
- JetBrains AI Assistant cannot sign in. It can add a remote server, but its MCP client has no way to complete an OAuth authorization, so it reports the sign-in as an error.
We will connect it with you on the call and leave you a working setup.