Hosted broker is live

Use Webex from Codex without running a local auth broker.

Install the Webex plugin, sign in once in your browser, and Codex can work with your Webex messages, spaces, meetings, recordings, summaries, and transcripts through native REST-backed MCP tools.

No localhost broker Users install the plugin and sign in. They do not run port 8787.
Per-user tokens Access and refresh tokens are stored under the user’s Codex home.
Least-privilege scopes The broker requests the messaging and meetings scopes this plugin needs.
CINT hosted webex-codex-auth.uscentral1-0.cint.vcra.co

Install In Codex

Use the marketplace entry for normal installs. The bundled MCP config already points at this hosted broker.

  1. 1

    Add the marketplace

    Run this once from Terminal.

    codex plugin marketplace add padmanak_cisco/webex-messaging-codex-plugin --ref main
    codex plugin marketplace upgrade
  2. 2

    Install Webex Messaging & Meetings

    Open Codex, type /plugins, choose Webex Codex Plugins, then install Webex Messaging & Meetings.

  3. 3

    Sign in with Webex

    Start a fresh thread and tag @webex-messaging. Codex opens your browser for Webex sign-in, listens briefly on a localhost callback port, then stores your tokens locally.

Download Option

Use the hosted ZIP bundle if the marketplace path is not available from a machine. The bundle is served by this broker, so users do not need GitHub access just to download it.

Expected Result

Codex should discover Webex tools such as webex-search-messages, webex-list-meetings, webex-list-recordings, and webex-list-transcripts.

Authentication Model

The plugin uses the same split as Nex: local callback listener, hosted broker, Webex OAuth tokens.

The local MCP proxy generates a random state, starts a temporary callback listener on localhost:51236, 53648, or 57233, and opens this broker with that state and callback URL. The broker redirects to Webex, exchanges the returned code with the Webex client secret, and returns normal Webex tokens to the proxy.

The default broker URL is baked into the plugin. Override WEBEX_MCP_AUTH_URL only when testing another broker.

# Local development override only
launchctl setenv WEBEX_MCP_AUTH_URL "https://your-auth-broker.example.com"
Webex OAuth broker flow Codex opens the hosted broker, Webex completes sign-in, localhost receives a code, and the broker exchanges it for tokens. Codex proxy local MCP Hosted broker keeps secret Webex OAuth user sign-in Local tokens per user The client secret never ships in the plugin. Refreshes go back through the broker’s /refresh endpoint.

What The Plugin Can Do

Tools are native REST-backed MCP calls against Webex APIs using the signed-in user’s token.

M

Messages and Threads

Search, read, create, edit, delete, and reply to Webex messages. Download or upload message files.

S

Spaces and Memberships

Find spaces, create or update rooms, and manage memberships when the signed-in user has access.

T

Meetings and Transcripts

List meetings, create schedules, inspect meeting status, fetch recordings, summaries, and transcripts.

Broker Scopes

The hosted broker requests scopes that exactly match the Webex integration configuration.

spark:all spark:mcp spark:webhooks_read spark:webhooks_write meeting:schedules_read meeting:schedules_write meeting:participants_read meeting:summaries_read meeting:recordings_read meeting:transcripts_read

Support Checks

Start here when a user can install the plugin but cannot connect or discover tools.

Broker Health

The hosted broker should return {"ok":true}.

curl https://webex-codex-auth.uscentral1-0.cint.vcra.co/health

Plugin Cache

After updating the marketplace, restart Codex or open a fresh thread so the current tool schema reloads.

codex plugin marketplace upgrade

OAuth Callback

The Webex integration must allow these redirect URIs.

http://localhost:51236/callback
http://localhost:53648/callback
http://localhost:57233/callback

Sign Out

Use the auth logout tool or remove the token file when testing a fresh Webex login.

~/.codex/webex-messaging/oauth-tokens.json