Model Context Protocol

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.

Server address

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.

Read10

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
Create7

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
Subjects5

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
Configure15

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.