Webex Automation
Scannednpx machina-cli add skill ComposioHQ/awesome-claude-skills/webex-automation --openclawWebex 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
Setup
- Add the Rube MCP server to your environment:
https://rube.app/mcp - Connect your Webex account when prompted (OAuth flow via Composio)
- 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 (useWEBEX_MESSAGING_LIST_ROOMSto find it)toPersonEmail-- send a private 1:1 message instead (mutually exclusive withroomId)text-- plain text content (max 7439 bytes)markdown-- markdown-formatted content (takes precedence overtext)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 bydirect(1:1) orgroupteamId-- limit to rooms in a specific teamsortBy-- sort byid,lastactivity, orcreatedmax-- 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>orhostEmail=<email>)secret-- optional HMAC secret for payload signature verificationownedBy--creatorfor personal ororgfor organization-wide webhooks
Supporting tools:
WEBEX_LIST_WEBHOOKS-- list all registered webhooks with optionalmaxandownedByfiltersWEBEX_WEBHOOKS_GET_WEBHOOK-- inspect a specific webhook bywebhookId
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 addpersonId-- Webex person ID (alternative to email)isModerator-- set totruefor moderator access (defaultfalse)
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 roompersonEmail-- check if a person is a member (requiresroomId)personId-- check by Webex person ID (requiresroomId)teamId-- filter by team associationmax-- 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/toPersonId cannot be used together when sending messages |
| Room update requires title | WEBEX_UPDATE_ROOM always requires the title parameter, even when only changing lock status or team |
| orgPublicSpaces conflicts | Cannot combine orgPublicSpaces with teamId, type, or sortBy when listing rooms |
| Webhook read scope | Creating a webhook requires read scope on the monitored resource type |
| Membership filter requires roomId | personEmail and personId filters in list memberships require roomId unless you are a Compliance Officer |
Quick Reference
| Action | Tool Slug | Key Params |
|---|---|---|
| Send message | WEBEX_MESSAGING_CREATE_MESSAGE | roomId, text/markdown, toPersonEmail |
| List rooms | WEBEX_MESSAGING_LIST_ROOMS | type, sortBy, max |
| Get room details | WEBEX_MESSAGING_GET_ROOM_DETAILS | roomId |
| Update room | WEBEX_UPDATE_ROOM | roomId, title |
| Delete message | WEBEX_MESSAGING_DELETE_MESSAGE | messageId |
| Get message details | WEBEX_MESSAGING_GET_MESSAGE_DETAILS | messageId |
| Create webhook | WEBEX_WEBHOOKS_CREATE_WEBHOOK | name, targetUrl, resource, event |
| List webhooks | WEBEX_LIST_WEBHOOKS | max, ownedBy |
| Get webhook | WEBEX_WEBHOOKS_GET_WEBHOOK | webhookId |
| Add team member | WEBEX_MESSAGING_CREATE_TEAM_MEMBERSHIP | teamId, personEmail, isModerator |
| List memberships | WEBEX_MESSAGING_LIST_MEMBERSHIPS | roomId, personEmail, max |
| List people | WEBEX_PEOPLE_LIST_PEOPLE | email, displayName, ID filters |
| List teams | WEBEX_LIST_TEAMS | max |
Powered by Composio
Source
git clone https://github.com/ComposioHQ/awesome-claude-skills/blob/master/composio-skills/webex-automation/SKILL.mdView on GitHub Overview
Webex Automation lets you automate Cisco Webex messaging, rooms, teams, webhooks, and people management using natural language commands. It connects via the Rube MCP workflow and supports OAuth-connected Webex accounts to execute end-to-end collaboration tasks. This makes repetitive Webex operations faster and repeatable for teams.
How This Skill Works
After setting up the Rube MCP server and connecting your Webex account, you issue natural language prompts that map to concrete Webex toolkit calls (e.g., WEBEX_MESSAGING_CREATE_MESSAGE, WEBEX_MESSAGING_LIST_ROOMS, WEBEX_WEBHOOKS_CREATE_WEBHOOK). The skill exposes key parameters for each tool and coordinates with supporting actions like listing rooms or auditing memberships to fulfill user requests.
When to Use It
- When you want to send messages to a Webex room or person via natural language
- When you need to discover and filter your Webex rooms by type or activity
- When you want to set up event-driven automation with Webex webhooks
- When you need to add people to teams or assign moderator roles
- When you need to audit or verify room memberships
Quick Start
- Step 1: Add the Rube MCP server to your environment: https://rube.app/mcp
- Step 2: Connect your Webex account (OAuth flow via Composio)
- Step 3: Start issuing natural language commands for Webex automation
Best Practices
- Use roomId for group messages or toPersonEmail for 1:1 messages; they are mutually exclusive
- Use WEBEX_MESSAGING_LIST_ROOMS to locate room IDs before sending messages
- When creating webhooks, specify resource and event; use filter to scope notifications
- Before modifying team memberships, discover available teams with WEBEX_LIST_TEAMS
- Test prompts with small payloads and be mindful of text size limits (text up to 7439 bytes) to avoid errors
Example Use Cases
- Send a markdown message to room Y2lz... saying Deploy completed with a link to the release notes
- List my 10 most recently active group rooms in Webex
- Create a webhook called 'New Messages' that POSTs to https://my-app.com/hook whenever a message is created in room Y2lz...
- Add alice@example.com as a moderator to team Y2lz...
- Show me who is in room Y2lz...