
Webex MCP
io.github.yuryev89Published by GitHub account yuryev89v0.3.0Updated Nov 6, 2026
Cisco Webex MCP server for messages, spaces, teams, people, webhooks and attachments.
Overview
Local MCP server that connects an AI assistant to Cisco Webex Messaging to manage spaces, messages, memberships, teams, people, webhooks and attachments.
- What you can do
- List, search, create, update and delete spaces, and read space meeting info
- Read, search, send, update and delete messages, including direct rooms, thread replies and attachment actions
- List, add, update and remove space and team memberships; list, create, update and delete teams
- Look up people by email, name or ID
- List, create, update and delete webhooks
- Inspect, download, save and view received attachments: images inline, text paged, ZIP/JAR entry listings, files saved to local disk
- When to use it
- Useful when you want an assistant to work inside Webex: summarizing or searching a space's messages, drafting and posting replies, managing space membership and teams, or pulling attachments from messages for review.
- Requirements
- Runs locally over stdio via npm package @yuryev89/webex-mcp with Node.js 18 or newer and npx. Needs either a Webex bot access token (WEBEX_ACCESS_TOKEN or the --token option) or a Webex Integration with WEBEX_CLIENT_ID and WEBEX_CLIENT_SECRET plus a one-time browser login. Network access to Webex is required; the bot must be a member of a space to read or post there.
Installation
In SourceWeft
- Open Webex MCP in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Other MCP clients
Follow the launch instructions in the repository.
README
webex-mcp
Maintainers: see Publishing a release for GitHub Releases and npm setup.
[npm version] [npm downloads] [license]
MCP server for Cisco Webex Messaging — connect AI assistants to Webex spaces, messages, and people.
Minimal MCP server that exposes Webex messaging tools over stdio. Works with Cursor, Claude Desktop, Codex, Claude Code, OpenCode, and other MCP clients.
Features
- Full core Webex Messaging API coverage: spaces, messages, memberships, people, teams, webhooks, attachment actions, and file downloads
- Received attachments for agents: images inline, text paged inline, ZIP/JAR listings, and saving any file to local disk
- Search spaces and messages by keyword (client-side scan)
- Bearer token authentication via
webex-nodeSDK with REST fallback for select endpoints - OAuth 2.0 Integration login with automatic token refresh
Requirements
- Node.js >= 18
- Webex Bot access token or Webex Integration (OAuth) — developer.webex.com
Quick start
Option A — Bot token
Option B — OAuth Integration
Cursor configuration
Bot token
OAuth Integration
Run npx -y @yuryev89/webex-mcp@latest login once before starting Cursor (with WEBEX_CLIENT_ID and WEBEX_CLIENT_SECRET set).
Codex configuration
Add one of the following configurations to ~/.codex/config.toml (merge it with any existing configuration).
Bot token
OAuth Integration
Complete Option B — OAuth Integration first, then use:
Alternatively, keep credentials in your shell environment and replace the [mcp_servers.webex.env] table with env_vars = ["WEBEX_ACCESS_TOKEN"] inside [mcp_servers.webex] (or ["WEBEX_CLIENT_ID", "WEBEX_CLIENT_SECRET"] for OAuth). Start Codex from that shell.
Run codex mcp list to verify registration, then use /mcp in Codex to inspect the active server.
Reference: Codex MCP documentation.
Claude Code configuration
The following commands register Webex for your user account across projects. Choose one authentication mode.
Bot token
OAuth Integration
Complete Option B — OAuth Integration first, then register:
Run claude mcp list or claude mcp get webex to check the connection. Inside Claude Code, use /mcp to inspect status and tools. To switch modes, remove the existing entry with claude mcp remove --scope user webex, then register it again.
Reference: Claude Code MCP documentation.
OpenCode configuration
Merge one of these examples into opencode.json in your project, or ~/.config/opencode/opencode.json for all projects.
Bot token
Set WEBEX_ACCESS_TOKEN in your environment before launching OpenCode; {env:...} reads that variable.
OAuth Integration
Complete Option B — OAuth Integration first, then use:
Keep WEBEX_CLIENT_ID and WEBEX_CLIENT_SECRET exported when launching OpenCode. Run opencode mcp list to check the server.
References: OpenCode MCP documentation and configuration.
Client setup notes
- Each client starts the server as a local stdio process; no separate server terminal or HTTP URL is needed.
- OAuth login is handled by
npx -y @yuryev89/webex-mcp@latest login. Run it under the same OS user and token-store configuration as the client. Client-native MCP OAuth login commands do not replace this step. - For OAuth, remove
WEBEX_ACCESS_TOKENfrom the client configuration, inherited environment, and any loaded.env: a static token takes precedence over saved OAuth tokens. - Replace credential placeholders locally. Keep real credentials out of version control; CLI arguments may also be retained in shell history.
- Ensure Node.js and
npxare available to the client, then restart it after configuration changes. - Try: "Use Webex to list my spaces." For a message search, identify a space first;
webex_search_messagessearches one space at a time.
CLI options
Tools
Spaces
Messages
Sending file attachments
Use webex_create_message with files for publicly accessible HTTP(S) URLs:
For a local file, use filePath instead. The server uploads its contents using
multipart; the file must be on the machine running the MCP server, with an
absolute path and a size of at most 100 MB:
On Windows, use an absolute Windows path such as C:\\Reports\\report.pdf.
Text and markdown are optional when attaching a file. files must be nonempty
and cannot be combined with filePath. Recipient fields (roomId, toPersonId,
toPersonEmail) and parentId for thread replies work as with text messages.
URL downloads and attachment limits are enforced by Webex; private URLs requiring
additional credentials cannot be used as public file URLs. See the
Webex attachment guide.
Files
Reading received attachments
What webex_download_file returns depends on the file:
For PDF and Office documents, save the file and open it with the client's own tools
(many agents read PDFs and images directly; use a script for docx/xlsx). Saved files go to
<download dir>/<message-uuid>/<filename>, where the download dir is WEBEX_DOWNLOAD_DIR
or ~/.cache/webex-mcp/downloads. Names are taken from Webex, decoded and made safe for
the file system; saving again replaces the file, and webex_save_message_files adds
(1) to same-named files of one message. The body streams to <name>.part and is renamed
only when complete. Treat saved files as untrusted input: open or list them, never run them.
If Webex is still virus-scanning a file it answers 423 Locked; downloads wait for
Retry-After (up to 10 s) and retry three times before failing.
Memberships
People
Teams
Webhooks
Limitations
webex_search_messagesworks within a single space only (Webex REST API has no global search)- Search scans message history page by page — may be slow in large spaces
- Bot must be a member of a space to read or post messages
- OAuth uses user-delegated tokens; Bot mode uses a long-lived Bot token
- Message
files[]URLs require the access token; usewebex_get_message_images/webex_download_file/webex_save_fileinstead of fetching the URL directly - Inline vision images are limited to PNG, JPEG, GIF, and WebP, max 10 MB each; inline text and archive listings are also limited to 10 MB
- PDF and Office documents are not parsed by the server; save them and open them locally
- ZIP64 archives cannot be listed inline; save them instead
Authentication modes
Full guide
See docs/HOWTO.md for step-by-step setup: bot creation, scopes, Cursor config, example prompts, and troubleshooting.
Local development
License
MIT
Source: README.md at commit 3da990a
Tools
0Version history
1- v0.3.0LatestNov 6, 2026
Score
50% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 days25 pts
Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.
- Auth declared10 pts
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts