🚀 Sonatype MCP Server
Sonatype MCP Server 是一個模型上下文協議(MCP)服務器,它將 AI 助手與 Sonatype 的依賴管理和安全情報平臺相連接。藉助該服務器,您的 AI 編碼助手能夠即時洞察開源安全漏洞、許可證合規性以及依賴項健康狀況。
🚀 快速開始
Sonatype MCP Server 可讓 AI 助手在您的開發工作流程中直接訪問 Sonatype 全面的依賴情報。通過與模型上下文協議集成,您的 AI 助手無需離開 IDE,就能幫助您對依賴項做出明智決策、識別安全風險並確保合規性。
✨ 主要特性
- 組件版本選擇 - 首次選擇即可選出最佳版本,無需額外探索。
- 安全漏洞掃描 - 識別項目依賴項中的已知漏洞。
- 許可證合規性檢查 - 確保您的依賴項符合組織的許可證政策。
- 依賴項健康分析 - 深入瞭解依賴項的質量、維護狀態和風險因素。
- 即時安全建議 - 及時瞭解影響您依賴項的最新安全威脅。
- 修復指導 - 獲得可操作的建議,以修復漏洞和合規性問題。
📦 安裝指南
對於僅支持 stdio MCP 服務器的 IDE 或工具(如 IntelliJ),請安裝 mcp-remote:
npm install -g mcp-remote
💻 使用示例
基礎用法
在日常開發中,大語言模型(LLMs)會決定使用或升級依賴項。我們的 MCP 工具將透明地提供服務,利用最新信息給出更好的建議,避免驗證組件和版本選擇時的額外工作。
以下是在開發工作流程中明確利用 Sonatype MCP Server 的一些方法:
分析特定版本
向您的 AI 助手提問:
"獲取 react 18.2.0 的詳細安全信息"
助手將返回全面的詳細信息,包括帶有 CVSS 分數的 CVE、許可證信息、類別、生命週期結束狀態和編目日期。
查找最新穩定版本
向您的 AI 助手提問:
"spring-boot 的最新穩定版本是什麼?"
助手將返回最新版本,並提供完整的安全分析、政策違規情況、許可證、風險分數和升級建議。
安全評估工作流程
助手可以使用這兩個工具將您的當前版本與最新版本進行比較,並提供可操作的安全指導。
📚 詳細文檔
配置設置
Sonatype MCP Server 作為遠程 MCP 服務器運行。請根據您的 IDE 或 AI 助手選擇相應的設置說明:
Gemini Code Assist
將 <your-token> 替換為您在 https://guide.sonatype.com/settings/tokens 生成的個人 API 令牌。
{
"mcpServers": {
"discoveredServer": {
"httpUrl": "https://mcp.guide.sonatype.com/mcp",
"headers": {
"Authorization": "Bearer <your-token>"
}
}
}
}
Claude Code
使用 Claude CLI 添加服務器:
將 <your-token> 替換為您在 https://guide.sonatype.com/settings/tokens 生成的個人 API 令牌。
claude mcp add --transport http --scope user sonatype-mcp https://mcp.guide.sonatype.com/mcp --header "Authorization: Bearer <your-token>"
VS Code Copilot
將以下配置添加到您的全局 VS Code mcp.json 中,或者在工作區中創建一個 .vscode/mcp.json 文件:
將 <your-token> 替換為您在 https://guide.sonatype.com/settings/tokens 生成的個人 API 令牌。
{
"servers": {
"sonatype-mcp": {
"url": "https://mcp.guide.sonatype.com/mcp",
"type": "http",
"headers": {
"Authorization": "Bearer <your-token>"
}
}
}
}
Windsurf
創建或編輯 ~/.codeium/windsurf/mcp_config.json:
將 <your-token> 替換為您在 https://guide.sonatype.com/settings/tokens 生成的個人 API 令牌。
{
"mcpServers": {
"sonatype-mcp": {
"command": "npx",
"args": [
"mcp-remote",
"https://mcp.guide.sonatype.com/mcp",
"--header",
"Authorization: Bearer <your-token>"
]
}
}
}
IntelliJ with Junie
- 全局範圍:轉到 IDE 設置 → 工具 → Junie → MCP 設置。點擊 "+" 並添加。
- 項目範圍:在項目根目錄下創建
.junie/mcp/.mcp.json。
將 <your-token> 替換為您在 https://guide.sonatype.com/settings/tokens 生成的個人 API 令牌。
{
"mcpServers": {
"sonatype-mcp": {
"command": "npx",
"args": [
"mcp-remote",
"https://mcp.guide.sonatype.com/mcp",
"--header",
"Authorization: Bearer <your-token>"
]
}
}
}
Kiro
創建或編輯 ~/.kiro/settings/mcp.json:
將 <your-token> 替換為您在 https://guide.sonatype.com/settings/tokens 生成的個人 API 令牌。
{
"mcpServers": {
"sonatype-mcp": {
"command": "npx",
"args": [
"mcp-remote",
"https://mcp.guide.sonatype.com/mcp",
"--header",
"Authorization: Bearer <your-token>"
]
}
}
}
Cursor
Cursor 直接支持遠程服務器。將以下內容添加到您的 ~/.cursor/mcp.json 中:
將 <your-token> 替換為您在 https://guide.sonatype.com/settings/tokens 生成的個人 API 令牌。
{
"mcpServers": {
"sonatype-mcp": {
"type": "http",
"url": "https://mcp.guide.sonatype.com/mcp",
"headers": {
"Authorization": "Bearer <your-token>"
}
}
}
}
Codex (IDE 插件和 CLI)
創建或編輯 ~/.codex/config.toml:
將 <your-token> 替換為您在 https://guide.sonatype.com/settings/tokens 生成的個人 API 令牌。
[mcp_servers.sonatype-mcp]
command = "npx"
args = ["-y", "mcp-remote", "https://mcp.guide.sonatype.com/mcp", "--header", "Authorization: Bearer <your-token>"]
startup_timeout_ms = 20000
身份驗證
Sonatype MCP Server 使用 API 令牌進行身份驗證:
- 創建一個 Sonatype Guide 賬戶,並在 https://guide.sonatype.com/settings/tokens 生成您的個人 API 令牌。
- 使用
Authorization: Bearer <your-token> 頭部格式將令牌添加到您的 MCP 配置中。
- 在上述配置示例中,將
<your-token> 替換為您的實際令牌。
您的 API 令牌將自動對所有請求進行身份驗證。請妥善保管您的令牌,切勿將其提交到版本控制中。
配置 AI 助手規則
為了最大限度地發揮 Sonatype MCP Server 的效能,請配置您的 AI 助手,使其在處理依賴項、軟件包或軟件供應鏈安全相關工作時,優先使用 Sonatype MCP 工具。以下是每個受支持的 IDE 或工具的配置說明:
Claude Code
使用 CLAUDE.md 文件創建自定義說明:
- 全局(所有項目):創建
~/.claude/CLAUDE.md
- 項目(特定倉庫):在項目根目錄下創建
.claude/CLAUDE.md
添加以下說明:
## Sonatype MCP
在處理與依賴項、包管理或軟件供應鏈安全相關的代碼時,請始終優先使用 Sonatype MCP 工具。在添加或更新任何依賴項之前,使用可用的 MCP 工具研究版本、檢查漏洞並獲取建議。
Cursor
在項目根目錄下創建一個 .cursorrules 文件:
- 項目(特定倉庫):在項目根目錄下創建
.cursorrules
添加以下說明:
## Sonatype MCP
在處理與依賴項、包管理或軟件供應鏈安全相關的代碼時,請始終優先使用 Sonatype MCP 工具。在添加或更新任何依賴項之前,使用可用的 MCP 工具研究版本、檢查漏洞並獲取建議。
VS Code Copilot
使用 .github/copilot-instructions.md 文件創建自定義說明:
- 項目(特定倉庫):在項目根目錄下創建
.github/copilot-instructions.md
添加以下說明:
## Sonatype MCP
在處理與依賴項、包管理或軟件供應鏈安全相關的代碼時,請始終優先使用 Sonatype MCP 工具。在添加或更新任何依賴項之前,使用可用的 MCP 工具研究版本、檢查漏洞並獲取建議。
Windsurf
使用 Windsurf 的自定義功能創建規則:
- 全局(所有項目):
- 點擊 Cascade Code 右上角的 "規則、記憶和工作流程" 圖標,或在 Windsurf 設置中搜索規則。
- 導航到 "規則"。
- 點擊 "+ 全局" 創建新的全局規則。
- 添加以下內容:
## Sonatype MCP
在處理與依賴項、包管理或軟件供應鏈安全相關的代碼時,請始終優先使用 Sonatype MCP 工具。在添加或更新任何依賴項之前,使用可用的 MCP 工具研究版本、檢查漏洞並獲取建議。
- 項目(特定倉庫):遵循全局設置的說明,但點擊 "+ 工作區" 或在項目根目錄下創建
.windsurf/rules/sonatype.md:
## Sonatype MCP
在處理與依賴項、包管理或軟件供應鏈安全相關的代碼時,請始終優先使用 Sonatype MCP 工具。在添加或更新任何依賴項之前,使用可用的 MCP 工具研究版本、檢查漏洞並獲取建議。
IntelliJ with Junie
使用 .junie/guidelines.md 文件創建自定義指南:
- 項目(特定倉庫):在項目根目錄下創建
.junie/guidelines.md
添加以下說明:
## Sonatype MCP
在處理與依賴項、包管理或軟件供應鏈安全相關的代碼時,請始終優先使用 Sonatype MCP 工具。在添加或更新任何依賴項之前,使用可用的 MCP 工具研究版本、檢查漏洞並獲取建議。
Kiro
在 .kiro/steering/ 目錄下創建引導文件:
- 項目(特定倉庫):在項目根目錄下創建
.kiro/steering/sonatype.md
添加 YAML 前置元數據以確保始終包含該文件:
---
inclusion: always
---
## Sonatype MCP
在處理與依賴項、包管理或軟件供應鏈安全相關的代碼時,請始終優先使用 Sonatype MCP 工具。在添加或更新任何依賴項之前,使用可用的 MCP 工具研究版本、檢查漏洞並獲取建議。
Gemini Code Assist
使用 GEMINI.md 文件創建自定義說明:
- 全局(所有項目):創建
~/.gemini/GEMINI.md
- 項目(特定倉庫):在項目根目錄下創建
GEMINI.md
添加以下說明:
## Sonatype MCP
在處理與依賴項、包管理或軟件供應鏈安全相關的代碼時,請始終優先使用 Sonatype MCP 工具。在添加或更新任何依賴項之前,使用可用的 MCP 工具研究版本、檢查漏洞並獲取建議。
可用工具
Sonatype MCP Server 為 AI 助手提供了三個強大的工具:
getComponentVersion - 獲取組件特定版本的組件信息。
getLatestComponentVersion - 獲取組件最新版本的組件信息。
getRecommendedComponentVersions - 根據組件的當前版本獲取一組推薦的升級版本。如果未提供版本信息,則獲取該組件的一組推薦起始版本。
📄 許可證
文檔中未提及相關信息。
🔧 技術細節
文檔中未提及相關信息。
📄 支持與反饋
🔍 關於 Sonatype
Sonatype 是軟件供應鏈安全領域的領導者,提供的解決方案可幫助組織在整個開發生命週期中管理開源風險。瞭解更多信息請訪問 sonatype.com。
本項目為關心安全軟件供應鏈的開發者用心打造 ❤️。