Webex MCP Server
Fornece aos assistentes de IA acesso abrangente às capacidades de mensagens do Cisco Webex.
Documentação
Webex MCP Server
Um servidor Model Context Protocol (MCP) que fornece aos assistentes de IA acesso abrangente aos recursos de mensagens do Cisco Webex.
Da intenção de negócio à ação no Webex
Agentes de IA podem usar este servidor como uma camada de ação colaborativa: traduzir um objetivo de negócio em uma sequência de operações do Webex, escolher os recursos relevantes e conduzir o fluxo de trabalho até a conclusão. Isso pode significar notificar clientes, montar salas de resposta a incidentes, manter equipes e espaços de clientes, gerenciar pessoas e associações, reagir a eventos do Webex ou conectar conteúdo empresarial e interações de aprovação.
Como o servidor expõe mensagens, salas, equipes, associações, pessoas, webhooks, eventos, abas, ações de anexos e pastas ECM como ferramentas MCP componíveis, os agentes podem criar fluxos de trabalho em torno da necessidade de negócio, em vez de se limitarem a uma automação fixa.
▶ Assista ao vídeo explicativo de 15 segundos com som
Crie mídia pronta para lançamento a partir do Claude ou Codex
Este vídeo explicativo foi criado a partir de uma solicitação em linguagem simples usando o Agentic Media Harness. Seu plugin agentic-media transforma o Claude Code ou Codex em um fluxo de trabalho de mídia de produção: ele lê seu repositório, aprimora o prompt, gera imagens ou vídeos, verifica a precisão do movimento e do roteiro, itera na qualidade e registra cada prompt, pontuação e valor gasto.
Instale o plugin uma vez e crie vídeos de produto, imagens de destaque, infográficos e ativos de lançamento com conhecimento do repositório, sem sair do seu agente de codificação.
Claude Code
pip install "git+ssh://git@github.com/Kashyap-AI-ML-Solutions/agentic-media-harness.git#subdirectory=packages/amh"
claude plugin marketplace add Kashyap-AI-ML-Solutions/agentic-media-harness
claude plugin install agentic-media@agentic-media-harness
export GEMINI_API_KEY=your_key_here # create + enable billing: https://aistudio.google.com/apikey
Codex CLI
pip install "git+ssh://git@github.com/Kashyap-AI-ML-Solutions/agentic-media-harness.git#subdirectory=packages/amh"
codex plugin marketplace add Kashyap-AI-ML-Solutions/agentic-media-harness
codex plugin add agentic-media@agentic-media-harness
export GEMINI_API_KEY=your_key_here # optional for images; required for video
Você pode colocar GEMINI_API_KEY=your_key no arquivo .env do repositório. Nunca faça commit desse arquivo.
Em seguida, abra qualquer repositório e peça:
Use a habilidade media-video para criar um vídeo explicativo curto para este repositório. Leia o README primeiro. Meu orçamento é de US$ 2,50.
Visão Geral
Este servidor MCP permite que assistentes de IA interajam com mensagens do Webex por meio de 52 ferramentas diferentes que cobrem:
- Mensagens: Enviar, editar, excluir e recuperar mensagens
- Salas: Criar e gerenciar espaços do Webex
- Equipes: Criação de equipes e gerenciamento de associações
- Pessoas: Gerenciamento de usuários e operações de diretório
- Webhooks: Notificações de eventos e integrações
- Recursos Empresariais: Pastas ECM, abas de salas e anexos
Recursos
- ✅ Cobertura Completa da API Webex: 52 ferramentas cobrindo todas as principais operações de mensagens
- ✅ Suporte a Docker: Containerização pronta para produção
- ✅ Transporte Duplo: Modos STDIO e HTTP (StreamableHTTP)
- ✅ Pronto para Empresas: Suporte à autenticação empresarial da Cisco
- ✅ Segurança de Tipos: Implementação completa em TypeScript/JavaScript com tratamento adequado de erros
- ✅ Configuração Centralizada: Gerenciamento fácil de tokens e endpoints
Início Rápido
Pré-requisitos
- Node.js 18+ (20+ recomendado). Aviso: se você executar com uma versão inferior do Node,
fetchnão estará presente. As ferramentas usamfetchpara fazer chamadas HTTP. Para contornar isso, você pode modificar as ferramentas para usarnode-fetchem vez disso. Certifique-se de quenode-fetchesteja instalado como dependência e importe-o comofetchem cada arquivo de ferramenta. - Docker (opcional, para implantação em contêiner)
- Token da API Webex em developer.webex.com
Renovação de Token
Os tokens Bearer do Webex têm vida curta. Seu token atual expira em 12 horas. Para renovar:
- Visite: https://developer.webex.com/messaging/docs/api/v1/rooms/list-rooms
- Faça login com seu e-mail
- Copie o novo token bearer do seu perfil
- Atualize a variável de ambiente "WEBEX_PUBLIC_WORKSPACE_API_KEY" com o novo token (remova o prefixo "Bearer ")
Instalação
-
Clone e instale as dependências:
git clone <repository-url> cd webex-messaging-mcp-server npm install -
Configure o ambiente:
cp .env.example .env # Edit .env with your Webex API token -
Teste o servidor:
# List available tools node index.js tools # Discover tools with detailed analysis npm run discover-tools # Start MCP server (STDIO mode - default) node mcpServer.js # Start MCP server (HTTP mode) npm run start:http
🔍 Descoberta de Ferramentas
O servidor inclui recursos abrangentes de descoberta de ferramentas:
Comandos de Descoberta de Ferramentas
# Human-readable tool analysis
npm run discover-tools
# JSON output for programmatic use
npm run discover-tools -- --json
# Filter tools by category
ENABLED_TOOLS=create_message,list_rooms npm run discover-tools
# Get help
npm run discover-tools -- --help
Manifesto de Ferramentas
O arquivo tools-manifest.json fornece:
- Categorias de Ferramentas: Mensagens, Salas, Equipes, Associações, Pessoas, Webhooks, Empresarial
- 52 Ferramentas no Total: Cobertura completa da API de mensagens do Webex
- Configuração de Ambiente: Variáveis obrigatórias e opcionais
- Informações de Teste: Detalhes de cobertura e validação
- Histórico de Migração: Documentação de atualização do protocolo MCP
Organização das Ferramentas
As ferramentas são organizadas por funcionalidade:
- Mensagens (6 ferramentas): Criar, listar, editar, excluir mensagens
- Salas (6 ferramentas): Gerenciamento e configuração de salas
- Equipes (5 ferramentas): Criação e gerenciamento de equipes
- Associações (10 ferramentas): Operações de associação em salas e equipes
- Pessoas (6 ferramentas): Perfil de usuário e gerenciamento de diretório
- Webhooks (7 ferramentas): Notificações de eventos e gerenciamento de webhooks
- Empresarial (12 ferramentas): Pastas ECM, abas de salas, anexos
Metadados de seleção e comportamento de ferramentas
Todas as 52 ferramentas publicam anotações MCP, além de orientações compactas de seleção e comportamento por meio de tools/list. A frase de propósito original e o esquema de entrada permanecem inalterados; a orientação anexada identifica a ferramenta irmã mais próxima, se a operação lê ou altera o estado do Webex e como erros de API e limites de taxa são retornados.
As anotações são dicas descritivas para clientes MCP, não controles de autorização. O token de acesso do Webex e as políticas da organização permanecem como autoridade.
Uso com Docker
-
Construa e execute:
docker build -t webex-mcp-server . docker run -i --rm --env-file .env webex-mcp-server -
Usando docker-compose:
docker-compose up webex-mcp-server
Configuração
Variáveis de Ambiente
| Variável | Obrigatória | Descrição | Padrão |
|---|---|---|---|
WEBEX_PUBLIC_WORKSPACE_API_KEY | Sim | Token da API Webex (sem o prefixo "Bearer ") | - |
WEBEX_API_BASE_URL | Não | URL base da API Webex | https://webexapis.com/v1 |
WEBEX_USER_EMAIL | Não | Seu e-mail Webex (para referência) | - |
PORT | Não | Porta para o modo HTTP | 3001 |
MCP_MODE | Não | Modo de transporte (stdio ou http) | stdio |
Obtendo um Token da API Webex
- Visite developer.webex.com
- Entre com sua conta Cisco/Webex
- Copie o token bearer da documentação da API
- Importante: Remova o prefixo "Bearer " ao adicionar ao seu arquivo
.env
Integração com Clientes MCP
Claude Desktop (Modo STDIO)
Adicione à configuração do seu Claude Desktop:
{
"mcpServers": {
"webex-messaging": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"WEBEX_PUBLIC_WORKSPACE_API_KEY",
"-e",
"WEBEX_USER_EMAIL",
"-e",
"WEBEX_API_BASE_URL",
"webex-mcp-server"
],
"env": {
"WEBEX_USER_EMAIL": "your.email@company.com",
"WEBEX_API_BASE_URL": "https://webexapis.com/v1",
"WEBEX_PUBLIC_WORKSPACE_API_KEY": "your_token_here"
}
}
}
}
Integração em Modo HTTP
Para clientes MCP baseados em HTTP, inicie o servidor no modo HTTP:
# Start HTTP server
npm run start:http
# Server endpoints:
# Health check: http://localhost:3001/health
# MCP endpoint: http://localhost:3001/mcp
O servidor suporta o protocolo MCP 2025-11-25 com transporte StreamableHTTP, incluindo:
- Configuração adequada de CORS com exposição do cabeçalho
mcp-session-id - Gerenciamento de sessão para conexões com estado
- Formato de resposta Server-Sent Events (SSE)
Outros Clientes MCP
Para o modo STDIO:
docker run -i --rm --env-file .env webex-mcp-server
Para o modo HTTP:
docker run -p 3001:3001 --rm --env-file .env webex-mcp-server --http
Ferramentas Disponíveis
Mensagens Principais
create_message- Enviar mensagens para salaslist_messages- Recuperar histórico de mensagensedit_message- Modificar mensagens existentesdelete_message- Remover mensagensget_message_details- Obter informações de mensagens específicas
Gerenciamento de Salas
create_room- Criar novos espaços Webexlist_rooms- Navegar pelas salas disponíveisget_room_details- Obter informações da salaupdate_room- Modificar configurações da saladelete_room- Remover salas
Operações de Equipes
create_team- Criar equipeslist_teams- Navegar pelas equipesget_team_details- Obter informações da equipeupdate_team- Modificar configurações da equipedelete_team- Remover equipes
Gerenciamento de Associações
create_membership- Adicionar pessoas a salaslist_memberships- Visualizar membros da salaupdate_membership- Alterar funções de membrosdelete_membership- Remover membroscreate_team_membership- Adicionar membros da equipelist_team_memberships- Visualizar membros da equipe
Pessoas e Diretório
get_my_own_details- Obter seu perfillist_people- Pesquisar usuáriosget_person_details- Obter informações do usuáriocreate_person- Adicionar novos usuários (somente administrador)update_person- Modificar detalhes do usuáriodelete_person- Remover usuários (somente administrador)
Webhooks e Eventos
create_webhook- Configurar notificações de eventoslist_webhooks- Gerenciar webhooksget_webhook_details- Obter informações do webhookupdate_webhook- Modificar webhooksdelete_webhook- Remover webhookslist_events- Obter logs de atividadesget_event_details- Obter informações de eventos específicos
Recursos Empresariais
create_room_tab- Adicionar abas a salaslist_room_tabs- Visualizar abas da salaget_room_tab_details- Obter informações da abaupdate_room_tab- Modificar abasdelete_room_tab- Remover abascreate_attachment_action- Lidar com envios de formuláriosget_attachment_action_details- Obter detalhes de anexoslist_ecm_folder- Gerenciamento de conteúdo empresarialget_ecm_folder_details- Obter detalhes de pastas ECMcreate_ecm_folder- Criar configurações ECMupdate_ecm_linked_folder- Modificar pastas ECMunlink_ecm_linked_folder- Remover links ECM
Modos de Transporte
Modo STDIO (Padrão)
O modo de transporte padrão para clientes MCP como o Claude Desktop:
# Start in STDIO mode
node mcpServer.js
# or
npm start
Modo HTTP (StreamableHTTP)
Transporte baseado em HTTP que suporta o protocolo MCP 2025-11-25:
# Start in HTTP mode
npm run start:http
# or
node mcpServer.js --http
Recursos do Modo HTTP:
- Verificação de Saúde:
GET http://localhost:3001/health - Endpoint MCP:
POST http://localhost:3001/mcp - Gerenciamento de Sessão: Tratamento automático de ID de sessão
- Suporte a CORS: Configuração adequada de origem cruzada
- Protocolo: MCP 2025-11-25 com transporte StreamableHTTP
Variáveis de Ambiente:
MCP_MODE=http- Forçar modo HTTPPORT=3001- Porta personalizada (padrão: 3001)
Integração com Smithery
O servidor está configurado para implantação automática via Smithery com runtime HTTP:
# smithery.yaml
runtime: "nodejs"
main: "mcpServer.js"
envMapping:
webexApiKey: "WEBEX_PUBLIC_WORKSPACE_API_KEY"
webexApiBaseUrl: "WEBEX_API_BASE_URL"
Implante com: smithery deploy
Desenvolvimento
Estrutura do Projeto
├── lib/
│ ├── tools.js # Tool discovery and loading
│ └── webex-config.js # Centralized API configuration
├── tools/
│ └── webex-public-workspace/webex-messaging/
│ ├── create-a-message.js
│ ├── list-messages.js
│ └── ... (50 more tools)
├── scripts/
│ └── update-webex-tools.js # Automated tool updates
├── mcpServer.js # Main MCP server
├── index.js # CLI interface
├── Dockerfile # Container configuration
└── docker-compose.yml # Multi-container setup
Adicionando Novas Ferramentas
- Crie um novo arquivo de ferramenta em
tools/webex-public-workspace/webex-messaging/ - Siga o padrão de ferramenta existente com as importações adequadas
- Adicione o caminho da ferramenta a
tools/paths.js - Teste com
node index.js tools
Segurança
- Contêiner não raiz: Executa como usuário
mcp(UID 1001) - Build em múltiplas etapas: Imagem de produção otimizada
- Isolamento de ambiente: Segredos passados por variáveis de ambiente
- Verificações de saúde: Suporte ao monitoramento de contêineres
Testes
🧪 Suíte de Testes Abrangente
- 118 testes unitários em 53 suítes de teste
- Taxa de aprovação de 100% com cobertura abrangente
- Mais de 50 endpoints de API testados de ponta a ponta
- Mais de 20 correções críticas de bugs validadas
# Run all tests
npm test
# Run with coverage
npm run test:coverage
# Run tests locally (same as npm test)
npm run test:local
# Validate code quality + tests
npm run validate
🔒 Portões de Qualidade Pré-Commit
Garantia de qualidade automática usando hooks de pré-commit do Husky:
# Automatically runs on git commit:
🚀 Running pre-commit validation...
🔍 Checking code quality and running 118 unit tests...
✅ All validations passed! Commit proceeding...
O que é validado:
- Verificação de sintaxe JavaScript
- Todos os 118 testes unitários devem passar
- Padrões de qualidade de código
- Correção da implementação da API
Consulte tests/README.md para documentação detalhada de testes.
Contribuindo
- Faça um fork do repositório
- Crie um branch de recurso
- Faça suas alterações
- Os testes são executados automaticamente no commit via hooks de pré-commit
- Garanta que todos os 118 testes passem
- Envie um pull request
Licença
Licença MIT - consulte o arquivo LICENSE para obter detalhes
Suporte
- Problemas: Relate bugs e solicitações de recursos por meio de issues no GitHub
- Documentação: Consulte SETUP-COMPLETE.md para instruções detalhadas de configuração
- Comunidade: Participe de discussões nos canais da comunidade MCP
