blackduck-polaris-mcp-server

blackduck-polaris-mcp-server

An MCP server for Black Duck Polaris that enables AI coding assistants to trigger scans, manage findings, generate reports, and handle policies across SAST, SCA, and DAST tools.

Category
访问服务器

README

blackduck-polaris-mcp-server

npm version License: MIT Node.js

The most comprehensive MCP (Model Context Protocol) server for Black Duck Polaris. Trigger SAST/SCA/DAST scans, query findings, triage issues, generate and download reports (SBOM, SPDX, CycloneDX), manage policies, and more — all from your AI coding assistant.

Works With

Claude Code | Claude Desktop | GitHub Copilot | Copilot CLI | OpenCode | Cursor | Windsurf | VS Code (MCP extensions) | any MCP-compatible AI tool

Quick Start

Prerequisites

You need a Polaris API token. Generate one at Profile > Account > Access Tokens in your Polaris instance.

Claude Code

claude mcp add blackduck-polaris -e POLARIS_URL=https://your-instance.polaris.blackduck.com -e POLARIS_API_TOKEN=your-token -- npx blackduck-polaris-mcp-server

Claude Desktop (claude_desktop_config.json)

{
  "mcpServers": {
    "blackduck-polaris": {
      "command": "npx",
      "args": ["blackduck-polaris-mcp-server"],
      "env": {
        "POLARIS_URL": "https://your-instance.polaris.blackduck.com",
        "POLARIS_API_TOKEN": "your-token"
      }
    }
  }
}

VS Code (.vscode/mcp.json)

{
  "servers": {
    "blackduck-polaris": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "blackduck-polaris-mcp-server"],
      "env": {
        "POLARIS_URL": "https://your-instance.polaris.blackduck.com",
        "POLARIS_API_TOKEN": "your-token"
      }
    }
  }
}

Cursor (.cursor/mcp.json or ~/.cursor/mcp.json)

{
  "mcpServers": {
    "blackduck-polaris": {
      "command": "npx",
      "args": ["-y", "blackduck-polaris-mcp-server"],
      "env": {
        "POLARIS_URL": "https://your-instance.polaris.blackduck.com",
        "POLARIS_API_TOKEN": "your-token"
      }
    }
  }
}

GitHub Copilot CLI

Option 1 — Config file (~/.copilot/mcp-config.json):

{
  "mcpServers": {
    "blackduck-polaris": {
      "type": "local",
      "command": "npx",
      "args": ["blackduck-polaris-mcp-server"],
      "env": {
        "POLARIS_URL": "https://your-instance.polaris.blackduck.com",
        "POLARIS_API_TOKEN": "your-token"
      }
    }
  }
}

Option 2 — Inline for a single session:

copilot --additional-mcp-config '{"blackduck-polaris":{"type":"local","command":"npx","args":["blackduck-polaris-mcp-server"],"env":{"POLARIS_URL":"https://your-instance.polaris.blackduck.com","POLARIS_API_TOKEN":"your-token"}}}'

OpenCode

Option 1 — Interactive: Run opencode mcp add and follow the prompts.

Option 2 — Config file (~/.config/opencode/opencode.json or opencode.json in project root):

{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "blackduck-polaris": {
      "type": "local",
      "enabled": true,
      "command": ["npx", "-y", "blackduck-polaris-mcp-server"],
      "environment": {
        "POLARIS_URL": "https://your-instance.polaris.blackduck.com",
        "POLARIS_API_TOKEN": "your-token"
      }
    }
  }
}

Features — 66 Tools Across 10 Domains

Portfolio Navigation (8 tools)

Tool Description
polaris_list_portfolios List all portfolios
polaris_list_applications List applications in a portfolio
polaris_create_application Create new application
polaris_update_application Update application
polaris_delete_application Delete application
polaris_list_projects List projects in an application
polaris_create_project Create new project
polaris_list_branches List branches in a project

Findings & Triage (10 tools)

Tool Description
polaris_list_issues Query issues with RSQL filter (severity, tool, CWE, status)
polaris_get_issue Get full issue details
polaris_get_triage_history View triage audit trail
polaris_get_detection_history View detection change history
polaris_triage_issue Dismiss, change severity, assign, update status
polaris_list_occurrences List issue occurrences with filter
polaris_get_occurrence_snippet Get vulnerable source code snippet
polaris_get_remediation AI-assisted remediation guidance (Black Duck Assist)
polaris_submit_remediation_feedback Feedback on AI remediation quality
polaris_get_issue_counts Aggregated issue counts by severity/type

Scans / Test Management (8 tools)

Tool Description
polaris_trigger_scan Trigger SAST/SCA/DAST scan on a branch
polaris_list_tests List scans with filter
polaris_get_test Get scan status (QUEUED, RUNNING, COMPLETED, FAILED)
polaris_cancel_test Cancel a running scan
polaris_get_test_metrics Issue counts and metrics for a scan
polaris_get_test_comments Get scan comments
polaris_list_test_artifacts List scan artifacts
polaris_create_test_artifact Upload artifact for external analysis

