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

Insight App Sec MCP

MCP Server

InsightAppSec MCP Server 是一个模型上下文协议服务器,为AI助手提供访问Rapid7 InsightAppSec API的能力,用于应用程序安全扫描、漏洞管理和报告生成。

工具数

56

提示词数

0

GitHub Stars

1

资源数

0
安全TypeScriptClaudeClaude DesktopClaude

安装说明

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

作者 / 组织

wagonbomb

提供方

wagonbomb

最后核验

2026/5/17 20:22

快速接入

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

详细介绍

InsightAppSec MCP服务器

模型上下文协议(MCP)服务器,为人工智能助手提供对Rapid7 InsightAppSec API的访问,用于应用程序安全扫描、漏洞管理和报告。

概述

此MCP服务器使Claude等AI助手能够与Rapid7 InsightAppSec交互,使您能够:

  • 管理应用程序及其安全配置
  • 启动并监控安全扫描
  • 查询和分类漏洞
  • 生成安全报告
  • 自动安排扫描时间
  • 搜索所有InsightAppSec资源
  • 配置身份验证 (OAuth、基于表单、宏、流量文件)
  • 管理令牌替换 (CSRF、会话令牌、动态参数)

先决条件

  • Node.js 18.0.0或更高版本
  • 具有API访问权限的Rapid7 InsightAppSec帐户
  • 来自的API密钥 Rapid7洞察平台

安装

来源

# Clone the repository
git clone https://github.com/yourusername/insightappsec-mcp.git
cd insightappsec-mcp

# Install dependencies
npm install

# Build the project
npm run build

配置

创建 .env 基于所提供模板的文件:

cp .env.example .env

编辑 .env 使用您的凭据文件:

INSIGHTAPPSEC_API_KEY=your-api-key-here
INSIGHTAPPSEC_REGION=us

支持的地区:

地区代码
美国us
欧洲eu
亚太地区ap
加拿大ca
澳大利亚au

使用Claude Desktop

将以下内容添加到您的Claude Desktop配置文件中:

窗户: %APPDATA%\Claude\claude_desktop_config.json macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "insightappsec": {
      "command": "node",
      "args": ["C:/path/to/insightappsec-mcp/build/index.js"],
      "env": {
        "INSIGHTAPPSEC_API_KEY": "your-api-key-here",
        "INSIGHTAPPSEC_REGION": "us"
      }
    }
  }
}

重新启动Claude Desktop以加载MCP服务器。

可用工具

应用程序管理

工具说明
list_apps列出所有具有分页和排序功能的应用程序
get_app获取特定应用程序的详细信息
create_app创建新应用程序
update_app更新应用程序名称或描述
delete_app删除应用程序和所有相关数据
manage_app_tags在应用程序中添加或删除标签

扫描操作

工具说明
list_scans具有分页和筛选功能的列表扫描
get_scan获取特定扫描的详细信息
submit_scan根据扫描配置提交新的扫描
delete_scan删除失败的扫描
control_scan暂停、恢复、停止或取消正在运行的扫描
get_scan_execution_details获取扫描的实时执行指标
get_scan_engine_events获取扫描的引擎事件日志

扫描配置

工具说明
list_scan_configs列出所有扫描配置
get_scan_config获取特定扫描配置的详细信息
create_scan_config创建新的扫描配置
update_scan_config更新扫描配置设置
delete_scan_config删除扫描配置

漏洞管理

工具说明
list_vulnerabilities使用分页和排序列出漏洞
get_vulnerability获取有关漏洞的详细信息
update_vulnerability更新漏洞状态或严重性
get_vulnerability_discoveries获取漏洞的发现历史记录
list_vulnerability_comments列出对漏洞的所有评论
add_vulnerability_comment为漏洞添加注释

调度和自动化

工具说明
list_schedules列出所有扫描计划
get_schedule获取特定日程的详细信息
create_schedule创建定期扫描计划
update_schedule更新计划频率或时间
delete_schedule删除扫描计划

遮光窗

工具说明
list_blackouts列出所有遮光窗
get_blackout获取特定遮光窗的详细信息
create_blackout创建遮光窗口以防止扫描
update_blackout更新遮光窗设置
delete_blackout删除遮光窗口

报告

