Token导航 LogoToken导航TokenDH.com
Greenbone MCP logo
安全风控未说明官方级别未说明来源级核验

Greenbone MCP

MCP Server

GreenboneMCP是一个通过GMP协议连接AI客户端与Greenbone/OpenVAS的模型上下文协议服务器,支持扫描创建、监控、报告获取及差异比较等漏洞管理工作流。

工具数

11

提示词数

0

GitHub Stars

2

资源数

0
安全Python自动化

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

matteocolazilli

提供方

matteocolazilli

最后核验

2026/5/17 20:23

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

GreenboneMCP

MCP(模型上下文协议)服务器,通过GMP将AI客户端连接到Greenbone/OpenVAS(python-gvm).

这个项目是什么

GreenboneMCP 在Greenbone/OpenVAS中公开用于扫描/报告工作流的MCP工具,因此助手可以:

  • 创建并启动扫描,
  • 监视扫描进度,
  • 停止扫描,
  • 获取报告,
  • 比较运行之间的报告增量。

服务器运行在 stdio 交通和会谈 gvmd 通过Unix套接字。

项目状态

这个项目是我硕士论文的一部分,目前是概念验证(PoC)。

只有当有明确的社区/用户兴趣时,它才能进一步发展。

欢迎投稿:欢迎开放 问题 并提交 拉取请求(参见 贡献 下面的部分。)

服务器暴露的工具

扫描工作流工具

这些总是注册的:

  • start_scan
  • scan_status
  • fetch_latest_report
  • restart_scan
  • delta_report

检查/控制工具

这些总是注册的:

  • get_targets
  • get_target
  • get_tasks
  • get_port_lists
  • start_task
  • stop_task

项目结构

src/
├── main.py                     # App entrypoint (stdio MCP server)
├── constants.py                # Default UUIDs and report format constants
├── config/
│   ├── gvm_client_config.py    # Env-based GVM client settings (USERNAME, PASSWORD, ...)
│   └── logging_config.py       # Logging configuration settings
├── core/
│   └── mcp_server.py           # MCP wiring, GVM connection, tool registration
├── services/
│   └── gvm_client.py           # Typed wrapper around python-gvm + XML parsing
├── tools/
│   ├── vm_workflow_tools.py      # VM workflow orchestration tools
│   ├── inspection_control_tools.py # Inspection/control tools for existing scan state
│   └── utils/
│       ├── constants.py            # Tool-scoped constants (scanner/config/port list IDs, formats)
│       └── helpers.py              # Internal parsing/formatting helpers for tool outputs
└── models/
    └── generated/             # Auto-generated dataclasses (xsdata output)

需求

  • Docker引擎+Docker编写插件
  • 具有可访问权限的Greenbone/OpenVAS实例 gvmd UNIX套接字
  • 有效的GMP证书

安装

兼容性

此服务器仅通过容器部署的Greenbone/OpenVAS进行了测试,特别是具有官方容器设置的Greenbone社区版:https://greenbone.github.io/docs/latest/22.4/container/

先决条件

通过在您拥有的目录中执行以下命令,确保官方Greenbone Community Edition容器设置正在运行 docker-compose.yml 对于Greenbone:

docker compose -f 
/docker-compose.yml up -d

备注:官方Greenbone作曲设置使用 gvmd_socket_vol 安装在 /run/gvmd 在容器中。 使用默认的组合配置,此命名卷通常可用作:

greenbone-community-edition_gvmd_socket_vol.

在这个项目中,使用同名卷来访问 gvmd MCP服务器容器中的套接字。

1) 克隆此存储库

git clone https://github.com/matteocolazilli/GreenboneMCP.git
cd GreenboneMCP

2) 构建此MCP映像

docker build -t greenbonemcp:latest .

3) 创建 .env 配置和设置配置值

cp .env.example .env

编辑 .env 使用您的凭据和所需的设置。

你可以用这个 .env 通过在运行时传递它 --env-filedocker run 命令。

服务器从以下环境变量中读取配置,如果不设置,则恢复为默认值:

  • USERNAME:GMP用户名(默认值: admin)
  • PASSWORD:GMP密码(必填:无默认值,必须设置)
  • LOG_LEVEL:应用程序日志级别(默认值: INFO)

4) 配置MCP客户端并运行服务器

根据其文档配置您的MCP客户端/代理,以使用以下内容运行GreenboneMCP服务器 docker run 命令:

docker run 
  --rm -i 
  --env-file 
 
  --name greenbonemcp 
  --volume greenbone-community-edition_gvmd_socket_vol:/run/gvmd 
  greenbonemcp:latest 

备注:the --env-file 路径必须指向 .env 您在步骤3中创建的。

5) 享受!

使用您的MCP兼容助手通过此服务器提供的工具与OpenVAS进行交互!

贡献

  • 为bug、想法或功能请求打开问题。
  • 打开一个包含重点更改和清晰描述的Pull Request。

欢迎并鼓励社区捐款。

工具模块惯例

为了保持工具模块的可维护性:

  • 保留MCP工具处理程序 src/tools/*_tools.py
  • 将非工具辅助函数(解析、格式化、输出整形)保存在 src/tools/utils/ (例如 src/tools/utils/helpers.py)
  • 使用 src/services/gvm_client.py 用于GMP交互原语,并在工具处理程序中保留编排逻辑

开发新工具

如果您想添加新的MCP工具(例如通过包装其他工具 python-gvm 方法),您可能需要新的XML响应类型模型。

此项目包含以下模型 src/models/generated.

添加新的数据类(当前方法)

目前,当您需要新的数据类用于其他GMP响应时,请手动添加它们。

推荐工作流程:

  1. 收集您想要支持的GMP方法的代表性XML响应。
  2. 在中使用现有模型 src/models/generated 作为命名、键入和结构的参考。
  3. 手动创建/更新数据类以匹配所需的XML形状。

gvm-tools / gvm-pyshell 是从Greenbone实例中获取真实XML响应样本的实用方法。

许可证

该项目已获得许可 GNU GPL v3.0或更高版本.

LICENSE.md 获取完整的许可证文本。

第三方通知

该项目包括并依赖于第三方开源软件。 看 THIRD_PARTY_NOTICES.md 有关直接依赖关系及其许可证的详细信息。

目录标签

目录标签

安全Python自动化漏洞管理本地部署AI集成安全扫描自动化工具GMP协议

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

none

工具数量(toolCount,工具数)

11

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明none部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP