Snyk API & Web MCP Server

io.github.snyk由 GitHub 账号 snyk 发布v1.1.2更新于 Oct 24, 2026

MCP server for Snyk API & Web — DAST scanning, findings management, and vulnerability triage

已验证STDIO仅桌面开发者工具安全与监控

概览

AI 生成的概览

将 AI 助手连接到 Snyk API & Web(原 Probely),用于接入扫描目标、运行 DAST 扫描并分类处理漏洞发现。

可以做什么
接入并配置扫描目标,包括基于 OpenAPI、Swagger 或 Postman 定义的 API 目标,以及带登录流程或简单表单登录(probely_configure_form_login)的 Web 目标。对已配置目标运行 DAST 安全扫描。查看并分类处理扫描产生的漏洞发现。通过 playwright-cli 或 Playwright MCP 在真实浏览器中录制 Web 登录流程,再以 Probely 序列录制格式上传。
适用场景
适合希望由助手在 Snyk API & Web 中搭建并执行动态应用安全测试的场景,例如接入新的 API 或需登录的 Web 应用,然后查看并分类处理发现的问题,而无需切换到 Web 控制台。
运行要求
本地 Python 进程(Python 3.10+),通常通过 uvx 启动。需要 Snyk API & Web API 密钥,放在 MCP_SAW_API_KEY 环境变量中(也可用 .env 文件或配置文件)。录制 Web 登录需要 Node.js 18+ 与 npm 及 playwright-cli,或将 Playwright MCP 作为第二个服务器;仅用表单登录时可不装。需要访问 Snyk API & Web 平台的网络连接。
安装前请注意
需要 Snyk API & Web API 密钥(MCP_SAW_API_KEY);README 建议使用自定义角色、权限受限的密钥,而非高权限或全局密钥,并提醒不要提交明文密钥。助手会创建和修改扫描目标并上传登录序列,扫描会向所配置的目标发送流量。被扫描 Web 应用的登录凭据会在提示中传入并由浏览器自动化使用。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Snyk API & Web MCP Server,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

[SAW MCP Banner]

Snyk API & Web MCP Server

Connect your AI coding assistant to Snyk API & Web so it can onboard scan targets, configure authentication, run DAST scans, and triage findings — all through natural language.

Built on FastMCP 2.0, works with Cursor, Claude Code, Devin, and any MCP-compatible client.

Naming note: Snyk API & Web was formerly known as Probely. The API endpoints (api.probely.com), web console (plus.probely.app), and MCP tool names (probely_*) still use the legacy domain and prefix. Environment variables and config sections use the new SAW / saw naming.

See USER_GUIDE.md for usage, examples, and tool reference.

This repository is closed to public contributions. We appreciate community interest, but we do not accept pull requests, issues, or other contributions from external contributors at this time. If you have found a security issue, please see SECURITY.md.

Requirements

  • Python 3.10+
  • Node.js 18+ and npm (for web target login recording via playwright-cli; optional if using Playwright MCP instead)
  • Snyk API & Web API key

Quick Start

1. Get Your API Key

Go to https://plus.probely.app/api-keys and create an API key.

Important

Use a custom role, limited-scope API key for the Snyk API & Web MCP Server. Create the key only with the permissions required for the intended actions. Do not use a highly privileged or global API key, as this can affect your entire account and its resources.

2. Install

Cursor Marketplace (recommended for Cursor users)

Install directly from the Cursor Marketplace:

  1. Open the Snyk API & Web plugin page and click Install, or go to Settings → Plugins and search for Snyk API & Web
  2. Set your API key as an environment variable before launching Cursor:
    bash
    export MCP_SAW_API_KEY="your-api-key"

The plugin installs the MCP server, rules, and skills automatically.

Devin MCP Marketplace (Devin users)

Install directly from Devin's MCP Marketplace:

  1. Open Devin and go to Settings → Configuration.
  2. Under MCP servers, click Open MCP Marketplace.
  3. Search for Snyk API & Web and click Install.
  4. When prompted, enter your API key.

No manual configuration needed — Devin handles the setup automatically.

One-command install (any MCP client)
bash
uvx --from git+https://github.com/snyk/saw-mcp.git saw-mcp

Or add to your MCP client configuration:

json
{  "mcpServers": {    "SAW": {      "command": "uvx",      "args": ["--from", "git+https://github.com/snyk/saw-mcp.git", "saw-mcp"],      "env": {        "MCP_SAW_API_KEY": "your-api-key"      }    }  }}
Alternative installation methods

Install from release tarball

bash
tar -xzvf SnykAPIWeb-<version>.tgzcd SnykAPIWebpython -m venv venvsource venv/bin/activate # On Windows: venv\Scripts\activatepip install -r requirements.txt

Download from Releases and replace <version> with the actual version number (e.g., 1.0.0).

Clone from source

bash
git clone https://github.com/snyk/saw-mcp.gitcd saw-mcppython -m venv venvsource venv/bin/activate # On Windows: venv\Scripts\activatepip install -r requirements.txt

3. Store Your API Key

The server reads your API key from (in order of precedence): environment variable MCP_SAW_API_KEY → .env file → config/config.yaml.

Option A: Environment variable (recommended for Marketplace / uvx installs)

bash
export MCP_SAW_API_KEY="your-api-key"

Option B: .env file (recommended for source installs)

Run the setup script (prompts securely, no key in shell history):

bash
./scripts/setup-env.sh

Or pipe from a secret manager: op read 'op://vault/item/key' | ./scripts/setup-env.sh

This writes a .env file in the project root (gitignored). The server loads it automatically at startup.

Option C: Secret reference (avoids storing the key in plaintext anywhere)

MCP_SAW_API_KEY and the config api_key field also accept a reference that is resolved at runtime, so the literal key never sits in a file:

bash
export MCP_SAW_API_KEY="op://vault/saw-mcp/api-key"   # resolved via the 1Password CLI (`op`)export MCP_SAW_API_KEY="env:MY_SAW_KEY"               # read from another environment variable

Avoid committing a plaintext key. config/config.yaml is gitignored, and a plaintext key read from it logs a warning at startup.

4. Install Browser Automation (web targets with login)

Web target onboarding records login sequences in a real browser. Preferred for coding agents: playwright-cli via Shell:

bash
npm install -g @playwright/cli@latestplaywright-cli install-browser chromium

Or run ./scripts/setup-playwright.sh from a cloned repo.

Alternative: install Playwright MCP as a second MCP server (better for MCP-only clients without Shell). See Web target prerequisites.

5. Configure Your IDE

If you installed from the Cursor or Devin marketplace, configuration is automatic. For other clients, add to your MCP client configuration:

json
{  "mcpServers": {    "SAW": {      "command": "uvx",      "args": ["--from", "git+https://github.com/snyk/saw-mcp.git", "saw-mcp"],      "env": {        "MCP_SAW_API_KEY": "your-api-key"      }    }  }}

For host-specific setup see the Installation Guides.

Additional configuration options
  • Override the base URL: add "MCP_SAW_BASE_URL": "https://your-instance-url" to the env block.
  • Use a config file: set "MCP_SAW_CONFIG_PATH": "/path/to/config.yaml" instead.
  • Set log level: add "MCP_SAW_LOG_LEVEL": "DEBUG" (options: DEBUG, INFO, WARNING, ERROR, CRITICAL; default: INFO).

6. Start Using

Ask your AI assistant to:

  • "Configure a Snyk API & Web API target from this OpenAPI schema / Swagger document / Postman collection."
  • "Configure a Snyk API & Web web target for this authenticated application."

See prompts.md for a full catalog of example prompts — from simple one-liners to complex multi-target workflows.

Web target prerequisites

The SAW MCP server talks to the Snyk API & Web platform — it does not include a browser. To onboard web targets with login sequences, the AI needs browser automation via one of:

PathBest forSetup
playwright-cli (preferred)Cursor, Devin, Claude Code, Cloud Agents with Shellnpm install -g @playwright/cli@latest && playwright-cli install-browser chromium
Playwright MCP (fallback)MCP-only clients without Shell (e.g. Claude Desktop)Add Playwright MCP to your IDE's MCP config

Workflow:

  1. Prompt with the target URL and credentials — e.g. "Add target example.com with credentials [email protected] / password123".
  2. The AI records the login in a browser (playwright-cli or Playwright MCP).
  3. SAW MCP tools create the target and upload the sequence in the Probely sequence-recorder format.

Without browser automation, the AI falls back to form login (probely_configure_form_login) — simple single-page login only; no multi-step flows or 2FA.

See the Cursor installation guide for setup details.

IDE Integration

Detailed per-host guides live in docs/installation-guides/:

HostGuide
Cursorinstall-cursor.md
Claude Desktopinstall-claude.md
Devin / Other IDEsinstall-devin.md

Packaging

bash
bash scripts/package.sh

Creates dist/SnykAPIWeb-<version>.tgz (version from snyk_apiweb/__init__.py).

Development & Testing

Run the Server (standalone)

Running the server directly starts it and waits for an MCP client connection. This is mainly useful for development and debugging:

bash
./venv/bin/python -m snyk_apiweb.server

Development Mode (hot reload)

For active development with automatic reload on file changes:

bash
./scripts/dev.sh

License

This project is licensed under the Apache License 2.0.

来源:README.md,提交 9b687c6

工具

0
SourceWeft 尚未在沙箱中启动过该软件包,因此其工具未知。

版本历史

1
  1. v1.1.2最新Sep 16, 2026

评分

已满足适用检查项的 50%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分