工具说明
list_reports列出所有生成的报告
generate_report生成新的漏洞报告
get_report_status检查报告生成的状态

搜索

工具说明
search使用DSL查询语法在所有InsightAppSec资源中进行通用搜索

基础设施

工具说明
list_engines列出所有已注册的扫描引擎
get_engine获取特定扫描引擎的详细信息
list_engine_groups列出所有发动机组
get_engine_group获取特定发动机组的详细信息

文件管理

工具说明
list_files列出应用程序的所有文件(宏、流量、selenium等)
get_file按ID获取文件元数据
create_file创建文件元数据条目
upload_file_content上传二进制文件内容(base64编码)
delete_file删除文件
download_file以base64格式下载文件内容

支持的文件类型:

  • MACRO -记录的身份验证序列(.rec)
  • RECORDED_TRAFFIC -HTTP流量捕获(.har、.trec、.saz)
  • SELENIUM -浏览器自动化脚本(.html、.side)
  • CERTIFICATE -SSL证书(.pfx)
  • SWAGGER -API规范(.json、.yaml)
  • WSDL -Web服务定义(.wsdl)
  • GRAPHQL -GraphQL模式(.graphqls)

身份验证和令牌管理

工具说明
get_scan_config_options获取完整的扫描配置选项,包括身份验证设置
configure_form_auth配置基于表单的身份验证(用户名/密码)
configure_oauth配置OAuth 2.0身份验证
configure_token_replacement配置全局令牌提取/注入规则
configure_session_handling配置会话检测、Cookie、重新登录触发器
configure_csrf_handling配置自动CSRF令牌检测和注入
configure_macro_auth将宏文件链接到扫描配置以进行身份验证
configure_traffic_auth将流量文件链接到扫描配置以进行身份验证

对话示例

列出应用程序

“在InsightAppSec中显示我的所有应用程序”

助理将使用 list_apps 检索和显示您的应用程序。

启动安全扫描

“使用‘Production Web App’扫描配置启动扫描”

助理将:

  1. 使用 list_scan_configs 查找配置
  2. 使用 submit_scan 开始扫描
  3. 报告扫描ID和状态

检查漏洞状态

“显示所有高严重性漏洞”

助理将使用 search 使用DSL查询:

type: VULNERABILITY
query: vulnerability.severity='HIGH'

监视正在运行的扫描

“扫描abc-123的状态如何?”

助理将使用 get_scanget_scan_execution_details 显示:

  • 当前扫描状态
  • 进度百分比
  • 请求已完成
  • 到目前为止发现的漏洞

分类漏洞

“将漏洞xyz-789标记为误报,并添加注释解释原因”

助理将:

  1. 使用 update_vulnerability 将状态设置为 FALSE_POSITIVE
  2. 使用 add_vulnerability_comment 添加说明

安排定期扫描

“每周一凌晨2点为生产应用程序设置每周扫描”

助理将使用 create_schedule 与:

  • 频率: WEEKLY
  • 开始时间:下周一凌晨2:00 UTC

配置OAuth身份验证

“为API扫描设置OAuth客户端凭据身份验证”

助理将使用 configure_oauth 与:

  • 资助类型: CLIENT_CREDENTIALS
  • 令牌URL、客户端ID、客户端密钥

为CSRF设置令牌替换

“配置扫描以自动处理CSRF令牌”

助理将使用 configure_csrf_handling 与:

  • auto_detect: true
  • 令牌名称的可选正则表达式模式

上传身份验证宏

“上传我录制的登录宏进行扫描”

助理将:

  1. 使用 create_file 创建元数据(类型:MACRO)
  2. 使用 upload_file_content 具有base64编码的宏内容
  3. 使用 configure_macro_auth 将其链接到扫描配置

搜索查询语法

search 该工具支持强大的DSL来查询资源:

运算符

操作员描述示例
=等于vulnerability.severity='HIGH'
!=不等于scan.status!='COMPLETE'
>, =, 7.0
CONTAINS子字符串匹配app.name CONTAINS 'prod'
IN列表中的值vulnerability.status IN ['UNREVIEWED', 'VERIFIED']
AND, OR逻辑运算符severity='HIGH' AND status='UNREVIEWED'

