使用说明
项目简介
ADEO CTI MCP Server 是一个基于 Model Context Protocol (MCP) 构建的应用后端,旨在为网络安全分析师提供 Shodan 和 VirusTotal API 的集成访问能力。通过标准化的 MCP 协议,该服务器可以向 LLM 客户端提供强大的威胁情报分析工具和 Prompt 模板,支持自动化安全分析流程。
主要功能点
- 集成 Shodan API: 提供全面的网络空间搜索引擎功能,包括主机信息查询、DNS 操作、漏洞分析、网络扫描和告警管理等。
- 集成 VirusTotal API: 提供恶意软件分析和检测、URL 和 IP 信誉检查、域名威胁情报和文件哈希分析等功能。
- 丰富的工具集: 预置了大量 Shodan 和 VirusTotal 工具,方便用户快速执行各种安全分析任务。
- 智能 Prompt 模板: 提供预定义的 Prompt 模板,支持用户通过自然语言与服务器交互,完成复杂的安全分析工作流。
- 标准 MCP 协议: 采用 JSON-RPC over Stdio 通信,易于集成到各种 LLM 应用中。
安装步骤
-
环境准备
- 确保已安装 Node.js 和 npm。
- 获取 Shodan API Key 和 VirusTotal API Key (可选,如果需要使用 VirusTotal 工具)。
- 将本仓库代码克隆到本地。
-
设置 API Key
- 方法一:环境变量 (推荐)
- 设置 'SHODAN_API_KEY' 环境变量为您的 Shodan API Key。
- 如果需要使用 VirusTotal 工具,设置 'VIRUSTOTAL_API_KEY' 环境变量为您的 VirusTotal API Key。
export SHODAN_API_KEY=YOUR_SHODAN_API_KEY export VIRUSTOTAL_API_KEY=YOUR_VIRUSTOTAL_API_KEY # 可选 - 方法二:命令行参数
- 启动服务器时,通过命令行参数 '--shodan-api-key' 和 '--virustotal-api-key' 传递 API Key。
- 方法一:环境变量 (推荐)
-
安装依赖
在仓库根目录下运行:
npm install -
构建项目
运行构建命令:
npm run build -
启动服务器
- 使用环境变量 (如果已设置环境变量)
npm start - 使用命令行参数 (如果未设置环境变量)
请将 'YOUR_SHODAN_API_KEY' 和 'YOUR_VIRUSTOTAL_API_KEY' 替换为您的实际 API 密钥。npm start -- --shodan-api-key YOUR_SHODAN_API_KEY --virustotal-api-key YOUR_VIRUSTOTAL_API_KEY
- 使用环境变量 (如果已设置环境变量)
服务器配置
以下 JSON 配置信息可用于 MCP 客户端连接 ADEO CTI MCP 服务器:
{ "server name": "ADEO CTI MCP Server", "command": "npm", "args": ["start", "--", "--shodan-api-key", "<YOUR_SHODAN_API_KEY>", "--virustotal-api-key", "<YOUR_VIRUSTOTAL_API_KEY>"] // 请将 <YOUR_SHODAN_API_KEY> 和 <YOUR_VIRUSTOTAL_API_KEY> 替换为您的 API 密钥。 // 如果您已设置环境变量,则可以将 args 简化为 ["start"],服务器将从环境变量中读取 API 密钥。 // 完整参数列表请参考仓库 README 或服务器启动脚本。 }
基本使用方法
- 服务器成功启动后,等待 "ADEO CTI MCP Server connected and ready" 消息出现。
- 使用支持 MCP 协议的客户端 (如 LLM 应用) 通过 Stdio 协议连接到服务器。
- 客户端可以使用 '@shodan' 前缀调用服务器提供的工具和 Prompt。
- 工具调用示例: '@shodan host-info ip="8.8.8.8"' (查询 IP 地址 8.8.8.8 的 Shodan 信息)
- Prompt 调用示例: '@shodan asset-discovery target=example.com depth=comprehensive' (对 example.com 进行全面的资产发现)
- 详细工具和 Prompt 的参数及用法请参考仓库 'README.md' 文件中 "Tools" 和 "MCP Server Prompts" 章节。
信息
分类
网页与API