MCP ZAP Server

io.github.dtkmn由 GitHub 账号 dtkmn 发布v0.17.1更新于 Nov 5, 2026

Safe, self-hosted ZAP operator for guided AI security scans and reports.

概览

AI 生成的概览

自托管的 OWASP ZAP MCP 操作端,让助手执行受引导的 Web 安全扫描、查看发现并生成报告。

可以做什么
  • 执行受引导的爬取与扫描:传统爬虫、AJAX Spider、Client Spider、被动与主动扫描,以及 API 架构导入
  • 查看扫描策略并配置目标认证配置档
  • 管理扫描队列与历史,包括状态、停止控制与恢复
  • 查看发现、基线与扫描历史,并生成和回读报告
  • 应用运维护栏:工具范围、运行时策略包、速率限制、审计事件与指标
适用场景
适合希望让 AI 代理在获得授权的 Web 应用上驱动 ZAP,并依赖受引导的默认设置与运维控制而非原始扫描器访问的场景。适用于本地或 Kubernetes 自托管部署,扫描结果与报告保留在自己的环境中。
运行要求
以本地 Docker 栈运行(Docker 20.10+ 及支持 --wait 的 Docker Compose v2),并与 ZAP 守护进程配合;需要支持 Streamable HTTP 与自定义请求头的 MCP 客户端。需要 MCP_API_KEY(客户端通过 X-API-Key 请求头发送)和 ZAP 守护进程的 ZAP_API_KEY;ZAP_API_URL 与 ZAP_API_PORT 指向单独运行的 ZAP。可选 JWT 模式,持久队列状态可选 Postgres。
安装前请注意
客户端必须持有 MCP_API_KEY 密钥并通过 X-API-Key 请求头发送,同时还需要 ZAP_API_KEY。主动扫描会向目标应用发送流量,只能扫描已获授权的系统;URL 校验默认阻止 localhost、私有网络与链路本地目标,放宽该限制会扩大暴露面。默认栈将端口绑定到回环地址。升级前请确认所部署的镜像版本确已发布。

安装

在 SourceWeft 中

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

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

其他 MCP 客户端

参照 仓库 中的启动说明。

README

[MCP ZAP Server logo]

MCP ZAP Server

Give AI agents a safe, self-hosted ZAP operator for guided web security scans, findings, reports, and production guardrails.

[GitHub stars] [GitHub forks] [GitHub tag] [GitHub license]

Note This project is not affiliated with or endorsed by the ZAP project. It is an independent implementation.

mcp-zap-server exposes ZAP through MCP over streamable HTTP so agentic tools can run operator-controlled security workflows without brittle glue scripts or unsafe scanner access.

Use it when you want:

  • safe agentic scanning with guided defaults for spider, active scan, passive scan, API imports, findings, and reports
  • operator control through API-key or JWT auth, tool scopes, runtime policy bundles, rate limits, and audit events
  • self-hosted deployment with Docker Compose for local adoption and Helm for Kubernetes
  • one guided tool catalog with queue-managed scan starts, findings baselines, reports and explicit operator recovery

Full documentation: danieltse.org/mcp-zap-server

An experimental headless Apple Silicon package bundles Java and ZAP for HTTP workflows. It is a maintainer-built local preview; public downloads are not available, and supplied previews are unsigned. The private ChatGPT connection guide explains Secure MCP Tunnel prerequisites and access to a local scanner.

Watch the demo: browser demo or YouTube

[MCP ZAP Server demo video thumbnail]

Quick Start

Prerequisites:

  • Docker 20.10+
  • Docker Compose v2 or newer (docker compose) with --wait and --wait-timeout support
  • your own MCP client with Streamable HTTP and custom-header support

This source selects image v0.17.1. Verify that the matching GitHub release and Linux AMD64/ARM64 images are published before starting it. Until then, use the published v0.16.0 release or build local source through the contributor setup. Read the 0.17.1 upgrade guide before changing an existing installation. Settings and selected versions are preserved; set IMAGE_TAG in .env deliberately when upgrading.