Reports (6 tools)

Tool Description
polaris_list_report_types List all report types
polaris_generate_report Generate report (SBOM, SPDX, CycloneDX, executive summary, etc.)
polaris_list_reports List generated reports
polaris_get_report_status Check report generation status
polaris_download_report Download completed report
polaris_delete_report Delete a report

Supported report types: Developer Detail SCA, Developer Detail Static, Developer Detail Dynamic, Executive Summary, Issue Overview, Issue Summary, Security Audit, SBOM, SPDX v2.3, CycloneDX v1.4, CycloneDX v1.6, Standard Compliance, Standard Compliance Detail, Test Summary

Policies (7 tools)

Tool Description
polaris_list_issue_policies List issue policies
polaris_create_issue_policy Create policy (build break, email, Jira ticket)
polaris_update_issue_policy Update policy
polaris_delete_issue_policy Delete policy
polaris_list_scheduling_policies List test scheduling policies
polaris_create_scheduling_policy Create automated scan schedule
polaris_assign_policy Assign policy to project/application/branch

SCM / Repository Integration (7 tools)

Tool Description
polaris_list_repos List connected repositories
polaris_get_repo Get repository details
polaris_update_repo Update repository settings
polaris_list_repo_branches List repository branches
polaris_test_repo_connection Test SCM connectivity
polaris_bulk_import_repos Bulk import repos from SCM
polaris_list_scm_providers List supported SCM providers

Bug Tracking Integration (5 tools)

Tool Description
polaris_list_bugtracker_configs List Jira/Azure DevOps configurations
polaris_create_bugtracker_config Create bug tracker integration
polaris_update_bugtracker_config Update integration config
polaris_export_issues_to_tracker Export issues to Jira/Azure DevOps
polaris_test_jira_connection Test Jira connectivity

Audit (3 tools)

Tool Description
polaris_get_audit_logs Query audit logs (category, user, date range)
polaris_export_audit_logs Export audit logs as CSV
polaris_list_audit_categories List audit event categories

Identity & Access Management (9 tools)

Tool Description
polaris_list_users List organization users
polaris_create_user Create user
polaris_get_user Get user details
polaris_update_user Update user role/details
polaris_list_groups List groups
polaris_create_group Create group
polaris_get_current_user Get authenticated user info
polaris_create_api_token Create API token
polaris_create_service_account_token Create service account token

Notifications (3 tools)

Tool Description
polaris_get_notification_preferences Get org notification preferences
polaris_update_notification_preferences Update notification preferences
polaris_get_notification_subscriptions Get user event subscriptions

Example Workflows

Scan a branch and review findings

You: Trigger a SAST and SCA scan on the main branch of project X
AI: [calls polaris_trigger_scan] Scan triggered, test ID: abc-123

You: Check the scan status
AI: [calls polaris_get_test] Status: COMPLETED. 12 new issues found.

You: Show me the critical issues
AI: [calls polaris_list_issues with severity filter] Found 3 critical issues...

You: Show me the code for the first one
AI: [calls polaris_get_occurrence_snippet] Here's the vulnerable code at line 42...

You: Get remediation advice
AI: [calls polaris_get_remediation] Black Duck Assist suggests...

Generate a compliance report

You: Generate an SPDX report for application Y
AI: [calls polaris_generate_report] Report queued, ID: rpt-456

You: Is it ready?
AI: [calls polaris_get_report_status] Status: COMPLETED

You: Download it
AI: [calls polaris_download_report] Here's your SPDX v2.3 report...

Export issues to Jira

You: Show me all high-severity SAST issues
AI: [calls polaris_list_issues] Found 8 high-severity SAST issues

You: Export the first 3 to Jira
AI: [calls polaris_export_issues_to_tracker] 3 issues exported to Jira

Environment Variables

Variable Required Description
POLARIS_URL Yes Your Polaris instance URL (e.g., https://polaris.blackduck.com)
POLARIS_API_TOKEN Yes API token from Profile > Account > Access Tokens

Development

git clone https://github.com/your-username/blackduck-polaris-mcp-server.git
cd blackduck-polaris-mcp-server
npm install
npm run build
npm start

Testing with MCP Inspector

POLARIS_URL=https://... POLARIS_API_TOKEN=... npx @modelcontextprotocol/inspector node build/index.js

License

MIT

推荐服务器

Baidu Map

Baidu Map

百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
Kagi MCP Server

Kagi MCP Server

一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

官方
精选
Python
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选
Neon MCP Server

Neon MCP Server

用于与 Neon 管理 API 和数据库交互的 MCP 服务器

官方
精选
Exa MCP Server

Exa MCP Server

模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

官方
精选