Contrast MCP Server 允许您将 Contrast Security 连接到您的 AI 编码代理,通过自然语言提示自动修复漏洞、更新不安全的库并分析安全覆盖范围。
[!WARNING] 重要安全警告: 将 Contrast 漏洞数据暴露给训练于您的提示的 AI 服务可能会泄露敏感信息。仅在合同上保证数据隔离且禁止基于您的输入进行模型训练的环境中使用 mcp-contrast。
验证 AI 数据隐私: 确认您的服务协议防止对您的提示进行模型训练,并在共享 Contrast 数据之前咨询您的安全团队。
不安全: 公共消费者 LLM 站点(例如免费的 ChatGPT、Gemini、Claude)使用提示进行训练。
潜在安全: 合同上保证隐私的企业服务(例如 Google Cloud AI、AWS Bedrock、Azure OpenAI)。
点击上方按钮以自动在 VS Code 中安装。如需手动设置,请参阅 VS Code (GitHub Copilot) 安装指南。
在您的 mcp.json 配置文件中添加以下内容,并用您的 Contrast 凭证替换占位符值:
{
"servers": {
"contrast": {
"command": "docker",
"args": [
"run",
"-e",
"CONTRAST_HOST_NAME",
"-e",
"CONTRAST_API_KEY",
"-e",
"CONTRAST_SERVICE_KEY",
"-e",
"CONTRAST_USERNAME",
"-e",
"CONTRAST_ORG_ID",
"-i",
"--rm",
"contrast/mcp-contrast:latest",
"-t",
"stdio"
],
"env": {
"CONTRAST_HOST_NAME": "example.contrastsecurity.com",
"CONTRAST_API_KEY": "example",
"CONTRAST_SERVICE_KEY": "example",
"CONTRAST_USERNAME": "example@example.com",
"CONTRAST_ORG_ID": "example"
}
}
}
}
📖 完整的 IntelliJ (GitHub Copilot) 安装指南 - 包括逐步设置和 JAR 部署选项
如果您使用的是 JAR 部署(而不是 Docker),您需要 JAR 文件:
从 GitHub Releases 下载最新预构建的 JAR。
JAR 文件将命名为 mcp-contrast-X.X.X.jar。
或者,如果您需要最新的开发版本,可以从源代码构建。需要 Java 17+:
mvn clean install
构建的 JAR 将位于 target/mcp-contrast-X.X.X-SNAPSHOT.jar。
如果您处于公司防火墙或代理后面,您需要配置代理设置以便 MCP 服务器能够访问您的 Contrast 实例。配置方式取决于您是使用 Docker 还是 JAR 部署。
根据您运行 JAR 的方式选择以下之一:
如果您是从命令行或脚本直接运行 JAR,请在 java 命令中添加这两个系统属性:
-Dhttp_proxy_host=proxy.example.com
-Dhttp_proxy_port=8080
完整示例:
java \
-Dhttp_proxy_host=proxy.example.com \
-Dhttp_proxy_port=8080 \
-jar /path/to/mcp-contrast-X.X.X.jar \
--CONTRAST_HOST_NAME=example.contrastsecurity.com \
--CONTRAST_API_KEY=example \
--CONTRAST_SERVICE_KEY=example \
--CONTRAST_USERNAME=example@example.com \
--CONTRAST_ORG_ID=example
如果您是通过 MCP 主机(IntelliJ、Claude Desktop、Cline 等)运行 JAR,请在 args 数组的开头添加这两行:
"-Dhttp_proxy_host=proxy.example.com",
"-Dhttp_proxy_port=8080",
使用 IntelliJ 的 mcp.json 的完整示例:
{
"servers": {
"contrast": {
"command": "java",
"args": [
"-Dhttp_proxy_host=proxy.example.com",
"-Dhttp_proxy_port=8080",
"-jar",
"/path/to/mcp-contrast-X.X.X.jar",
"--CONTRAST_HOST_NAME=example.contrastsecurity.com",
"--CONTRAST_API_KEY=example",
"--CONTRAST_SERVICE_KEY=example",
"--CONTRAST_USERNAME=example@example.com",
"--CONTRAST_ORG_ID=example"
]
}
}
}
根据您运行 Docker 的方式选择以下之一:
如果您是从命令行直接运行 Docker,请在 docker run 命令中添加这两个环境变量:
-e http_proxy_host="proxy.example.com" \
-e http_proxy_port="8080" \
完整示例:
docker run \
-e http_proxy_host="proxy.example.com" \
-e http_proxy_port="8080" \
-e CONTRAST_HOST_NAME=example.contrastsecurity.com \
-e CONTRAST_API_KEY=example \
-e CONTRAST_SERVICE_KEY=example \
-e CONTRAST_USERNAME=example \
-e CONTRAST_ORG_ID=example \
-i --rm \
contrast/mcp-contrast:latest \
-t stdio
如果您是通过 MCP 主机(IntelliJ、VS Code、Claude Desktop、Cline 等)运行 Docker,请添加这些代理设置:
添加到 args 数组(在 Contrast 凭证之后):
"-e", "http_proxy_host",
"-e", "http_proxy_port",
添加到 env 对象:
"http_proxy_host": "proxy.example.com",
"http_proxy_port": "8080"
使用 IntelliJ 的 mcp.json 的完整示例:
{
"servers": {
"contrast": {
"command": "docker",
"args": [
"run",
"-e", "CONTRAST_HOST_NAME",
"-e", "CONTRAST_API_KEY",
"-e", "CONTRAST_SERVICE_KEY",
"-e", "CONTRAST_USERNAME",
"-e", "CONTRAST_ORG_ID",
"-e", "http_proxy_host",
"-e", "http_proxy_port",
"-i", "--rm",
"contrast/mcp-contrast:latest",
"-t", "stdio"
],
"env": {
"CONTRAST_HOST_NAME": "example.contrastsecurity.com",
"CONTRAST_API_KEY": "example",
"CONTRAST_SERVICE_KEY": "example",
"CONTRAST_USERNAME": "example@example.com",
"CONTRAST_ORG_ID": "example",
"http_proxy_host": "proxy.example.com",
"http_proxy_port": "8080"
}
}
}
}
对于带有输入变量的 VS Code,请参阅 VS Code 安装指南。
如果您遇到 MCP 服务器的问题,这里有一些常见的故障排除步骤:
默认情况下,日志将在本地的 /tmp/mcp-contrast.log 或 Docker 容器内创建。您可以查看此日志以检查 MCP 服务器是否有任何错误或问题。
要启用调试日志,可以在运行 MCP 服务器时将以下标志添加到命令行参数中:
--logging.level.root=DEBUG
这可以添加到 Docker 命令的这部分:
"--rm",
"contrast/mcp-contrast:latest",
"-t",
"--logging.level.root=DEBUG",
"stdio"
],
如果 Teamserver URL 的 SSL 证书不受信任,您可能会看到以下错误:
Failed to list applications: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
如果发生这种情况,您需要将证书添加到 Java Truststore,并在运行 MCP 服务器时将以下内容添加到命令行参数中:
-Djavax.net.ssl.trustStore=/location/to/mcp-truststore.jks, -Djavax.net.ssl.trustStorePassword=yourpassword
有关如何执行此操作的更多详细信息,请参阅 Java 文档。或者请您的 LLM 帮助您完成此操作。
Contrast MCP Server 提供了一个桥梁,连接您的 Contrast 数据与您选择的 AI 代理/LLM。 通过使用 Contrast 的 MCP 服务器,您将向您的 AI 代理/LLM 提供 Contrast 数据,确保您所使用的 AI 代理/LLM 符合您的数据隐私政策是您的责任。 根据您提出的问题,以下信息将提供给您的 AI 代理/LLM。