Webex MCP Server for Cloudflare Workers
52 tools available in the Webex MCP server. Each tool can be called by AI assistants to perform specific actions.
webex_create_attachment_actionCreate an attachment action (submit response to an Adaptive Card).
Args:
Returns: The created attachment action object with id, type, inputs, and metadata.
{
"type": "object",
"required": [
"messageId",
"inputs"
],
"properties": {
"inputs": {
"type": "object",
"description": "Form inputs from the card"
},
"messageId": {
"type": "string",
"description": "Message ID with Adaptive Card"
}
}
}webex_get_attachment_actionGet details for a specific attachment action by ID.
Args:
Returns: Attachment action details including type, message ID, inputs, person ID, and room ID.
{
"type": "object",
"required": [
"actionId"
],
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"actionId": {
"type": "string",
"description": "Attachment action ID"
}
}
}webex_list_devicesList devices in the organization (admin only).
Args:
Returns: Paginated list of devices with id, display name, product, status, and connection info.
{
"type": "object",
"properties": {
"max": {
"type": "integer",
"default": 100,
"maximum": 1000,
"minimum": 1,
"description": "Maximum results"
},
"tag": {
"type": "string",
"description": "Filter by tag"
},
"type": {
"type": "string",
"description": "Filter by device type"
},
"orgId": {
"type": "string",
"description": "Filter by organization ID"
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string",
"default": "json",
"description": "Response format"
},
"serial": {
"type": "string",
"description": "Filter by serial number"
},
"placeId": {
"type": "string",
"description": "Filter by place ID"
},
"product": {
"type": "string",
"description": "Filter by product type"
},
"personId": {
"type": "string",
"description": "Filter by person ID"
},
"displayName": {
"type": "string",
"description": "Filter by display name"
},
"workspaceId": {
"type": "string",
"description": "Filter by workspace ID"
},
"connectionStatus": {
"enum": [
"connected",
"disconnected",
"connected_with_issues",
"unknown"
],
"type": "string"
}
}
}webex_get_deviceGet details for a specific device by ID.
Args:
Returns: Device details including display name, product, capabilities, connection status, IP, MAC, serial, and software version.
{
"type": "object",
"required": [
"deviceId"
],
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"deviceId": {
"type": "string",
"description": "Device ID"
}
}
}webex_delete_deviceDelete a device from the organization.
Args:
Returns: Confirmation of deletion.
{
"type": "object",
"required": [
"deviceId"
],
"properties": {
"deviceId": {
"type": "string",
"description": "Device ID to delete"
}
}
}webex_create_device_activation_codeGenerate an activation code to onboard a new device.
Args:
(Use workspaceId OR placeId, not both)
Returns: Activation code object with code and expiry time.
{
"type": "object",
"properties": {
"placeId": {
"type": "string",
"description": "Place ID"
},
"workspaceId": {
"type": "string",
"description": "Workspace ID"
}
}
}webex_list_meetingsList meetings with optional filters.
Args:
Returns: Paginated list of meetings with id, title, start/end times, state, and more.
{
"type": "object",
"properties": {
"to": {
"type": "string",
"description": "End date (ISO 8601)"
},
"max": {
"type": "integer",
"default": 100,
"maximum": 100,
"minimum": 1,
"description": "Maximum results"
},
"from": {
"type": "string",
"description": "Start date (ISO 8601)"
},
"state": {
"enum": [
"active",
"scheduled",
"ready",
"lobby",
"inProgress",
"ended",
"missed",
"expired"
],
"type": "string"
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string",
"default": "json",
"description": "Response format"
},
"roomId": {
"type": "string",
"description": "Filter by room ID"
},
"meetingType": {
"enum": [
"meetingSeries",
"scheduledMeeting",
"meeting"
],
"type": "string"
},
"meetingNumber": {
"type": "string",
"description": "Filter by meeting number"
},
"scheduledType": {
"enum": [
"meeting",
"webinar",
"personalRoomMeeting"
],
"type": "string"
}
}
}webex_get_meetingGet details for a specific meeting by ID.
Args:
Returns: Meeting details including title, start/end times, host info, dial-in numbers, and settings.
{
"type": "object",
"required": [
"meetingId"
],
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"meetingId": {
"type": "string",
"description": "Meeting ID"
}
}
}webex_list_messagesList messages in a room.
Args:
Returns: Paginated list of messages with id, text, sender info, and timestamps.
{
"type": "object",
"required": [
"roomId"
],
"properties": {
"max": {
"type": "integer",
"default": 50,
"maximum": 1000,
"minimum": 1,
"description": "Maximum results"
},
"before": {
"type": "string",
"description": "Messages before this timestamp"
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string",
"default": "json",
"description": "Response format"
},
"roomId": {
"type": "string",
"description": "Room ID (required)"
},
"parentId": {
"type": "string",
"description": "Filter to thread replies"
},
"beforeMessage": {
"type": "string",
"description": "Messages before this message ID"
},
"mentionedPeople": {
"type": "string",
"description": "Filter by mentioned people"
}
}
}webex_create_meetingSchedule a new meeting.
Args:
Returns: The created meeting object with dial-in info and web link.
{
"type": "object",
"required": [
"title",
"start",
"end"
],
"properties": {
"end": {
"type": "string",
"description": "End time (ISO 8601)"
},
"start": {
"type": "string",
"description": "Start time (ISO 8601)"
},
"title": {
"type": "string",
"description": "Meeting title"
},
"agenda": {
"type": "string",
"description": "Meeting agenda"
},
"invitees": {
"type": "array",
"items": {
"type": "string"
},
"description": "Invitees"
},
"password": {
"type": "string",
"description": "Meeting password"
},
"timezone": {
"type": "string",
"description": "Timezone"
},
"sendEmail": {
"type": "boolean",
"description": "Send email notifications"
},
"recurrence": {
"type": "string",
"description": "Recurrence pattern (RFC 5545)"
},
"publicMeeting": {
"type": "boolean",
"description": "Public meeting"
},
"enabledJoinBeforeHost": {
"type": "boolean",
"description": "Join before host"
},
"joinBeforeHostMinutes": {
"type": "number",
"description": "Minutes before host"
},
"enabledAutoRecordMeeting": {
"type": "boolean",
"description": "Auto-record"
}
}
}webex_update_meetingUpdate an existing meeting.
Args:
Returns: The updated meeting object.
{
"type": "object",
"required": [
"meetingId"
],
"properties": {
"end": {
"type": "string"
},
"start": {
"type": "string"
},
"title": {
"type": "string"
},
"agenda": {
"type": "string"
},
"invitees": {
"type": "array",
"items": {
"type": "string"
}
},
"password": {
"type": "string"
},
"timezone": {
"type": "string"
},
"meetingId": {
"type": "string",
"description": "Meeting ID to update"
},
"sendEmail": {
"type": "boolean"
},
"publicMeeting": {
"type": "boolean"
},
"enabledJoinBeforeHost": {
"type": "boolean"
},
"enabledAutoRecordMeeting": {
"type": "boolean"
}
}
}webex_delete_meetingCancel/delete a meeting.
Args:
Returns: Confirmation of deletion.
{
"type": "object",
"required": [
"meetingId"
],
"properties": {
"meetingId": {
"type": "string",
"description": "Meeting ID to delete"
}
}
}webex_list_membershipsList room memberships with optional filters.
Args:
Returns: Paginated list of memberships with id, person info, room, moderator status, and creation date.
{
"type": "object",
"properties": {
"max": {
"type": "integer",
"default": 100,
"maximum": 1000,
"minimum": 1,
"description": "Maximum results"
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string",
"default": "json",
"description": "Response format"
},
"roomId": {
"type": "string",
"description": "Filter by room ID"
},
"personId": {
"type": "string",
"description": "Filter by person ID"
},
"personEmail": {
"type": "string",
"description": "Filter by person email"
}
}
}webex_get_membershipGet details for a specific membership by ID.
Args:
Returns: Membership details including room, person, moderator status, and timestamps.
{
"type": "object",
"required": [
"membershipId"
],
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"membershipId": {
"type": "string",
"description": "Membership ID"
}
}
}webex_add_memberAdd a person to a room.
Args:
Returns: The created membership object.
{
"type": "object",
"required": [
"roomId"
],
"properties": {
"roomId": {
"type": "string",
"description": "Room ID"
},
"personId": {
"type": "string",
"description": "Person ID"
},
"isModerator": {
"type": "boolean",
"description": "Make moderator"
},
"personEmail": {
"type": "string",
"description": "Person email"
}
}
}webex_update_membershipUpdate a membership (e.g., change moderator status).
Args:
Returns: The updated membership object.
{
"type": "object",
"required": [
"membershipId"
],
"properties": {
"isModerator": {
"type": "boolean",
"description": "Moderator status"
},
"isRoomHidden": {
"type": "boolean",
"description": "Hide room"
},
"membershipId": {
"type": "string",
"description": "Membership ID"
}
}
}webex_remove_memberRemove a person from a room.
Args:
Returns: Confirmation of removal.
{
"type": "object",
"required": [
"membershipId"
],
"properties": {
"membershipId": {
"type": "string",
"description": "Membership ID"
}
}
}webex_get_messageGet details for a specific message by ID.
Args:
Returns: Message details including text, markdown, files, sender info, and timestamps.
{
"type": "object",
"required": [
"messageId"
],
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"messageId": {
"type": "string",
"description": "Message ID"
}
}
}webex_get_team_membershipGet details for a specific team membership by ID.
Args:
Returns: Team membership details including team, person, moderator status, and timestamps.
{
"type": "object",
"required": [
"membershipId"
],
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"membershipId": {
"type": "string",
"description": "Team membership ID"
}
}
}webex_send_messageSend a message to a room or person.
Args:
Returns: The created message object.
{
"type": "object",
"properties": {
"text": {
"type": "string",
"description": "Plain text content"
},
"files": {
"type": "array",
"items": {
"type": "string"
},
"description": "File URLs to attach"
},
"roomId": {
"type": "string",
"description": "Room ID"
},
"markdown": {
"type": "string",
"description": "Markdown content"
},
"parentId": {
"type": "string",
"description": "Parent message ID for threading"
},
"toPersonId": {
"type": "string",
"description": "Person ID for direct message"
},
"toPersonEmail": {
"type": "string",
"description": "Email for direct message"
}
}
}webex_edit_messageEdit a message you previously sent (can edit up to 10 times).
Args:
Returns: The updated message object.
{
"type": "object",
"required": [
"messageId",
"roomId"
],
"properties": {
"text": {
"type": "string",
"description": "New plain text content"
},
"roomId": {
"type": "string",
"description": "Room ID"
},
"markdown": {
"type": "string",
"description": "New markdown content"
},
"messageId": {
"type": "string",
"description": "Message ID to edit"
}
}
}webex_delete_messageDelete a message by ID.
Args:
Returns: Confirmation of deletion.
{
"type": "object",
"required": [
"messageId"
],
"properties": {
"messageId": {
"type": "string",
"description": "Message ID to delete"
}
}
}webex_list_direct_messagesList direct messages with a specific person.
Args:
Returns: Paginated list of direct messages with the specified person.
{
"type": "object",
"required": [
"personIdOrEmail"
],
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"personIdOrEmail": {
"type": "string",
"description": "Person ID or email address"
}
}
}webex_list_peopleList people in the organization.
Args:
Returns: Paginated list of people with id, display name, emails, and status.
{
"type": "object",
"properties": {
"max": {
"type": "integer",
"default": 100,
"maximum": 1000,
"minimum": 1,
"description": "Maximum results"
},
"email": {
"type": "string",
"description": "Filter by email"
},
"orgId": {
"type": "string",
"description": "Filter by organization"
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string",
"default": "json",
"description": "Response format"
},
"displayName": {
"type": "string",
"description": "Filter by display name"
}
}
}webex_get_personGet details for a specific person by ID.
Args:
Returns: Person details including display name, emails, phone numbers, status, and more.
{
"type": "object",
"required": [
"personId"
],
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"personId": {
"type": "string",
"description": "Person ID"
}
}
}webex_get_meGet profile details for the authenticated user.
Args:
Returns: Current user's profile including display name, emails, status, and organization.
{
"type": "object",
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
}
}
}webex_create_personCreate a new user account (admin only).
Args:
Returns: The created person object.
{
"type": "object",
"required": [
"emails"
],
"properties": {
"orgId": {
"type": "string",
"description": "Organization ID"
},
"roles": {
"type": "array",
"items": {
"type": "string"
},
"description": "Role IDs"
},
"title": {
"type": "string",
"description": "Job title"
},
"emails": {
"type": "array",
"items": {
"type": "string"
},
"description": "Email addresses (required)"
},
"lastName": {
"type": "string",
"description": "Last name"
},
"licenses": {
"type": "array",
"items": {
"type": "string"
},
"description": "License IDs"
},
"firstName": {
"type": "string",
"description": "First name"
},
"department": {
"type": "string",
"description": "Department"
},
"displayName": {
"type": "string",
"description": "Display name"
}
}
}webex_update_personUpdate a person's account (admin only).
Args:
Returns: The updated person object.
{
"type": "object",
"required": [
"personId"
],
"properties": {
"roles": {
"type": "array",
"items": {
"type": "string"
}
},
"title": {
"type": "string"
},
"emails": {
"type": "array",
"items": {
"type": "string"
}
},
"lastName": {
"type": "string"
},
"licenses": {
"type": "array",
"items": {
"type": "string"
}
},
"personId": {
"type": "string",
"description": "Person ID to update"
},
"firstName": {
"type": "string"
},
"department": {
"type": "string"
},
"displayName": {
"type": "string"
},
"loginEnabled": {
"type": "boolean"
}
}
}webex_delete_personDelete a person from the system (admin only).
Args:
Returns: Confirmation of deletion.
{
"type": "object",
"required": [
"personId"
],
"properties": {
"personId": {
"type": "string",
"description": "Person ID to delete"
}
}
}webex_delete_webhookDelete a webhook.
Args:
Returns: Confirmation of deletion.
{
"type": "object",
"required": [
"webhookId"
],
"properties": {
"webhookId": {
"type": "string",
"description": "Webhook ID to delete"
}
}
}webex_list_recordingsList recordings with optional filters.
Args:
Returns: Paginated list of recordings with id, topic, duration, status, and download info.
{
"type": "object",
"properties": {
"to": {
"type": "string",
"description": "End date (ISO 8601)"
},
"max": {
"type": "integer",
"default": 10,
"maximum": 100,
"minimum": 1,
"description": "Maximum results"
},
"from": {
"type": "string",
"description": "Start date (ISO 8601)"
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string",
"default": "json",
"description": "Response format"
},
"status": {
"enum": [
"available",
"deleted",
"purged"
],
"type": "string",
"description": "Status filter"
},
"siteUrl": {
"type": "string",
"description": "Filter by Webex site"
},
"hostEmail": {
"type": "string",
"description": "Filter by host email"
},
"meetingId": {
"type": "string",
"description": "Filter by meeting ID"
}
}
}webex_get_recordingGet details for a specific recording by ID.
Args:
Returns: Recording details including topic, duration, size, download URLs, and playback URL.
{
"type": "object",
"required": [
"recordingId"
],
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"recordingId": {
"type": "string",
"description": "Recording ID"
}
}
}webex_delete_recordingDelete a recording permanently (cannot be recovered).
Args:
Returns: Confirmation of deletion.
{
"type": "object",
"required": [
"recordingId"
],
"properties": {
"recordingId": {
"type": "string",
"description": "Recording ID to delete"
}
}
}webex_list_roomsList rooms/spaces the authenticated user belongs to.
Args:
Returns: Paginated list of rooms with id, title, type, lock status, and team ID.
{
"type": "object",
"properties": {
"max": {
"type": "integer",
"default": 100,
"maximum": 1000,
"minimum": 1,
"description": "Maximum results"
},
"type": {
"enum": [
"direct",
"group"
],
"type": "string",
"description": "Room type filter"
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string",
"default": "json",
"description": "Response format"
},
"sortBy": {
"enum": [
"id",
"lastactivity",
"created"
],
"type": "string",
"description": "Sort field"
},
"teamId": {
"type": "string",
"description": "Filter by team ID"
}
}
}webex_get_roomGet details for a specific room by ID.
Args:
Returns: Room details including title, type, lock status, team association, and timestamps.
{
"type": "object",
"required": [
"roomId"
],
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"roomId": {
"type": "string",
"description": "Room ID"
}
}
}webex_create_roomCreate a new room/space.
Args:
Returns: The created room object.
{
"type": "object",
"required": [
"title"
],
"properties": {
"title": {
"type": "string",
"description": "Room title"
},
"teamId": {
"type": "string",
"description": "Team ID to add room to"
},
"isLocked": {
"type": "boolean",
"description": "Lock the room"
},
"isPublic": {
"type": "boolean",
"description": "Make room public"
},
"description": {
"type": "string",
"description": "Room description"
},
"isAnnouncementOnly": {
"type": "boolean",
"description": "Announcement only mode"
}
}
}webex_update_roomUpdate a room's properties.
Args:
Returns: The updated room object.
{
"type": "object",
"required": [
"roomId",
"title"
],
"properties": {
"title": {
"type": "string",
"description": "New room title"
},
"roomId": {
"type": "string",
"description": "Room ID to update"
},
"isLocked": {
"type": "boolean"
},
"isPublic": {
"type": "boolean"
},
"isReadOnly": {
"type": "boolean"
},
"description": {
"type": "string"
},
"isAnnouncementOnly": {
"type": "boolean"
}
}
}webex_delete_roomDelete a room permanently. Team rooms are archived instead.
Args:
Returns: Confirmation of deletion.
{
"type": "object",
"required": [
"roomId"
],
"properties": {
"roomId": {
"type": "string",
"description": "Room ID to delete"
}
}
}webex_get_room_meeting_infoGet meeting information for a room including SIP address and dial-in numbers.
Args:
Returns: Meeting link, SIP address, meeting number, and dial-in numbers.
{
"type": "object",
"required": [
"roomId"
],
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"roomId": {
"type": "string",
"description": "Room ID"
}
}
}webex_list_team_membershipsList members of a team.
Args:
Returns: Paginated list of team memberships with id, person info, moderator status, and creation date.
{
"type": "object",
"required": [
"teamId"
],
"properties": {
"max": {
"type": "integer",
"default": 100,
"maximum": 1000,
"minimum": 1,
"description": "Maximum results"
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string",
"default": "json",
"description": "Response format"
},
"teamId": {
"type": "string",
"description": "Team ID (required)"
}
}
}webex_add_team_memberAdd a person to a team.
Args:
Returns: The created team membership object.
{
"type": "object",
"required": [
"teamId"
],
"properties": {
"teamId": {
"type": "string",
"description": "Team ID"
},
"personId": {
"type": "string",
"description": "Person ID"
},
"isModerator": {
"type": "boolean",
"description": "Make moderator"
},
"personEmail": {
"type": "string",
"description": "Person email"
}
}
}webex_update_team_membershipUpdate a team membership (e.g., change moderator status).
Args:
Returns: The updated team membership object.
{
"type": "object",
"required": [
"membershipId",
"isModerator"
],
"properties": {
"isModerator": {
"type": "boolean",
"description": "Moderator status"
},
"membershipId": {
"type": "string",
"description": "Team membership ID"
}
}
}webex_remove_team_memberRemove a person from a team.
Args:
Returns: Confirmation of removal.
{
"type": "object",
"required": [
"membershipId"
],
"properties": {
"membershipId": {
"type": "string",
"description": "Team membership ID"
}
}
}webex_list_teamsList teams the authenticated user belongs to.
Args:
Returns: Paginated list of teams with id, name, description, and creation date.
{
"type": "object",
"properties": {
"max": {
"type": "integer",
"default": 100,
"maximum": 1000,
"minimum": 1,
"description": "Maximum results"
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string",
"default": "json",
"description": "Response format"
}
}
}webex_get_teamGet details for a specific team by ID.
Args:
Returns: Team details including name, description, creator, and creation date.
{
"type": "object",
"required": [
"teamId"
],
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"teamId": {
"type": "string",
"description": "Team ID"
}
}
}webex_create_teamCreate a new team.
Args:
Returns: The created team object.
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"description": "Team name"
},
"description": {
"type": "string",
"description": "Team description"
}
}
}webex_update_teamUpdate a team's properties.
Args:
Returns: The updated team object.
{
"type": "object",
"required": [
"teamId",
"name"
],
"properties": {
"name": {
"type": "string",
"description": "New team name"
},
"teamId": {
"type": "string",
"description": "Team ID to update"
},
"description": {
"type": "string",
"description": "Updated description"
}
}
}webex_delete_teamDelete a team by ID.
Args:
Returns: Confirmation of deletion.
{
"type": "object",
"required": [
"teamId"
],
"properties": {
"teamId": {
"type": "string",
"description": "Team ID to delete"
}
}
}webex_list_webhooksList webhooks for the authenticated user.
Args:
Returns: Paginated list of webhooks with id, name, target URL, resource, event, and status.
{
"type": "object",
"properties": {
"max": {
"type": "integer",
"default": 100,
"maximum": 100,
"minimum": 1,
"description": "Maximum results"
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string",
"default": "json",
"description": "Response format"
}
}
}webex_get_webhookGet details for a specific webhook by ID.
Args:
Returns: Webhook details including name, target URL, resource, event, filter, and status.
{
"type": "object",
"required": [
"webhookId"
],
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"webhookId": {
"type": "string",
"description": "Webhook ID"
}
}
}webex_create_webhookCreate a new webhook to receive notifications.
Args:
Returns: The created webhook object.
{
"type": "object",
"required": [
"name",
"targetUrl"
],
"properties": {
"name": {
"type": "string",
"description": "Webhook name"
},
"filter": {
"type": "string",
"description": "Filter criteria"
},
"secret": {
"type": "string",
"description": "Secret for signature"
},
"ownedBy": {
"enum": [
"org"
],
"type": "string",
"description": "Org-level webhook"
},
"targetUrl": {
"type": "string",
"description": "Target URL for notifications"
}
}
}webex_update_webhookUpdate a webhook's properties.
Args:
Returns: The updated webhook object.
{
"type": "object",
"required": [
"webhookId",
"name",
"targetUrl"
],
"properties": {
"name": {
"type": "string",
"description": "New name"
},
"secret": {
"type": "string",
"description": "New secret"
},
"status": {
"enum": [
"active"
],
"type": "string",
"description": "Reactivate webhook"
},
"targetUrl": {
"type": "string",
"description": "New target URL"
},
"webhookId": {
"type": "string",
"description": "Webhook ID to update"
}
}
}