MCP server for Rapid7 InsightVM vulnerability management
Project description
Rapid7 InsightVM MCP Server
MCP server for interacting with Rapid7 InsightVM on-premise instances.
Configuration
Authentication: InsightVM API v3 uses HTTP Basic Authentication (username/password). It's recommended to create a dedicated API user account in InsightVM with appropriate permissions rather than using a personal account.
Option 1: config.json
cp config.json.example config.json
# Edit config.json with your API user credentials
Option 2: Environment Variables
export INSIGHTVM_HOST="insightvm.example.com:3780"
export INSIGHTVM_USERNAME="api-user" # Dedicated API user account
export INSIGHTVM_PASSWORD="api-password"
export INSIGHTVM_VERIFY_SSL="true"
Installation
Option 1: Using uv (Recommended)
uv is a fast Python package manager. Install it first:
# macOS/Linux
curl -LsSf https://astral.sh/uv/install.sh | sh
# Windows
powershell -c "irm https://astral.sh/uv/install.ps1 | iex"
No additional installation needed - uvx will handle dependencies automatically.
Option 2: Using pip
pip install bibliocommons-mcp-insightvm
# or for development
pip install -e ".[dev]"
AI Client Setup
Quick Links: Amazon Q | Claude Desktop | VS Code | GitHub Copilot | Cline | Zed | Cursor | Kiro IDE | Kiro CLI
Amazon Q Developer (VS Code)
- Install the Amazon Q extension in VS Code
- Open VS Code Settings (JSON) and add:
{
"amazonQ.mcp.servers": {
"rapid7-insightvm": {
"command": "uvx",
"args": ["--from", "/absolute/path/to/rapid7-insightvm", "bibliocommons-mcp-insightvm"]
}
}
}
Alternative: Using python directly
{
"amazonQ.mcp.servers": {
"rapid7-insightvm": {
"command": "python",
"args": ["-m", "bibliocommons_mcp_insightvm"]
}
}
}
Claude Desktop
-
Open Claude Desktop configuration:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
- macOS:
-
Add the server configuration:
{
"mcpServers": {
"rapid7-insightvm": {
"command": "uvx",
"args": ["--from", "/absolute/path/to/rapid7-insightvm", "bibliocommons-mcp-insightvm"]
}
}
}
Alternative: Using python directly
{
"mcpServers": {
"rapid7-insightvm": {
"command": "python",
"args": ["-m", "bibliocommons_mcp_insightvm"]
}
}
}
VS Code (with MCP Extension)
- Install an MCP-compatible extension in VS Code
- Open VS Code Settings (JSON):
Cmd+Shift+P→ "Preferences: Open User Settings (JSON)" - Add the server configuration:
{
"mcp.servers": {
"rapid7-insightvm": {
"command": "uvx",
"args": ["--from", "/absolute/path/to/rapid7-insightvm", "bibliocommons-mcp-insightvm"]
}
}
}
Alternative: Using python directly
{
"mcp.servers": {
"rapid7-insightvm": {
"command": "python",
"args": ["-m", "bibliocommons_mcp_insightvm"]
}
}
}
GitHub Copilot (VS Code)
- Install GitHub Copilot extension in VS Code
- Open VS Code Settings (JSON) and add:
{
"github.copilot.chat.mcp.servers": {
"rapid7-insightvm": {
"command": "uvx",
"args": ["--from", "/absolute/path/to/rapid7-insightvm", "bibliocommons-mcp-insightvm"]
}
}
}
Alternative: Using python directly
{
"github.copilot.chat.mcp.servers": {
"rapid7-insightvm": {
"command": "python",
"args": ["-m", "bibliocommons_mcp_insightvm"]
}
}
}
Cline (VS Code Extension)
- Install the Cline extension in VS Code
- Open VS Code Settings (JSON) and add:
{
"cline.mcpServers": {
"rapid7-insightvm": {
"command": "uvx",
"args": ["--from", "/absolute/path/to/rapid7-insightvm", "bibliocommons-mcp-insightvm"]
}
}
}
Alternative: Using python directly
{
"cline.mcpServers": {
"rapid7-insightvm": {
"command": "python",
"args": ["-m", "bibliocommons_mcp_insightvm"]
}
}
}
Zed Editor
- Open Zed settings:
Cmd+,(macOS) orCtrl+,(Linux/Windows) - Navigate to "Language Models" → "Configure MCP Servers"
- Add the server configuration:
{
"mcpServers": {
"rapid7-insightvm": {
"command": "uvx",
"args": ["--from", "/absolute/path/to/rapid7-insightvm", "bibliocommons-mcp-insightvm"]
}
}
}
Alternative: Using python directly
{
"mcpServers": {
"rapid7-insightvm": {
"command": "python",
"args": ["-m", "bibliocommons_mcp_insightvm"]
}
}
}
Cursor IDE
- Open Cursor Settings (JSON):
Cmd+Shift+P→ "Preferences: Open User Settings (JSON)" - Add the MCP server configuration:
{
"mcp.servers": {
"rapid7-insightvm": {
"command": "uvx",
"args": ["--from", "/absolute/path/to/rapid7-insightvm", "bibliocommons-mcp-insightvm"]
}
}
}
Alternative: Using python directly
{
"mcp.servers": {
"rapid7-insightvm": {
"command": "python",
"args": ["-m", "bibliocommons_mcp_insightvm"]
}
}
}
Kiro IDE
- Open Kiro IDE settings
- Navigate to MCP Servers configuration
- Add the server:
{
"mcpServers": {
"rapid7-insightvm": {
"command": "uvx",
"args": ["--from", "/absolute/path/to/rapid7-insightvm", "bibliocommons-mcp-insightvm"]
}
}
}
Alternative: Using python directly
{
"mcpServers": {
"rapid7-insightvm": {
"command": "python",
"args": ["-m", "bibliocommons_mcp_insightvm"]
}
}
}
Kiro CLI
-
Create or edit the MCP configuration file:
- User level:
~/.kiro/settings/mcp.json - Project level:
<project-root>/.kiro/settings/mcp.json
- User level:
-
Add the server configuration:
{
"mcpServers": {
"rapid7-insightvm": {
"command": "uvx",
"args": ["--from", "/absolute/path/to/rapid7-insightvm", "bibliocommons-mcp-insightvm"]
}
}
}
Alternative: Using python directly
{
"mcpServers": {
"rapid7-insightvm": {
"command": "python",
"args": ["-m", "bibliocommons_mcp_insightvm"]
}
}
}
Configuration Notes
- Replace
/absolute/path/to/rapid7-insightvm/with the actual path to your server directory - Using
uvx(default): Automatically manages dependencies in isolated environments (likenpxfor Node.js) - Using
python(alternative): Requirespip install bibliocommons-mcp-insightvmfirst - After adding the configuration, restart your AI client for changes to take effect
Web UI with Swagger
A REST API with interactive Swagger documentation is available:
python -m bibliocommons_mcp_insightvm.webui
Access the Swagger UI at: [http://localhost:8000/docs]
The Web UI provides:
- Interactive API documentation
- Try-it-out functionality for all endpoints
- OpenAPI/Swagger specification
- REST API access to all MCP tools
Standalone MCP Server
python -m bibliocommons_mcp_insightvm
Available Tools
Assets
get_assets- List all assetsget_asset- Get asset by IDsearch_assets- Search assets with criteriaget_asset_vulnerabilities- Get vulnerabilities for an assetget_asset_vulnerability_solution- Get solution for asset vulnerability
Vulnerabilities
get_vulnerabilities- List vulnerabilitiesget_vulnerability- Get vulnerability by IDget_vulnerability_solutions- Get solutions for a vulnerability
Sites & Scans
get_sites- List all sitesget_site- Get site by IDget_scans- List scans for a siteget_scan- Get scan by IDstart_scan- Start a scan for a site
Scan Templates
get_scan_templates- List all scan templatesget_scan_template- Get scan template by ID
Scan Engines
get_scan_engines- List all scan enginesget_scan_engine- Get scan engine by ID
Reports
get_reports- List all reportsget_report- Get report by IDgenerate_report- Generate a reportget_report_instance- Get report instance details
Solutions
get_solution- Get solution by ID
Vulnerability Exceptions
get_vulnerability_exceptions- List vulnerability exceptionsget_vulnerability_exception- Get vulnerability exception by IDcreate_vulnerability_exception- Create vulnerability exceptiondelete_vulnerability_exception- Delete vulnerability exception
Asset Groups
get_asset_groups- List asset groupsget_asset_group- Get asset group by ID
Users
get_users- List all usersget_user- Get user by ID
Tags
get_tags- List all tagsget_tag- Get tag by ID
Shared Credentials
get_shared_credentials- List shared credentialsget_shared_credential- Get shared credential by ID
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file bibliocommons_mcp_insightvm-1.0.0.tar.gz.
File metadata
- Download URL: bibliocommons_mcp_insightvm-1.0.0.tar.gz
- Upload date:
- Size: 64.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7b4f5fdafcc760a0f896fc35a4c49bbf6da08cee462a5f513f27c1f4bd70dc68
|
|
| MD5 |
bda9ddccc14fd8577c13ae2ac4635bbd
|
|
| BLAKE2b-256 |
26591147983a663adba22200905b4b1e80096640afb8557615e694c287da11ff
|
File details
Details for the file bibliocommons_mcp_insightvm-1.0.0-py3-none-any.whl.
File metadata
- Download URL: bibliocommons_mcp_insightvm-1.0.0-py3-none-any.whl
- Upload date:
- Size: 56.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fc9310714617bd0b885d9faa084ebcd00b9d783aee0f17fdff48524a37c4bca4
|
|
| MD5 |
6c4a2ad461b066ad7146c78923d6beba
|
|
| BLAKE2b-256 |
957dff6504198f0d9b036a269beccaf482f766019ac060baf624539538450e23
|