← CaptinoCONTENT HISTORY

Update to Captino

Snapshot Nov 9, 2026 · 18:08 UTC · version 0.4.1

Collection source: downloaded plugin package.

WHAT CHANGED

First saved snapshot

No earlier snapshot is available to establish a change.

Save Captino and check future changes in Following.

Up to 3 plugins free · no card required.

Compare saved observations

Download comparison JSON
Full technical diff · 0 changed fields
Full snapshot data
{
  "description": "Set up or troubleshoot the Captino MCP connection in Codex or ChatGPT - sign in to Captino with OAuth, choose which permissions to grant, re-authenticate after a revoke or expiry, check which tools the connection has, and fix 401, 403, \"Not logged in\", missing tools or connection errors. Use when Captino tools are unavailable or failing, or when the user asks how to connect Codex or ChatGPT to Captino.",
  "included_files": [
    {
      "relative_path": "agents/openai.yaml",
      "size_in_bytes": 437
    }
  ],
  "name": "captino-setup",
  "skill_md_contents": "---\nname: captino-setup\ndescription: Set up or troubleshoot the Captino MCP connection in Codex or ChatGPT - sign in to Captino with OAuth, choose which permissions to grant, re-authenticate after a revoke or expiry, check which tools the connection has, and fix 401, 403, \"Not logged in\", missing tools or connection errors. Use when Captino tools are unavailable or failing, or when the user asks how to connect Codex or ChatGPT to Captino.\n---\n\n# Captino setup\n\nThe Captino MCP server is `https://api.captino.io/mcp` (streamable HTTP). It\nuses OAuth: the client finds the Captino sign-in from the server, registers\nitself and stores and refreshes the tokens, so there is nothing to configure\nin Codex or in ChatGPT. The plugin's `mcp.json` declares only the server's type\nand URL.\n\nThe connection acts as the Captino user who approved it, in that user's\naccount. Access tokens last an hour and refresh on their own. The refresh token\nlasts 30 days and is renewed each time it is used, so only a connection left\nunused for 30 days has to sign in again.\n\n## Permissions\n\nWhen connecting, the user signs in on captino.io and sees a consent screen\nlisting these resources. They tick the ones the app may use. Write access\nimplies read.\n\n| Resource | Access levels | OAuth scopes | Unlocks |\n| :-- | :-- | :-- | :-- |\n| Funnel | read, write | `funnel:read`, `funnel:write` | `list_funnels`, `get_funnel`, `list_funnel_steps`, `get_page_builder_reference`, `get_page_project`, `validate_page_project`; write adds `create_funnel`, `update_funnel`, `set_funnel_active`, `create_funnel_step`, `set_funnel_step_visibility`, `set_funnel_step_form`, `set_form_step_completion`, `delete_funnel`, `save_page_project`, `publish_page` |\n| Contact | read, write | `contact:read`, `contact:write` | `list_contacts`, `list_leads`, `get_contact`, `get_contact_activity`, `list_contact_opt_ins`, `get_contact_pipeline_stats`, `get_contact_options`; write adds `update_contact`, `create_contact_meeting` |\n| Performance | read | `performance:read` | `list_funnel_performance`, `get_funnel_performance`, `compare_funnel_performance_with_previous_period`, `get_funnel_step_performance`, `get_funnel_conversion_stats`, `get_form_step_performance`, `compare_funnels` |\n| Subscription | read | `subscription:read` | `get_subscription`, `get_subscription_usage` |\n| Form | read, write | `form:read`, `form:write` | `list_forms`, `get_form`, `list_form_responses`, `get_form_performance`; write adds `create_form`, `update_form`, `publish_form`, `delete_form` |\n\nThe server only lists the tools the granted permissions allow, so a missing\ntool almost always means a box that was not ticked.\n\nRecommended grants for the skills in this plugin: Funnel write, Contact write,\nForm write, Performance read, Subscription read. Funnel read is enough if the\nuser will not build pages or change funnels; Form is only needed for forms.\n\n## Connect from Codex\n\nThe plugin bundles the server as `captino`. It works in Codex CLI and in Codex\nin the ChatGPT desktop app.\n\n1. Install Captino from `/plugins`. Codex asks to authenticate the Captino\n   server during install; continue.\n2. If that was skipped, or to sign in again later, run:\n\n   ```bash\n   codex mcp login captino\n   ```\n\n   A browser opens on captino.io. Sign in, tick the permissions and approve.\n   On a machine without a browser, add `--no-browser`: Codex prints the URL\n   and asks for the callback URL. In the desktop app, choose **Authenticate**\n   when the server asks for sign-in.\n3. Start a new session. `/mcp` lists the `captino` server and its tools, and\n   `codex mcp list` shows `OAuth` in the Auth column.\n\nNo config flag is needed for OAuth in current Codex versions. Tokens go to the\nOS credential store, or a file under `~/.codex` when none is available.\n`codex mcp logout captino` deletes them.\n\nWithout the plugin (for example in the IDE extension, which does not load\nplugins), add the server by hand and sign in:\n\n```bash\ncodex mcp add captino --url https://api.captino.io/mcp\ncodex mcp login captino\n```\n\nDo not do both: the plugin's server and a hand-added one with the same URL\nlist the tools twice.\n\n## Connect from ChatGPT\n\n1. Open **Plugins** in ChatGPT and install Captino.\n2. When ChatGPT asks to connect Captino, continue. It opens captino.io; sign\n   in, tick the permissions and approve.\n3. Start a new chat and use Captino.\n\nWithout the plugin, the server can be added directly: **Plugins** → **+** →\n**Add custom MCP server**, URL `https://api.captino.io/mcp`, authentication\nOAuth. The account or workspace settings decide whether custom MCP servers are\nallowed.\n\n## Change permissions or disconnect\n\nConnected apps are listed in Captino under **Settings → MCP**\n(`/app/mcp-settings`), where the user can revoke one. Permissions cannot be\nedited on an existing connection. To grant more or fewer, connect again and\ntick different boxes:\n\n- Codex: `codex mcp logout captino`, then `codex mcp login captino`.\n- ChatGPT: disconnect Captino in **Plugins**, then connect it again.\n\nRevoke the old entry under Connected apps if it is still listed.\n\n## Troubleshooting\n\nMatch the symptom, then do the fix. Do not retry a failing call against a\ndifferent URL or with a token from somewhere else.\n\n| Symptom | Cause | Fix |\n| :-- | :-- | :-- |\n| No `captino` tools at all | Plugin not installed or enabled, no new session since installing, or the plugin's server turned off by `enabled = false` under `[plugins.\"captino\".mcp_servers.captino]` in `~/.codex/config.toml` | Install from the marketplace, check `/plugins`, remove that block, start a new session |\n| `401`, or `Not logged in` in `codex mcp list` | Not signed in yet, the app was revoked under Connected apps, or the refresh token expired after 30 days unused | Codex: `codex mcp login captino`. ChatGPT: connect Captino again |\n| `401` that persists after signing in, `Bearer token` in `codex mcp list` | A `bearer_token_env_var` or `Authorization` header set for `captino` in `~/.codex/config.toml` takes precedence over OAuth | Remove it from `[mcp_servers.captino]`, restart Codex, run `codex mcp login captino` |\n| Tools listed twice | The plugin's server plus a hand-added `[mcp_servers.captino]` | Remove the hand-added block |\n| Token refresh fails and signing in again is refused | The Captino user who approved the app, or the account, is deactivated | Ask a Captino admin to reactivate it, or connect as an active user |\n| Some tools missing, others work | That resource was not ticked on the consent screen | Connect again and tick it (see Change permissions) |\n| `403` on a tool call | Same as above, for a permission the call needs | Connect again and grant it |\n| Connection refused or timeout | Network, VPN or proxy blocks `api.captino.io`, or the API is down | `curl -sI https://api.captino.io/mcp` (a 401 is the healthy answer without a sign-in); fix the network |\n| `404 ... not found` on a specific id | The GUID belongs to another account or was deleted | Look the item up again with `list_funnels` or `list_contacts` |\n| Contacts missing from lists, `hiddenContacts > 0` | Subscription contact limit reached | Not an auth issue. Upgrade the plan in Captino |\n\n## Verify\n\nAfter connecting, call `get_subscription` (or `list_funnels` if Subscription\nis not granted). A successful answer confirms the sign-in, the account and the\npermissions in one go. Report which resources were granted based on which\ntools are listed.\n"
}

SHA-256 of public snapshot: abef949e78bbbb379ef1b7dec3dddcca4cf95f65503dae018c0fe6656673ea4b