关于 Shodan MCP Server
Shodan MCP Server 通过 MCP 提供 Shodan 的联网设备与漏洞数据,适用于需要搜索设备、查询 DNS 或查看 CVE 信息的用户。
主要功能
- 01使用筛选语法搜索 Shodan
- 02解析域名并获取 DNS 数据
- 03查询 CVE 详情
- 04检查 IP 相关漏洞
- 05通过环境变量管理 API 密钥
适用场景
- 01按条件查找暴露的设备
- 02检查域名的 DNS 记录
- 03查看 CVE 或 IP 漏洞详情
MCP 相关
该服务将 Shodan 搜索、DNS 查询和漏洞相关功能作为工具提供给 MCP 客户端。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
暂未收录安装方式
我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。
工具
还没有获取到工具列表
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
Shodan MCP 服务
一个模型上下文协议(MCP)服务,通过标准化接口提供对 Shodan 互联网扫描能力的访问。
概述
此服务实现了模型上下文协议,以开放 Shodan 强大的互联网扫描和侦察能力。它提供标准化接口,用于查询 Shodan 的互联网连接设备、服务和漏洞数据库。
功能
- 搜索功能:使用高级搜索筛选条件查询 Shodan 数据库
- DNS 查询:解析域名并获取详细的 DNS 信息
- CVE 信息:获取常见漏洞和暴露(CVE)的详细信息
- 获取漏洞:获取与某个 IP 地址相关的漏洞详细信息
- 标准化接口:使用 MCP 协议实现一致的通信
- 环境变量支持:通过环境变量安全管理 API 密钥
前提条件
- Node.js(v14 或更高版本)
- npm(v6 或更高版本)
- Shodan API 密钥
安装
-
克隆仓库:
git clone https://github.com/X3r0K/Shodan-MCP-Server-Inspector.git cd shodan-mcp-server-Inspector -
安装依赖:
npm install -
在根目录中创建
.env.local文件,并添加你的 Shodan API 密钥:SHODAN_API_KEY=your_api_key_here
用法
启动服务
-
构建服务:
npm run build -
启动服务:
node build/index.js
可用工具
-
搜索工具
- 查询:使用 Shodan 搜索语法搜索设备和服务
- 示例:
log4j country:US city:Atlanta - 返回:包含详细信息的匹配设备列表
-
DNS 查询工具
- 查询:要解析的域名
- 示例:
example.com - 返回:DNS 记录及相关信息
-
CVE 信息工具
- 查询:CVE 标识符
- 示例:
CVE-2021-44228 - 返回:漏洞详细信息
查询示例
// Search for Log4j vulnerable systems in the US
{
"query": "log4j country:US"
}
// DNS lookup for a domain
{
"query": "example.com"
}
// Get CVE information
{
"query": "CVE-2021-44228"
}
使用 MCP Inspector
你可以使用 MCP Inspector 直接与服务交互:
- 安装 MCP Inspector:
npm install -g @modelcontextprotocol/inspector
- 使用你的服务运行 Inspector:
npx @modelcontextprotocol/inspector build/index.js
Inspector 提供交互式界面,可用于:
- 测试所有可用工具
- 查看工具文档
- 调试服务响应
- 监控服务状态
环境变量
SHODAN_API_KEY:你的 Shodan API 密钥(必填)PORT:服务端口(可选,默认值为 3000)LOG_LEVEL:日志级别(可选,默认值为 'info')
错误处理
服务针对以下情况实现了全面的错误处理:
- 无效的 API 密钥
- 速率限制
- 网络问题
- 无效的查询
- 服务错误
安全注意事项
-
API 密钥保护:
- 切勿将 API 密钥提交到版本控制系统
- 使用环境变量存储敏感数据
- 定期轮换 API 密钥
-
速率限制:
- 遵守 Shodan 的 API 速率限制
- 实施客户端速率限制
-
数据隐私:
- 从响应中过滤敏感信息
- 根据需要实施访问控制
许可证
本项目采用 MIT 许可证授权,详情请参阅 LICENSE 文件。
致谢
- 感谢 Shodan 提供 API
- 感谢模型上下文协议团队制定 MCP 规范
评论
支持 Markdown
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。