安全扫描服务器

Snyk MCP Server是一个独立的模型上下文协议服务器,用于提供Snyk安全扫描功能,支持仓库安全扫描、项目扫描和Claude桌面集成。

  • by sammcj
  • JavaScript
  • 本地部署
  • 15 星标
  • 更新于
在 GitHub 查看 sammcj/mcp-snyk

使用说明

Snyk MCP服务器

用于Snyk安全扫描功能的独立模型上下文协议服务器。

警告:此MCP服务器当前处于ALPHA版本,尚未完成!

配置

更新您的Claude桌面配置(claude-config.json):

{
  "mcpServers": {
    "snyk": {
      "command": "npx",
      "args": [
        "-y",
        "github:sammcj/mcp-snyk"
      ],
      "env": {
        "SNYK_API_KEY": "your_snyk_token",
        "SNYK_ORG_ID": "your_default_org_id"  // Optional: Configure a default organisation ID
      }
    }
  }
}

使用实际的Snyk API令牌替换该令牌。组织ID可以通过多种方式配置:

  1. 在MCP设置中,通过 SNYK_ORG_ID (如上所示)
  2. 使用Snyk CLI: snyk config set org=your-org-id
  3. 直接在命令中提供

服务器将依次尝试这些方法,直到找到有效的组织ID。

验证配置

您可以通过要求Claude运行verify_token命令来验证您的Snyk令牌是否配置正确:

Verify my Snyk token configuration

这将检查您的令牌是否有效,并显示您的Snyk用户信息。如果您安装并配置了Snyk CLI,它还将显示您的CLI配置的组织ID。

特性

  • 使用GitHub/GitLab URL进行存储库安全扫描
  • Snyk项目扫描
  • 与Claude桌面集成
  • 令牌验证
  • 多个组织ID配置选项
  • Snyk CLI集成用于组织ID查找

用法

要扫描存储库,您必须提供其GitHub或GitLab URL:

Scan repository https://github.com/owner/repo for security vulnerabilities

重要提示:scan_repository命令需要实际的存储库URL(例如。,https://github.com/owner/repo).不要使用本地文件路径-始终使用GitHub或GitLab上的存储库URL。

对于Snyk项目:

Scan Snyk project project-id-here

组织ID配置

服务器将按以下顺序查找组织ID:

  1. 命令参数(如果提供)
  2. MCP设置环境变量(SNYK_ORG_ID)
  3. Snyk CLI配置(snyk config get org)

如果要覆盖配置的值,只需在命令中指定组织ID:

Scan repository https://github.com/owner/repo in organisation org-id-here

Snyk CLI集成

如果您安装了Snyk CLI(npm install -g snyk),服务器可以使用它来:

  • 获取默认组织ID
  • 当未提供MCP设置时,回退到CLI配置
  • 在令牌验证输出中显示CLI配置详细信息

这种集成使得在CLI和MCP服务器使用中更容易使用相同的组织ID。