Prefer to ask Codex to handle setup? Manually install the optional MCP ZAP Connect plugin, then ask it to check prerequisites, start the Docker stack, configure your private MCP connection and verify status. The skill can help install missing prerequisites with your approval, then recheck and continue setup. Scanning is a separate request. The commands below remain available without the plugin.

For Cursor Desktop Free, follow the guided Cursor setup. Use a local Agent chat with available Cursor allowance to set up the scanner, check status, then request a demo crawl and report separately.

Claude Code local preview uses the same scanner and setup skill in a local Claude Code session.

For Claude Desktop Free, follow the download, setup and first-scan guide. The macOS MCPB preview adds agent-callable setup tools around the same Docker scripts and reuses existing installations. Choose a scanner release that includes the Desktop .mcpb, matching guide and checksum files. If those assets are not listed, use the local build instructions. This extension is separate from the Claude Code plugin.

bash
git clone https://github.com/dtkmn/mcp-zap-server.gitcd mcp-zap-server
./bin/bootstrap-local.sh --start

This creates missing settings, preserves existing keys and workspace data, and starts a versioned release image. It reports ready after container health and authenticated MCP checks pass. The packaged client uses * for the curated guided tools; run scans only when requested. Existing settings retain their permissions. See quick-start permissions for the default and optional per-client restrictions.

Use Self-Serve First Run for version selection, configuration, stopping/restarting, startup timeouts, and recovery. For source builds, use the contributor setup.

Connect your MCP client:

The stack runs the MCP server, ZAP, and demo targets. Install and configure your preferred MCP client separately.

After connecting, try this first prompt:

text
Use the guided ZAP tools to crawl http://juice-shop:3000. Wait for the crawland passive analysis to finish, show a findings summary, generate an HTMLreport, and read it back through MCP. Do not run an active scan.

Expect a completed crawl, a findings summary, and a report the client can read. Use the container URL http://juice-shop:3000 for this scan; the host preview http://localhost:3001 is for your browser. Finding counts vary; a connection or scan error is not a clean result.

The default stack binds published ports to loopback. Review Quick Start Security before changing access or scan-target settings. Agent install notes cover setup permissions and standalone OCI use.

Discovery Metadata

This source includes 0.17.1 MCP Registry metadata in .mcp/server.json. Metadata in source does not publish a registry version or image. Check the MCP Registry and use metadata from the same published version as the image you deploy. The image includes the MCP server name expected by registry and catalog tooling. The published 0.16.0 version and its immutable digest remain documented in the 0.16.0 release guide.

Docker Compose remains the easiest installation path because the MCP server is designed to operate with a ZAP sidecar and explicit auth keys. The OCI package metadata is for advanced standalone installs where ZAP is already running and reachable from the MCP container.

What You Get

  • Guided scans: intent-first tools for spider, active scan, passive scan, API imports, findings, reports, and scan history.
  • Guided tool catalog: policy inspection, authentication setup and queued scan operations with status and stop controls.
  • Authentication: API key mode by default, optional JWT mode with refresh and revocation support.
  • Runtime policy bundles: configured dry-run and enforcement modes for guided tool calls.
  • Scan queue and history: queued active, traditional spider, AJAX Spider, and Client Spider jobs with claim-based recovery, durable Postgres state, and evidence export.
  • Extension contracts: experimental policy, protection, evidence metadata, and extension metadata APIs with sample extension packaging.
  • Operational guardrails: request body limits, rate limits, workspace quotas, tool-scope authorization, structured logs, metrics, and audit events.
  • Deployment paths: local Docker Compose, published JVM container images, and Helm charts for Kubernetes.

See the Client Spider guide for browser setup, authenticated guided crawling and reports.

Version 0.17.1

The 0.17.1 release and upgrade guide describes neutral recorded-findings responses, authoritative explicit target denies, permission-aware next actions, and the local client setup options. Publication of the tag, images, registry version and Desktop downloads must be verified separately in GitHub Releases. Use a version with verified published images until the matching distribution is available. The v0.17.0 GitHub release is incomplete: its Desktop assets are absent and its image-release workflow did not complete. See the upgrade guide for availability checks.

