UpGuard网络风险MCP服务器
用于与UpGuard的CyberRisk API集成的模型上下文协议(MCP)服务器。该服务器通过标准化的接口提供全面的安全风险评估和管理功能。
特性
- 67 API工具 涵盖13个类别,用于全面的安全管理
- 25综合提示 包括8个用于复杂操作的高级工作流提示
- 实时风险评估 具有供应商监控和违规检测功能
- 自动化文档生成 具有多种输出格式
- 交互式API资源管理器 具有Swagger UI和Redoc界面
- 全面的模式验证 有22个Zod模式定义
- CI/CD集成 通过自动化文档部署
增强提示(v1.4.0中的新功能)
服务器现在包括 25个全面提示 (8个增强版+17个现有版),为复杂的安全操作提供指导工作流程:
🔴 风险管理提示
upguard_comprehensive_risk_assessment-完整的风险评估工作流程upguard_risk_trend_analysis-多期风险趋势分析upguard_account_risk_dashboard:为您的账户创建风险仪表板。upguard_risk_trend_analysis_original:分析特定时期的风险趋势。upguard_risk_severity_analysis:按严重程度分析风险。upguard_critical_risk_prioritization:优先考虑关键风险。upguard_risk_type_analysis:按类型分析风险。upguard_monthly_risk_report:生成月度风险报告。upguard_risk_mitigation_planning:制定风险缓解计划。upguard_executive_risk_summary:创建高管级风险总结。
📊 合规与报告
upguard_compliance_reporting_suite-自动生成合规报告
🌐 资产管理
upguard_domain_lifecycle_management-完成域生命周期工作流upguard_bulk_asset_management-大规模资产管理业务upguard_network_security_assessment-全面的网络安全分析upguard_check_domain_risks:检查特定域的风险。upguard_review_typosquatting_for_domain:查看域的拼写信息。upguard_manage_bulk_hostnames_simple:批量添加和删除主机名的简单工作流程。
🪝 运营与监控
upguard_setup_comprehensive_alerting-完成警报基础架构设置upguard_security_dashboard_setup-基于角色的安全仪表板配置
🏢 供应商和组织提示
upguard_get_my_organization_risks:获取贵组织的所有风险清单。upguard_monitor_new_vendor:开始监视新供应商。upguard_assess_vendor_risks:对特定供应商进行风险评估。upguard_get_my_organization_details:检索您组织的详细信息。upguard_list_vendors_with_critical_risks:列出所有存在重大风险的供应商。upguard_full_vendor_risk_profile:获取供应商的完整风险简介。upguard_monitor_new_vendor_and_send_questionnaire:监控新供应商并向他们发送问卷。
🚨 违规和报告提示
upguard_investigate_breaches:调查特定域的违规行为。upguard_generate_report:生成报告。upguard_investigate_identity_breach_for_domain:调查域的身份泄露。upguard_generate_vendor_report_and_track:生成供应商报告并跟踪其状态。
优点:
- 分步指导 用于复杂的安全工作流程
- 多工具编排 组合多个API端点
- 基于角色的工作流 针对不同的利益相关者(首席信息安全官、分析师、合规性)
- 最佳实践集成 内置安全建议
📖 看 增强\_ MPTS.md 查看详细的文档和示例。
快速开始
先决条件
- Node.js 18+
- npm或纱线
- UpGuard CyberRisk API证书
安装
git clone https://github.com/leroylim/upguard-cyberrisk-mcp-server-nodejs.git
cd upguard-cyberrisk-mcp-server-nodejs
npm install配置
创建一个 .env 使用您的UpGuard凭据文件:
UPGUARD_API_KEY=your_api_key_here运行服务器
npm startMCP配置
要将此服务器与Claude Desktop或其他MCP兼容客户端一起使用,您需要将其添加到MCP配置文件中。
适用于克劳德桌面(Windows/Mac/Linux)
将以下配置添加到您的 claude_desktop_config.json 文件:
窗户: %APPDATA%\Claude\claude_desktop_config.json 雨衣: ~/Library/Application Support/Claude/claude_desktop_config.json Linux: ~/.config/Claude/claude_desktop_config.json
{
"mcpServers": {
"upguard-mcp": {
"command": "node",
"args": [
"/path/to/your/upguard-cyberrisk-mcp-server/src/index.js"
],
"env": {
"UPGUARD_API_KEY": "your_upguard_api_key_here"
}
}
}
}用于游标IDE
将以下配置添加到您的 mcp.json Cursor设置目录中的文件:
窗户: %APPDATA%\Cursor\User\mcp.json 雨衣: ~/Library/Application Support/Cursor/User/mcp.json\ Linux: ~/.config/Cursor/User/mcp.json
{
"mcpServers": {
"upguard-mcp": {
"command": "node",
"args": [
"/path/to/your/upguard-cyberrisk-mcp-server/src/index.js"
],
"env": {
"UPGUARD_API_KEY": "your_upguard_api_key_here"
}
}
}
}配置说明
- 替换路径:更新
/path/to/your/upguard-cyberrisk-mcp-server/src/index.js安装的实际路径 - 更换API键:更新
your_upguard_api_key_here使用实际的UpGuard API密钥 - 服务器名称:您可以更改
upguard-mcp你喜欢的任何名字
获取UpGuard API密钥
先决条件:
- 具有管理员访问权限的UpGuard帐户(只有管理员才能访问API令牌)
- 进入UpGuard平台 cyber-risk.upguard.com
分步说明:
- 登录您的UpGuard帐户 在 https://cyber-risk.upguard.com
- 单击设置图标 在UpGuard的右上角
- 导航到API选项卡 在设置菜单中
- 创建或管理API密钥:
- 此处将列出任何现有的API密钥 - 点击 “创建新的API密钥” 生成新密钥 - 如果需要,您还可以从该选项卡中删除现有密钥
- 复制API密钥 -它将是一个字母数字字符串
- 粘贴密钥 进入MCP配置文件
测试API密钥(可选): 您可以通过使用curl测试API密钥来验证它的工作原理:
curl -H "Authorization: YOUR_API_KEY" "https://cyber-risk.upguard.com/api/public/vendors"安全说明:
- 保持API密钥的安全,不要公开共享
- 只有管理员才能创建和管理API密钥
- 您可以创建多个API密钥,并根据需要删除它们
- API基本URL为:
https://cyber-risk.upguard.com/api/public
有关更多详细信息,请参阅 官方UpGuard API认证指南.
需要重启
更新MCP配置后,重新启动Claude Desktop或IDE以使更改生效。
文件系统
该项目具有一个全面的文档生成系统,可从源代码创建多种格式:
📚 可用文档格式
- 📊 交互式文档中心 -中央导航与统计
- 🚀 Swagger用户界面 -用于测试端点的交互式API资源管理器
- 📚 Redoc -美观、专业的API文档
- 📖 降价 -带有示例的人类可读文档
- 🔧 OpenAPI规范 -可机加工的API工具规范
🛠️ 文档命令
# Generate complete documentation pipeline
npm run docs:full
# Individual generation steps
npm run docs:extract # Extract tools from source code
npm run docs:generate # Generate OpenAPI and Markdown
npm run docs:html # Generate HTML documentation
npm run docs:test # Validate generated documentation
# Utility commands
npm run docs:clean # Clean generated files
npm run docs:build # Generate with mock fallback📊 文档统计
- 67 API工具 记录在13个类别中
- 22模式定义 通过Zod验证
- 54个带有模式的工具 (80%的模式覆盖率)
- 195KB OpenAPI规范 有全面的例子
- 37KB Markdown文档 带有身份验证指南
🌐 查看文档
运行后 npm run docs:full,在浏览器中打开以下任何文件:
- 文档中心:
docs/generated/index.html - Swagger用户界面:
docs/generated/swagger.html - Redoc:
docs/generated/redoc.html - 降价:
docs/generated/API.md - OpenAPI规范:
docs/generated/openapi.json
API类别
🛡️ 风险管理(10个工具)
- 获取可用的风险和风险详细信息
- 账户和供应商风险监控
- 风险过滤和分类
🏢 供应商管理(16个工具)
- 监控和管理供应商安全
- 供应商风险评估
- 大宗供应商业务
🌐 域管理(9个工具)
- 领域监控和分析
- 子域发现
- 领域风险评估
🔍 IP管理(5个工具)
- IP监控
- 网络安全分析
- 知识产权风险评估
📊 报告生成(7个工具)
- 自定义安全报告
- 自动报告调度
- 报表数据导出
🚨 违规监控(2个工具)
- 数据泄露检测
- 违规影响分析
⚡ 批量操作(6个工具)
- 批处理能力
- 大规模供应商更新
- 批量数据操作
🔗 Webhook管理(5个工具)
- 事件通知设置
- Webhook配置
- 实时警报
📋 其他类别
- 问卷管理 (1个工具)
- 百草枯检测 (1个工具)
- 标签管理 (1个工具)
- 通知管理 (1个工具)
- 将军 (3个工具)
发展
项目结构
├── src/
│ ├── tools/ # API tool implementations
│ │ ├── schemas/ # Zod schema definitions
│ │ ├── risks.js # Risk management tools
│ │ ├── vendors.js # Vendor management tools
│ │ └── ... # Other tool categories
│ └── utils/
│ ├── doc-generator.js # Documentation generator
│ └── logger.js # Logging utility
├── scripts/
│ ├── extract-tools-direct.js # Tool extraction
│ ├── generate-docs.js # Documentation generation
│ ├── generate-html-docs.js # HTML documentation
│ └── test-docs.js # Documentation testing
├── docs/
│ ├── generated/ # Generated documentation
│ └── extracted-tools.json # Extracted tool data
└── .github/workflows/
└── docs.yml # CI/CD documentation pipeline添加新工具
- 在适当的类别文件中创建工具实现
- 将架构定义添加到
src/tools/schemas/index.js - 跑
npm run docs:full更新文档 - 测试用
npm run docs:test
架构验证
所有工具都使用Zod模式进行输入验证:
const { z } = require('zod');
const { vendorHostname, labels } = require('./schemas');
// Tool with schema validation
server.tool('tool_name', 'Description', {
hostname: vendorHostname,
labels: labels.optional()
}, async (args) => {
// Implementation
});CI/CD集成
该项目包括通过GitHub Actions自动生成文档:
- 触发器:推送到主/主站,工具文件更改,手动调度
- 产生:所有文档格式自动
- 部署:带有交互式文档的GitHub页面
- 人工制品:保留30天的文档文件
测试
# Run all tests
npm test
# Lint code
npm run lint
npm run lint:fix
# Test documentation
npm run docs:test贡献
- 分叉存储库
- 创建要素分支
- 添加具有适当模式的工具
- 更新文档
npm run docs:full - 测试更改
npm run docs:test - 提交拉取请求
许可证
MIT许可证-请参阅 许可证 文件以获取详细信息。
支持
- GitHub问题: 报告错误或请求功能
- 文档:提供多种格式
docs/generated/ - api参考:交互式Swagger UI和Redoc界面
______________________________________________________________________
UpGuard网络风险MCP服务器 v1.4.0 |麻省理工学院授权| 查看文档
