Skip to content

ChatGPT Subscription Tools ​

Experimental — available to signed-in production users

The hosted Go Bananas deployment enables this runner for signed-in Go Bananas web-session or OAuth users when the runner is configured. Production sets CODEX_SUBSCRIPTIONS_ENABLED=true and CODEX_SUBSCRIPTIONS_PUBLIC_ACCESS=true, so its empty tenant and user allowlists do not restrict access. Self-hosted deployments remain disabled by default until an operator configures the runner. Ordinary provider-backed MCP generation does not require this runner.

These interfaces use the ChatGPT/Codex subscription connected on the Go Bananas website and require the same Go Bananas user's OAuth identity. Compatibility must still be verified in the target MCP client.

API-key-only clients cannot use a personal subscription. The tools never fall back to configured Gemini or OpenAI provider keys.

get_subscription_status ​

Checks whether the current OAuth user has a connected owner-scoped subscription runner.

json
{
  "tool": "get_subscription_status",
  "arguments": {}
}

The response reports available, connected, status, and an optional plan type. It does not expose the runner session ID, ChatGPT email, cookies, or tokens.

Required OAuth scope: images:read.

generate_with_subscription ​

Generates exactly one PNG through the connected subscription and saves it directly to the Go Bananas gallery.

json
{
  "tool": "generate_with_subscription",
  "arguments": {
    "prompt": "A banana airship above a futuristic city",
    "aspect_ratio": "16:9"
  }
}

Supported aspect ratios: square, portrait, landscape, 1:1, 4:5, 5:4, 9:16, and 16:9.

Required OAuth scope: images:generate.

The result includes the saved image ID and public URLs, source: "chatgpt_subscription", providerApiUsed: false, and the remaining hourly allowance.

Setup for an approved account ​

  1. Sign in at gobananasai.com.
  2. Open Codex subscription and connect ChatGPT once.
  3. Authenticate the Go Bananas MCP server with user OAuth in the MCP client.
  4. Call get_subscription_status.
  5. Only when available and connected are true, call generate_with_subscription.

Released under the MIT License.