可搜索资源类型

  • VULNERABILITY
  • SCAN
  • SCAN_CONFIG
  • APP
  • SCHEDULE
  • BLACKOUT
  • MODULE
  • ATTACK_TEMPLATE
  • ENGINE
  • ENGINE_GROUP

查询示例

# Find critical vulnerabilities in production apps
type: VULNERABILITY
query: vulnerability.severity='HIGH' AND app.name CONTAINS 'prod'

# Find running scans
type: SCAN
query: scan.status='RUNNING'

# Find scan configs without recent scans
type: SCAN_CONFIG
query: scan_config.last_scan_date "
  1. 配置扫描以使用它:
configure_macro_auth:
  scan_config_id: "uuid"
  macro_file_id: "uuid"
  replay_speed: 1.0

漏洞状态

状态描述
UNREVIEWED新漏洞,尚未分类
FALSE_POSITIVE确定为假阳性
VERIFIED确认为真正的漏洞
IGNORED已确认但已接受的风险
REMEDIATED已在应用程序中修复
DUPLICATE重复另一项发现

严重级别

严重性描述
SAFE无安全影响
INFORMATIONAL信息披露
LOW轻微安全问题
MEDIUM中等安全风险
HIGH严重安全漏洞

发展

项目结构

insightappsec-mcp/
├── src/
│   ├── index.ts              # Entry point
│   ├── config.ts             # Configuration management
│   ├── client/
│   │   └── api-client.ts     # HTTP client for InsightAppSec API
│   ├── schemas/
│   │   └── common.ts         # Shared Zod schemas
│   ├── tools/
│   │   ├── apps.ts           # Application management tools
│   │   ├── scans.ts          # Scan operation tools
│   │   ├── scan-configs.ts   # Scan configuration tools
│   │   ├── vulnerabilities.ts # Vulnerability management tools
│   │   ├── schedules.ts      # Schedule management tools
│   │   ├── blackouts.ts      # Blackout window tools
│   │   ├── engines.ts        # Engine management tools
│   │   ├── reports.ts        # Reporting tools
│   │   ├── search.ts         # Search tool
│   │   ├── files.ts          # File management tools
│   │   └── auth.ts           # Authentication configuration tools
│   └── utils/
│       └── response-formatter.ts  # MCP response formatting
├── build/                    # Compiled JavaScript output
├── package.json
├── tsconfig.json
└── .env.example

脚本

# Build the project
npm run build

# Run in development mode
npm run dev

# Type checking
npm run typecheck

# Run tests
npm test

添加新工具

  1. 在中创建或修改工具文件 src/tools/
  2. 使用 server.tool() 注册工具的方法:
server.tool(
  "tool_name",
  "Tool description",
  {
    param1: z.string().describe("Parameter description"),
    param2: z.number().optional().describe("Optional parameter"),
  },
  async ({ param1, param2 }) => {
    const result = await client.get("/endpoint");

    if (result.error) {
      return formatErrorResponse(result.error);
    }

    return formatResponse(result.data);
  }
);
  1. 导入并注册 src/index.ts

错误处理

服务器正常处理常见的API错误:

状态代码含义
400错误请求-检查参数
401身份验证失败-检查API密钥
403禁止访问-权限不足
404找不到资源
409资源冲突
422验证错误-检查请求正文
429速率受限-等待并重试
5xx服务器错误-稍后重试

错误响应包括:

  • 状态码
  • 错误信息
  • 相关ID(用于Rapid7支持)
  • 详细的错误信息(如果可用)

api参考

此MCP服务器包装 Rapid7 InsightAppSec API v1.

有关API的详细文档,请参阅:

许可证

麻省理工学院

贡献

欢迎投稿!请随时提交问题和拉取请求。

支持

  • 有关InsightAppSec API问题,请联系 Rapid7支持
  • 对于MCP服务器问题,打开GitHub问题

目录标签

目录标签

安全TypeScriptClaude应用安全本地部署漏洞管理安全扫描自动化测试安全报告

支持客户端

Claude DesktopClaude

接入字段

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

未说明

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

oauth

工具数量(toolCount,工具数)

56

资源数量(resourceCount,资源数)

0

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

0

权限和风险

未说明oauth部署方式未说明

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

安装前确认

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

仍需确认:installCommand

来源信息

继续浏览同类 MCP