Version 0.16.0

See the 0.16.0 release and upgrade guide for that release's behavior and requirements.

Version 0.15.0

See the 0.15.0 release and upgrade guide for that release's behavior and requirements.

Version 0.14.0

See the 0.14.0 release and upgrade guide for that release's behavior and requirements.

The release notes archive and changelog cover earlier versions. For changes to older MCP integrations, use Upgrading to Guided Tools. Verify the matching image and distribution in GitHub Releases before deployment.

Security Defaults

The default posture is intentionally conservative:

  • api-key mode is the base runtime default.
  • none mode is for explicit local dev/test only.
  • Docker Compose binds published ports to loopback by default.
  • The Java 25 JVM image uses a digest-pinned distroless runtime with no shell or package manager; debug it through logs, metrics, and external diagnostic containers rather than installing tools into the application container.
  • URL validation blocks localhost, private networks, and link-local targets by default.
  • Target authentication is optional and profiles default to an empty list. When enabled, guided auth binds an exact server-side credential reference and login settings to one approved origin; callers provide only profileId and targetUrl.
  • Public auth exchange endpoints are rate-limited.
  • MCP request bodies have a hard early size cap.

For a first private AWS deployment without Kubernetes, use AWS EC2 with Docker Compose and its standalone example.

For Kubernetes, use the EKS infrastructure starter to create a dedicated evaluation cluster in an existing VPC, then deploy with the existing Helm chart. Follow the walkthrough for network configuration, JWT authentication, persistent storage and deployment checks.

Production and shared deployments should review:

Architecture

mermaid
flowchart LR  Client["Your MCP Client"] -->|"MCP over Streamable HTTP"| MCP["MCP ZAP Server"]  MCP -->|"ZAP API"| ZAP["ZAP"]  ZAP -->|"scan"| Target["Authorized target app"]  MCP -->|"reports / findings / history"| Evidence["Evidence + reports"]

For multi-replica queueing, durable Postgres state, claim recovery, and ingress affinity, use the operations docs instead of this README:

Extension Model

The extension API exposes selected contracts for policy, protection, evidence and metadata integrations:

Extensions do not add runtime multi-engine support. Additional scanner engines require their own adapters and explicit capability boundaries.

Documentation Map

Start here:

Scanning:

Operations:

Open Source Core And Extension Model

mcp-zap-server is the Apache-2.0-licensed open-source core. It is intended to be useful on its own for self-hosted MCP and ZAP workflows.

Private or enterprise capabilities may be built as separate extensions around this core. Those extensions are not required to run the OSS project, and enterprise implementation code is not shipped in this repository.

The boundary is intentional:

  • this repository remains the public OSS distribution
  • extension points should be documented and kept stable where practical
  • private extensions must not weaken the security, licensing, or usability of the OSS core
  • security scanning and open-source program entitlements for this repository apply only to this public project

Contributing And Support

If this project saves you time or becomes part of your security workflow, you can sponsor the maintainer to support ongoing maintenance.

Agentic Lab offers optional paid support for teams adopting the public core in production. Commercial support is separate from the Apache-2.0-licensed OSS distribution, and the public core should remain usable without private extensions or paid services.

Contact Agentic Lab

License

Apache License 2.0. Copyright 2025-2026 Daniel Tse. See LICENSE.

来源:README.md,提交 07e2bfc

工具

0
SourceWeft 曾在隔离沙箱中以无凭据方式启动该软件包一次,以列出其工具,但未能完成:该软件包类型无法在沙箱中运行。

版本历史

5
  1. v0.17.1最新Oct 22, 2026
  2. v0.16.0Oct 15, 2026
  3. v0.15.0Oct 8, 2026
  4. v0.14.0Oct 3, 2026
  5. v0.11.0Sep 16, 2026

评分

已满足适用检查项的 50%

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

  • 近 30 天内可连通25 分

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

  • 已声明认证方式10 分

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

  • 已列出工具15 分

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

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