JFrog MCP Server 使用说明
项目简介
JFrog MCP Server 是一个实验性的 Model Context Protocol (MCP) 服务器,旨在演示 JFrog 平台与 MCP 的集成能力。它允许大型语言模型(LLM)通过标准化的 MCP 协议,安全地访问和操作 JFrog 平台的各项功能,例如 Artifactory 仓库管理、构建信息查询、运行时集群监控、工件搜索和编目等。
主要功能点
- 仓库管理: 创建和管理本地、远程和虚拟仓库,支持多种软件包类型。
- 构建跟踪: 查询和检索 JFrog 平台上的构建信息,方便 LLM 理解软件构建流程。
- 运行时监控: 监控 JFrog Runtime 集群和运行中的容器镜像,获取运行时环境信息。
- 工件搜索: 使用强大的 AQL (Artifactory Query Language) 查询语言搜索工件和构建信息。
- 编目和管理: 访问软件包信息、版本、漏洞信息和管理状态,了解软件供应链安全。
- 访问控制: 管理 JFrog 项目和环境。
- Mission Control: 查看关联的 JFrog 平台实例。
安装步骤
-
前提条件:
- 确保已安装 Node.js v18 或更高版本。
- 如果使用 Docker 部署,请安装 Docker。
- 拥有一个可用的 JFrog 平台实例,并具备相应的 API 访问权限。
- 获取 JFrog 平台访问令牌 (Access Token) 或身份令牌 (Identity Token)。
-
构建方式:
-
克隆仓库: 'git clone https://github.com/jfrog/mcp-jfrog.git'
-
进入项目目录: 'cd mcp-jfrog'
-
选择构建方式:
- Docker 镜像: 运行 'docker build -t mcp/jfrog -f Dockerfile .'
- npm 模块: 运行 'npm i && npm run build'
-
服务器配置
MCP 客户端需要配置 MCP 服务器的启动命令及其参数,以下是针对 Cursor 和 Claude Desktop 客户端的配置示例。请根据您的实际部署方式选择相应的配置,并将占位符替换为您的 JFrog 平台信息。
Cursor 客户端配置 ( '~/.cursor/mcp.json' ):
{ "mcpServers": { "JFrog": { "command": "env", "args": [ "JFROG_URL=<YOUR_INSTANCE_URL>", // 替换为您的 JFrog 平台 URL,例如:https://acme.jfrog.io "JFROG_ACCESS_TOKEN=<YOUR_JFROG_ACCESS_TOKEN>", // 替换为您的 JFrog 访问令牌 "node", "<FULL_PATH_TO>/dist/index.js" // 替换为项目 dist/index.js 文件的完整路径 (npm 模块构建方式) ] } } }
Docker 部署方式 (Cursor 和 Claude Desktop 客户端通用配置):
{ "mcpServers": { "jfrog": { "command": "docker", "args": [ "run", "--rm", "-i", "-e", "JFROG_ACCESS_TOKEN", "-e", "JFROG_URL", "mcp/jfrog" ], "env": { "JFROG_ACCESS_TOKEN": "<YOUR_TOKEN>", // 替换为您的 JFrog 访问令牌 "JFROG_URL": "https://your-instance.jfrog.io" // 替换为您的 JFrog 平台 URL } } } }
Claude Desktop 客户端配置 ( 'claude_desktop_config.json' ):
配置方法与 Cursor 客户端类似,根据 npm 模块或 Docker 部署方式选择相应的 JSON 配置,并添加到 'claude_desktop_config.json' 文件中。
基本使用方法
配置完成后,在支持 MCP 协议的 LLM 客户端 (如 Cursor, Claude Desktop) 中,您可以使用自然语言指令调用 JFrog MCP Server 提供的工具,例如:
- "列出 Artifactory 中所有的 Maven 仓库"
- "查询构建名称为 'my-build-123' 的构建信息"
- "在 Artifactory 中创建一个名为 'my-local-repo' 的本地 Maven 仓库"
- "搜索 CVE 编号为 CVE-2023-XXXX 的漏洞信息"
LLM 客户端会将这些自然语言指令转换为对 MCP Server 工具的调用,并利用 JFrog MCP Server 返回的上下文信息进行后续操作。
注意: 本项目为实验性项目,可能存在不稳定性和功能不完善之处。使用时请注意阅读 Disclaimer 部分。
信息
分类
开发者工具