项目简介

Webex MCP 服务器是一个中间件,它以标准化的 Model Context Protocol (MCP) 格式,将 Cisco Webex 的丰富消息传递和协作能力暴露给大型语言模型(LLM)驱动的AI助手。它将 Webex API 封装成 50 多个可由 AI 调用的工具,让 AI 能够执行发送消息、管理房间、团队和人员、设置 Webhook 等操作,从而实现与 Webex 环境的深度智能互动。

主要功能点

  • 消息管理: AI 可以发送、编辑、删除和检索 Webex 房间内的消息。
  • 房间(空间)管理: AI 能够创建、管理、更新和删除 Webex 空间(房间),并获取房间的详细信息。
  • 团队管理: AI 可以创建、列出、获取详情、更新和删除 Webex 团队。
  • 人员和成员管理: AI 能够列出、获取人员详情、创建(需管理员权限)、更新和删除 Webex 用户,以及管理房间和团队的成员关系。
  • Webhooks 与事件: AI 可以创建、列出、获取详情、更新和删除 Webhook,以接收 Webex 事件通知,并查询历史事件日志。
  • 企业级功能: 支持对企业内容管理(ECM)文件夹的列出、获取详情、创建、更新和取消链接操作,以及房间标签(Room Tabs)的创建、列出、更新和删除,以及附件动作的处理。
  • 多种传输模式: 支持标准输入/输出(STDIO)模式和服务器发送事件(SSE)模式,灵活适应不同的客户端连接需求。
  • 容器化部署: 提供 Docker 支持,方便部署和管理。

安装步骤

  1. 环境准备: 确保您的系统已安装 Node.js 18+ (推荐 20+) 和 Docker (可选,用于容器化部署)。
  2. 获取 Webex API Token:
    • 访问 developer.webex.com
    • 登录您的 Cisco/Webex 账户。
    • 从页面上找到并复制您的 Bearer Token。
    • 重要提示: 复制 Token 时,请务必移除其前缀 'Bearer '。
  3. 克隆仓库并安装依赖:
    git clone https://github.com/Kashyap-AI-ML-Solutions/webex-messaging-mcp-server.git
    cd webex-messaging-mcp-server
    npm install
  4. 配置环境变量:
    • 复制 '.env.example' 文件为 '.env':'cp .env.example .env'
    • 编辑新创建的 '.env' 文件,将您在第2步获取的 Webex API Token 填入 'WEBEX_PUBLIC_WORKSPACE_API_KEY' 变量。例如:'WEBEX_PUBLIC_WORKSPACE_API_KEY=您的Webex API Token'
    • 您可以根据需要配置其他变量,如 'WEBEX_API_BASE_URL' (默认为 'https://webexapis.com/v1') 或 'WEBEX_USER_EMAIL'。

服务器配置(供 MCP 客户端参考)

MCP 客户端需要知道如何启动和连接到此 MCP 服务器。以下是 MCP 客户端通常需要配置的关键信息点,以 JSON 格式提供(请根据您的 MCP 客户端实际支持的配置方式进行调整):

{
  "mcpServers": {
    "webex-messaging": {
      // 启动此MCP服务器的命令。通常设置为 'node' 或 'docker'。
      "command": "docker", 
      // 传递给启动命令的参数列表。
      "args": [
        "run",
        "-i",
        "--rm",
        // 通过 -e 参数将环境变量传递给Docker容器。
        // 请将等号后的值替换为您在安装步骤中准备的真实数据。
        "-e", "WEBEX_PUBLIC_WORKSPACE_API_KEY=您的Webex API Token", 
        "-e", "WEBEX_USER_EMAIL=您的Webex邮箱", 
        "-e", "WEBEX_API_BASE_URL=https://webexapis.com/v1", // 可选,如果与默认值不同则配置
        // 指定要运行的Docker镜像名称。
        "webex-mcp-server" 
      ],
      // 也可以在此处直接定义环境变量。如果在此处定义,上述args中的 -e 参数可以省略。
      // 请将值替换为您自己的真实数据。
      "env": {
        "WEBEX_USER_EMAIL": "[email protected]", 
        "WEBEX_API_BASE_URL": "https://webexapis.com/v1", 
        "WEBEX_PUBLIC_WORKSPACE_API_KEY": "your_token_here" 
      }
    }
  }
}

请注意: 上述配置中的 'your_token_here'、'[email protected]' 等占位符必须替换为您的真实 Webex API Token 和邮箱地址,以便服务器能够正常工作。

基本使用方法

  1. 启动服务器(STDIO模式): 在项目根目录运行命令行命令:'node mcpServer.js' 此模式下服务器将通过标准输入/输出与 MCP 客户端通信。
  2. 启动服务器(SSE模式): 在项目根目录运行命令行命令:'node mcpServer.js --sse' 此模式下服务器将在 'http://localhost:3001' (或您在 '.env' 中配置的 'PORT' 端口) 上通过 HTTP 提供 SSE 接口,适用于需要通过网络连接的客户端。
  3. 通过 CLI 查看可用工具: 运行命令行命令:'node index.js tools' 此命令将列出所有已注册的 Webex 工具及其描述和参数,方便您了解 AI 助手可以调用哪些功能。
  4. 集成到 MCP 客户端: 将启动的 Webex MCP 服务器集成到支持 MCP 协议的 LLM 客户端(如 Claude Desktop 或自定义应用)。客户端会通过 JSON-RPC 协议向此服务器发送请求,例如请求工具列表 ('ListTools') 或调用特定工具 ('CallTool')。

信息

分类

AI与计算