快速启动 • 妇女 工具 • 妇女 HTTP 密码 • 妇女 警卫 • 妇女 解决问题 • 妇女 文档
米克普-绍丹 是一个 MCP 磁共振 允许 AI 代理机访问 肖丹 API 财务报告和审定财务报表 肖丹 CVEDB。将一个IP、主机名、搜索查询、产品或 CVE 交给您的代理,并获得一个分析师将查看的内容:打开端口和横幅、 TLS 证书、 DNS 以及带有 EPSS 和 KEV 状态的脆弱性严重性.
[注] 独立项目,不隶属于肖丹. 你需要你自己来 Shodan API 密钥。 。 。 .
要点
- 主机侦察. 开放端口,产品和版本,已知的CVES,TLS证书细节(指印,JARM,JA3S),云提供商和任何IPv4或IPv6地址的横幅历史.
- 设备搜索. 肖丹查询语法有page和facet分解(country, org, port, vuln 等),外加一个免费的只计数模式来表示查询大小.
- 脆弱性情报. CVE细节有CVSS v4/v3/v2,EPSS和KEV;CVES按产品或CPE分类,由EPSS分类. CVEDB是免费的,不花查询信用.
- DNS. (英语). 子域名和 DNS 记录一个域名,并在一个调用中前向和倒向查找许多名称或IP.
- 信用意识. 免费工具被标记为免费,以及
api_info显示您计划中的积分. - 二通运. 用于桌面客户端的stdio,用于共享服务的HTTP流.
- 经验. 在20号、22号和24号中心用被嘲笑的Shodan API进行单元测试.
如何运作
flowchart LR
A["AI agent<br/>(Claude, Codex, Gemini, VS Code)"] -->|"MCP over stdio or HTTP"| S["mcp-shodan"]
S -->|"validate input,<br/>HTTPS + API key"| SH["Shodan REST API"]
S -->|"HTTPS, no key"| C["Shodan CVEDB"]
SH -->|"JSON"| S
C -->|"JSON"| S
S -->|"structured JSON text"| A
快速启动
所需经费: 节点.js 20或更新 和一肖丹 API 键.
# Claude Code
claude mcp add --transport stdio --env SHODAN_API_KEY=your-key shodan -- npx -y @burtthecoder/mcp-shodan
# Codex CLI
codex mcp add shodan --env SHODAN_API_KEY=your-key -- npx -y @burtthecoder/mcp-shodan
# Gemini CLI
gemini mcp add -e SHODAN_API_KEY=your-key shodan npx -y @burtthecoder/mcp-shodan
关于Claude桌面, VS 代码和源代码运行,请参见 连接客户端。 。 。 .
那就问问你的经纪人: "在8.8.8.8上暴露了什么,KEV目录中CVE-2021-44228是什么样的?" 更多提示进入 示例工作流程。 。 。 .
工具
11个只读工具. 全部参数在 工具参考。 。 。 .
| 组 | 工具 | 它会做什么 |
|---|---|---|
| 网络 | ip_lookup | 一个IP的端口,产品,CVE,TLS,位置和云,可选有横幅历史 |
shodan_search | 用 Shodan 查询语法搜索设备, 并使用呼和平面分解 | |
shodan_count | 查询的匹配和平面分解总数, 无结果( 免费) | |
domain_info | 一个域的子域和 DNS 记录 | |
dns_lookup | 将主机名确定为 IP, 批次 | |
reverse_dns_lookup | IP 的主机名, 批次 | |
| 脆弱性(CVEDB) | cve_lookup | CVSS, EPSS, KEV, 一个CVE的参考和受影响的CPE |
cpe_lookup | CPE 2.3产品名称标识符 | |
cves_by_product | 用于产品或CPE的 CVES,可被 KEV 过滤并被日期,可被 EPSS 排序 | |
| 帮助者 | search_filters | 有效的搜索过滤器和平面名称 |
api_info | 你的计划 剩下的查询和扫描信用 |
[TIP] 信用:过滤
shodan_search查询费用为1次查询(每个额外页加1次)和domain_info开一通电话.shodan_count, (中文(简体) ),ip_lookup, (中文(简体) ),dns_lookup, (中文(简体) ),reverse_dns_lookup, (中文(简体) ),search_filters, (中文(简体) ),api_infocVEDB 工具是免费的.
HTTP 流线运输
stdio是默认值. 设定 MCP_TRANSPORT=httpStream 运行独立的 HTTP 服务 :
MCP_TRANSPORT=httpStream MCP_PORT=3000 SHODAN_API_KEY=your-key node build/index.js
docker build -t mcp-shodan .
docker run -p 127.0.0.1:3000:3000 -e SHODAN_API_KEY=your-key -e MCP_TRANSPORT=httpStream mcp-shodan
健康检查服务于 /health。 。 。 .
环境变量
| 变量 | 默认 | 说明 |
|---|---|---|
SHODAN_API_KEY | (必须) | 您的 Shodan API 密钥 |
MCP_TRANSPORT | stdio | stdio 或者说 httpStream |
MCP_HOST | localhost | 绑定地址( N)httpStream 页:1 Docker 图像集 0.0.0.0 |
MCP_PORT | 3000 | HTTP 端口 (% 1)httpStream 仅限) |
MCP_ENDPOINT | /mcp | HTTP 端点路径 (httpStream 仅限) |
警卫
[尖叫声] HTTP运输系统 无认证。将端口保留在本地主机上,或者在认证的倒置代理机后,或者任何人可以到达端口时花费您的查询信用值.
- 工具参数在构建任何请求之前先由zod schemas验证. IP必须是有效的 IPv4 或 IPv6, 域为有效的主机名, 侧面
name[:count]列表, CVE ID必须匹配CVE-YYYY-NNNN。 。 。 . - API 密钥从环境中读取, 只发送到
api.shodan.io。CVEDB的电话没有键. - 你往上看的是寄给肖丹的.
私下报告脆弱性;见 警卫。 。 。 .
解决问题
- 401 / 无效密钥 : 检查密钥周围的空格或引用,然后重新启动客户端.
curl "https://api.shodan.io/api-info?key=$SHODAN_API_KEY"展示你的计划和功劳. - 403关
shodan_search数字 : 搜索过滤器需要会员资格或付费API计划. 运行api_info看看你的计划和功劳. - 429个: 肖丹允许每秒约一个请求. 稍后再试.
再来点 解决问题指南。 。 。 .
发展
git clone https://github.com/w0h1v/mcp-shodan && cd mcp-shodan
npm ci
npm test # build + unit tests, no key or network
npx fastmcp dev build/index.js # try tools interactively (needs SHODAN_API_KEY)
许可证
麻省理工学院. 见 自由主义。 。 。 .