项目简介
netskope-mcp 是一个基于 Model Context Protocol (MCP) 构建的服务器,旨在作为大型语言模型 (LLM) 与 Netskope NPA (Network Private Access) 基础设施之间的桥梁。它允许用户通过 LLM 以自然语言交互的方式管理和操作 Netskope NPA 服务,例如创建和管理发布者 (Publishers)、本地代理 (Local Brokers)、私有应用 (Private Apps) 和策略规则 (Policy Rules) 等。
主要功能点
- 资源管理: 提供对 Netskope NPA 资源的访问和管理能力,包括发布者、本地代理、私有应用、策略规则和升级配置等。
- 工具集成: 注册并提供一系列工具,允许 LLM 客户端调用 Netskope NPA API,执行各种管理操作,如创建、更新、删除和查询资源。
- 标准化接口: 遵循 MCP 协议,通过 JSON-RPC 与客户端通信,提供标准化的上下文服务接口,易于集成到各种 MCP 客户端应用中。
- 环境配置: 支持通过环境变量配置 Netskope API 的 base URL 和 API Key,方便用户根据自身 Netskope 租户环境进行配置。
- 多种部署方式: 支持 NPM 包安装和本地开发部署两种方式,并提供 Windows (WSL), Linux 和 macOS 等多种平台的配置示例。
安装步骤
方法 1: 使用 NPM 包安装
- 确保已安装 Node.js 和 npm。
- 打开终端,运行以下命令安装 netskope-mcp 包:
npm install @johnneerdael/netskope-mcp
方法 2: 本地开发安装
- 确保已安装 Node.js 和 npm 以及 Git。
- 克隆 GitHub 仓库到本地:
git clone https://github.com/johnneerdael/johnneerdael-netskope-mcp.git cd netskope-mcp - 安装项目依赖:
npm install - 构建项目:
npm run build
服务器配置
MCP 客户端需要配置 MCP 服务器的启动命令 (command) 及其参数 (args) 才能与 netskope-mcp 服务器建立连接。以下是各种环境下的 MCP 服务器配置示例 (JSON 格式),请根据您的实际使用环境选择合适的配置,并添加到 MCP 客户端的配置文件中。
Windows (WSL)
- NPM 安装:
{ "mcpServers": { "netskope-mcp": { "command": "wsl.exe", "args": [ "bash", "-c", "source ~/.nvm/nvm.sh && NETSKOPE_BASE_URL=https://your-tenant.goskope.com NETSKOPE_API_KEY=your-token npx -y @johnneerdael/netskope-mcp" ], "comment": "启动命令,使用 WSL 运行 NPM 安装的 netskope-mcp 服务器。需要设置 NETSKOPE_BASE_URL 和 NETSKOPE_API_KEY 环境变量。" } } }
- 本地开发:
{ "mcpServers": { "netskope-mcp": { "command": "wsl.exe", "args": [ "bash", "-c", "cd /path/to/netskope-mcp && NETSKOPE_BASE_URL=https://your-tenant.goskope.com NETSKOPE_API_KEY=your-token node dist/cli.js" ], "comment": "启动命令,使用 WSL 运行本地开发的 netskope-mcp 服务器。需要将 '/path/to/netskope-mcp' 替换为实际的仓库路径,并设置 NETSKOPE_BASE_URL 和 NETSKOPE_API_KEY 环境变量。" } } }
Linux 和 macOS
- NPM 安装:
{ "mcpServers": { "netskope-mcp": { "command": "npx", "args": ["-y", "@johnneerdael/netskope-mcp"], "env": { "NETSKOPE_BASE_URL": "https://your-tenant.goskope.com", "NETSKOPE_API_KEY": "your-token" }, "comment": "启动命令,使用 npx 运行 NPM 安装的 netskope-mcp 服务器。需要在 env 中设置 NETSKOPE_BASE_URL 和 NETSKOPE_API_KEY 环境变量。" } } }
- 本地开发:
{ "mcpServers": { "netskope-mcp": { "command": "node", "args": ["dist/cli.js"], "cwd": "/path/to/netskope-mcp", "env": { "NETSKOPE_BASE_URL": "https://your-tenant.goskope.com", "NETSKOPE_API_KEY": "your-token" }, "comment": "启动命令,使用 node 运行本地开发的 netskope-mcp 服务器。需要将 '/path/to/netskope-mcp' 替换为实际的仓库路径,并在 env 中设置 NETSKOPE_BASE_URL 和 NETSKOPE_API_KEY 环境变量。" } } }
环境变量说明:
- 'NETSKOPE_BASE_URL': 您的 Netskope 租户 URL (例如: 'https://your-tenant.goskope.com').
- 'NETSKOPE_API_KEY': 您的 Netskope API Token.
注意: 请将 'https://your-tenant.goskope.com' 和 'your-token' 替换为您的实际 Netskope 租户 URL 和 API Token,并将 '/path/to/netskope-mcp' 替换为本地仓库的实际路径。
基本使用方法
- 启动 MCP 服务器: 根据上述服务器配置,MCP 客户端会在启动时自动运行 netskope-mcp 服务器。服务器将通过标准输入/输出 (stdio) 与 MCP 客户端进行通信。
- 使用 LLM 客户端与服务器交互: 您可以使用任何支持 MCP 协议的 LLM 客户端 (例如 Smithery) 连接到 netskope-mcp 服务器。客户端将通过 JSON-RPC 协议发送请求到服务器。
- 调用工具管理 NPA 资源: 通过 LLM 客户端,您可以调用 netskope-mcp 服务器提供的各种工具来管理 Netskope NPA 资源。例如,可以使用 'mcp_createPublisher' 工具创建新的发布者,或使用 'mcp_listPrivateApps' 工具列出私有应用程序。
- 处理服务器响应: 服务器会返回 JSON-RPC 响应,客户端需要解析响应内容,并根据响应状态进行错误处理或提取数据。
请参考仓库的 'README.md' 文件和 'src/examples/usage.ts' 文件,了解更多关于可用工具和使用示例的信息。
信息
分类
商业系统