使用说明
Shodan MCP服务器——基于人工智能的Claude、Cursor和VS代码互联网智能
舒丹·麦克普 是一个 模型上下文协议(MCP) 服务器,允许Claude、Cursor和GitHub Copilot等AI代理直接访问 肖丹 --全球互联网连接设备的搜索引擎。由...建造 AI 语言.
20个用于被动侦察、漏洞情报、DNS分析和设备搜索的工具,全部来自您的IDE。没有数据包发送到任何目标。
快速开始
docker build -t shodan-mcp https://github.com/vorotaai/shodan-mcp.git
添加到您的MCP客户端(克劳德桌面、光标、VS代码等):
{
"mcpServers": {
"shodan-mcp": {
"command": "docker",
"args": ["run", "--rm", "-i", "-e", "SHODAN_API_KEY", "shodan-mcp"],
"env": {
"SHODAN_API_KEY": "your-api-key-here"
}
}
}
}
4工具工作 立即使用API密钥 --CVE查找、CVE搜索、CPE搜索和InternetDB。获取Shodan API密钥 永远。 解锁所有20个工具。
可用工具
免费工具(无需API密钥)
| 工具 | 说明 |
|---|---|
shodan-cve-lookup |
查找任何CVE-CVSS v3评分、EPSS漏洞预测、参考文献、受影响的CPE |
shodan-search-cves |
使用过滤器搜索CVE——CISA KEV目录、EPSS排序、日期范围 |
shodan-search-cpes |
按产品名称搜索CPE标识符(例如“apache”、“nginx”) |
shodan-internetdb-lookup |
快速免费的IP智能——开放端口、漏洞、主机名、CPE、标签 |
侦察工具(需要API密钥)
| 工具 | 说明 |
|---|---|
shodan-ip-lookup |
全IP侦察——端口、服务、横幅、地理位置、漏洞、ISP/org、ASN |
shodan-search |
使用强大的查询语法搜索Shodan的数十亿设备数据库 |
shodan-search-count |
统计搜索结果而不消耗查询积分 |
shodan-dns-resolve |
将主机名解析为IP地址 |
shodan-dns-reverse |
反向DNS查找IP地址 |
shodan-domain-info |
域侦察——子域、DNS记录、标签 |
shodan-honeypot-score |
检测IP是否为蜜罐(0.0=真实,1.0=蜜罐) |
实用工具(需要API密钥)
| 工具 | 说明 |
|---|---|
shodan-api-info |
检查API密钥使用情况——计划类型、剩余信用 |
shodan-my-ip |
获取Shodan看到的外部IP地址 |
shodan-account-profile |
帐户成员资格、积分、显示名称 |
shodan-list-facets |
列出查询细分的可用搜索方面 |
shodan-list-filters |
列出可用的搜索筛选器 |
shodan-parse-query |
分析和调试搜索查询 |
shodan-list-ports |
列出Shodan爬虫扫描的端口号 |
shodan-list-protocols |
列出按需扫描的协议 |
shodan-http-headers |
显示客户端发送的HTTP标头 |
特性
- 20工具 涵盖IP侦察、设备搜索、CVE/CPE情报、DNS、域分析和蜜罐检测
- 4免费工具 在零配置的情况下工作--没有API密钥,没有注册
- 被动侦察 --所有查询都会访问Shodan的预索引数据库,没有数据包触及任何目标
- 结构化Pydantic输出 --每个工具都返回类型化模型,而不是原始JSON
- 输入验证 --IP地址、域、CVE ID和查询在任何API调用之前都经过验证
- API密钥保护 --密钥永远不会在错误消息或日志中公开
- Docker优先 --构建和运行的单个命令
- 适用于所有MCP客户端 --克劳德桌面,克劳德代码,光标,VS代码,Windsurf,Cline
示例提示
连接后,在您的AI客户端中使用自然语言:
- “我的外部IP地址是什么?”
- “CVE-2021-44228的详细信息是什么?”
- “搜索与Apache HTTP服务器相关的CVE,按EPSS分数排序”
- “查找nginx的CPE标识符”
- “在我的服务器IP上快速查找InternetDB”
- “我公司的域名有哪些DNS记录?”
- “将主机名myapp.example.com解析为IP地址”
- “Shodan中有哪些可用的搜索筛选器?”
- “检查我的Shodan API计划和剩余的查询信用”
安装
Docker(推荐)
docker build -t shodan-mcp https://github.com/vorotaai/shodan-mcp.git
使用紫外线
git clone https://github.com/vorotaai/shodan-mcp.git
cd shodan-mcp
uv sync --all-groups
shodan-mcp
使用pip
git clone https://github.com/vorotaai/shodan-mcp.git
cd shodan-mcp
pip install .
shodan-mcp
与MCP客户端一起使用
shodan mcp与所有主要的mcp客户合作: 克劳德桌面, 克劳德代码, 光标, VS代码副本, 帆板运动,以及 克莱恩.
克劳德桌面
增添 claude_desktop_config.json:
{
"mcpServers": {
"shodan-mcp": {
"command": "docker",
"args": ["run", "--rm", "-i", "-e", "SHODAN_API_KEY", "shodan-mcp"],
"env": {
"SHODAN_API_KEY": "your-api-key-here"
}
}
}
}
克劳德代码
claude mcp add shodan-mcp -e SHODAN_API_KEY=your-api-key-here -- docker run --rm -i -e SHODAN_API_KEY shodan-mcp
光标
增添 .cursor/mcp.json:
{
"mcpServers": {
"shodan-mcp": {
"command": "docker",
"args": ["run", "--rm", "-i", "-e", "SHODAN_API_KEY", "shodan-mcp"],
"env": {
"SHODAN_API_KEY": "your-api-key-here"
}
}
}
}
VS代码/VS代码内部人员
增添 .vscode/mcp.json:
{
"servers": {
"shodan-mcp": {
"command": "docker",
"args": ["run", "--rm", "-i", "-e", "SHODAN_API_KEY", "shodan-mcp"],
"env": {
"SHODAN_API_KEY": "your-api-key-here"
}
}
}
}
风帆/克莱恩
使用与Claude Desktop相同的配置。有关配置文件的位置,请参阅客户的文档。
推荐工作流程
- 免费快速扫描 --使用
shodan-internetdb-lookup即时IP智能(无需密钥) - 脆弱性研究 --使用
shodan-cve-lookup和shodan-search-cves研究CVE(免费) - 深度侦察 --使用
shodan-ip-lookup获取完整的主机详细信息(API密钥) - 发现暴露的主机 --使用
shodan-search和shodan-search-count寻找并量化目标 - DNS智能 --使用
shodan-dns-resolve,shodan-dns-reverse,以及shodan-domain-info - 过滤蜜罐 --使用
shodan-honeypot-score识别欺骗性主机
配置
| 变量 | 默认值 | 描述 |
|---|---|---|
SHODAN_API_KEY |
(无) | Shodan API密钥。16个工具需要,4个免费工具不需要。得到一个在 永远。. |
FASTMCP_LOG_LEVEL |
WARNING |
日志记录级别(调试、信息、警告、错误) |
安全
需要授权。 虽然Shodan查询是被动的,但您仍然必须确保:
- 您有明确的授权调查任何目标
- 您遵守所有适用的法律和组织政策
- 您仅将此工具用于合法的安全研究、授权评估或防御操作
安全措施
- 输入验证 --IP、域、CVE ID、主机名和查询在任何API调用之前都经过验证
- 预防注射 --禁止字符(
;,|,&,$,`等)被阻塞 - 不执行shell --所有HTTP请求都使用
httpx具有结构化参数 - API密钥保护 --密钥通过环境变量传递,并从错误消息中删除
- 被动设计 --没有数据包发送到任何目标
常见问题解答
我需要Shodan API密钥吗?
不要开始。4个工具无需钥匙即可立即工作: shodan-cve-lookup, shodan-search-cves, shodan-search-cpes,以及 shodan-internetdb-lookup.一把免费的Shodan API钥匙解锁剩余的16个工具——在 永远。.
支持哪些MCP客户端?
Claude Desktop、Claude Code、Cursor、VS Code(GitHub Copilot)、Windsurf和Cline——任何支持MCP stdio传输的客户端。
安全吗?
对。所有查询都是被动的(没有数据包到目标),输入经过验证,API密钥从不在错误消息中暴露。
这与Shodan网站有何不同?
shodan mcp将shodan直接集成到您的AI工作流程中。您的AI代理在IDE的一次对话中查询Shodan、解释结果、关联发现并提出建议。
贡献
git clone https://github.com/vorotaai/shodan-mcp.git
cd shodan-mcp
uv sync --all-groups
uv run pytest
请在上打开问题或拉取请求 GitHub.
许可证
Apache许可证2.0 --版权所有(c)Vorota AI