Installs into .claude/skills of the current project.
Are you the author of Webex Automation?
Add the live security badge to your README. It updates with every re-scan.
[](https://www.skillsdirectory.com/skills/ranbot-ai-webex-automation)
---
name: Webex Automation
description: Automate Cisco Webex messaging, rooms, teams, webhooks, and people management through natural language commands
category: Development & Code Tools
source: composio
tags: [markdown, json, mcp, automation, ai]
url: https://github.com/ComposioHQ/awesome-claude-skills/tree/master/webex-automation
---
# Webex Automation
Automate Cisco Webex collaboration workflows -- send messages, manage rooms and teams, configure webhooks, and look up people -- all through natural language.
**Toolkit docs:** [composio.dev/toolkits/webex](https://composio.dev/toolkits/webex)
---
## Setup
1. Add the Rube MCP server to your environment: `https://rube.app/mcp`
2. Connect your Webex account when prompted (OAuth flow via Composio)
3. Start issuing natural language commands for Webex automation
---
## Core Workflows
### 1. Send a Message to a Room or Person
Post plain text, markdown, file attachments, or Adaptive Cards to any Webex room or directly to a person.
**Tool:** `WEBEX_MESSAGING_CREATE_MESSAGE`
Key parameters:
- `roomId` -- target room ID (use `WEBEX_MESSAGING_LIST_ROOMS` to find it)
- `toPersonEmail` -- send a private 1:1 message instead (mutually exclusive with `roomId`)
- `text` -- plain text content (max 7439 bytes)
- `markdown` -- markdown-formatted content (takes precedence over `text`)
- `files` -- list of public URLs for file attachments (one file per message)
- `attachments` -- Adaptive Card JSON (one card per message)
- `parentId` -- reply to a specific message as a threaded response
Example prompt:
> "Send a markdown message to room Y2lz... saying **Deploy completed** with a link to the release notes"
---
### 2. List and Discover Rooms
Browse all rooms you belong to, filtered by type, team, or sorted by activity.
**Tool:** `WEBEX_MESSAGING_LIST_ROOMS`
Key parameters:
- `type` -- filter by `direct` (1:1) or `group`
- `teamId` -- limit to rooms in a specific team
- `sortBy` -- sort by `id`, `lastactivity`, or `created`
- `max` -- limit results (1-1000, default 100)
Follow-up with `WEBEX_MESSAGING_GET_ROOM_DETAILS` to get full metadata for a specific room including title, type, lock status, creator, and timestamps.
Example prompt:
> "List my 10 most recently active group rooms in Webex"
---
### 3. Manage Webhooks for Event-Driven Automation
Create webhooks to receive real-time HTTP POST notifications when Webex resources change.
**Tool:** `WEBEX_WEBHOOKS_CREATE_WEBHOOK`
Key parameters:
- `name` -- human-friendly webhook name (required)
- `targetUrl` -- URL that receives POST notifications (required)
- `resource` -- what to monitor: `messages`, `rooms`, `memberships`, `meetings`, `recordings`, `meetingParticipants`, `telephony_calls`, etc. (required)
- `event` -- trigger type: `created`, `updated`, `deleted`, `started`, `ended`, `joined`, `left` (required)
- `filter` -- scope notifications (e.g., `roomId=<id>` or `hostEmail=<email>`)
- `secret` -- optional HMAC secret for payload signature verification
- `ownedBy` -- `creator` for personal or `org` for organization-wide webhooks
Supporting tools:
- `WEBEX_LIST_WEBHOOKS` -- list all registered webhooks with optional `max` and `ownedBy` filters
- `WEBEX_WEBHOOKS_GET_WEBHOOK` -- inspect a specific webhook by `webhookId`
Example prompt:
> "Create a webhook called 'New Messages' that POSTs to https://my-app.com/hook whenever a message is created in room Y2lz..."
---
### 4. Manage Team Memberships
Add people to Webex teams and optionally grant moderator privileges.
**Tool:** `WEBEX_MESSAGING_CREATE_TEAM_MEMBERSHIP`
Key parameters:
- `teamId` -- the team to add the person to (required)
- `personEmail` -- email of the person to add
- `personId` -- Webex person ID (alternative to email)
- `isModerator` -- set to `true` for moderator access (default `false`)
Use `WEBEX_LIST_TEAMS` to discover available teams first.
Example prompt:
> "Add alice@example.com as a moderator to team Y2lz..."
---
### 5. Audit Room Memberships
Check who is in a room, verify a specific person's membership, or list memberships across teams.
**Tool:** `WEBEX_MESSAGING_LIST_MEMBERSHIPS`
Key parameters:
- `roomId` -- list all members of a specific room
- `personEmail` -- check if a person is a member (requires `roomId`)
- `personId` -- check by Webex person ID (requires `roomId`)
- `teamId` -- filter by team association
- `max` -- limit results
Example prompt:
> "List all members of room Y2lz... and tell me who the moderators are"
---
### 6. Search and Look Up People
Look up people in your Webex organization by email, display name, or ID.
**Tool:** `WEBEX_PEOPLE_LIST_PEOPLE`
Use to resolve names to person IDs before sending direct messages or adding team members.
Example prompt:
> "Find the Webex person ID for bob@company.com"
---
## Known Pitfalls
| Pitfall | Details |
|---------|---------|
| Webhook auto-disable | Target URL must respond with HTTP 2xx; 100 failures in 5 minutes disables the webhook automatically |
| Message size limit | Both `text` and `markdown` have a 7439-byte maximum |
| One file per message | The `files` array accepts a list but only one attachment is actually supported per message |
| One card per message | Only one Adaptive Card attachment is supported per message |
| Mutually exclusive targets | `roomId` and `toPersonEmail`