Shodan MCP Server

by X3r0K
Verified

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

Integrations

  • Provides Docker support for containerized deployment of the Shodan MCP server, allowing users to build and run the server in isolated containers with proper environment configuration.

  • Allows searching for NGINX servers in Shodan's database using queries like 'nginx country:"US"' to discover internet-connected NGINX instances and their configurations.

  • Enables running the Shodan MCP server natively using Node.js runtime, with Node.js ≥ 20.0.0 required as the execution environment.

shodan-mcp-服务器

这是一个模型上下文协议 (MCP) 服务器,提供对 Shodan API 的访问。它允许您以编程方式向 Shodan 查询有关设备、漏洞等信息。

目录

介绍

shodan-mcp-server提供了一种简单的方法,可以使用模型上下文协议 (MCP) 将 Shodan 情报集成到您的应用程序中。它提供了多种工具,允许您从 Shodan 查询各种类型的信息。

特征

主机信息:获取有关 IP 地址的详细信息 搜索:使用其搜索语法查询 Shodan 的数据库 DNS 查找:解析域名 CVE 信息:获取有关特定 CVE 漏洞的详细信息

安装

  1. 克隆存储库:
    git clone https://github.com/X3r0K/Shodan-MCP-Server.git cd shodan-mcp-server
  2. 安装依赖项:
    npm install
  3. 构建项目:
    npm run build

配置

  1. Shodan获取 Shodan API 密钥。
  2. 在您的 MCP 设置文件中配置 MCP 服务器(例如~/.config/mcp/settings.json ):
    { "mcpServers": { "shodan": { "command": "node", "args": ["/path/to/shodan-mcp-server/build/index.js"], "env": { "SHODAN_API_KEY": "<your_shodan_api_key>" }, "disabled": false, "autoApprove": [] } } }
    <your_shodan_api_key>替换为您的实际 Shodan API 密钥,并将/path/to/shodan-mcp-server为 shodan-mcp-server 目录的实际路径。

与 Node.js 一起使用

您可以使用@modelcontextprotocol/sdk包将 MCP 服务器与 Node.js 一起使用。

  1. 安装 MCP SDK:
    npm install @modelcontextprotocol/sdk
  2. 使用use_mcp_tool函数调用工具:
    import { use_mcp_tool } from '@modelcontextprotocol/sdk'; async function getIpInfo(ip) { const result = await use_mcp_tool('shodan', 'get_ip_info', { ip }); console.log(result); } getIpInfo('8.8.8.8');

API 文档

获取 IP 信息

获取有关特定 IP 地址的信息。

输入:

{ "ip": "string" // The IP address to query }

输出:

包含有关 IP 地址信息的 JSON 对象。

dns_lookup

对给定域执行 DNS 查找。

输入:

{ "hostname": "string" // The hostname to resolve }

输出:

包含已解析 IP 地址的 JSON 对象。

获取漏洞

跟踪与特定 IP 地址相关的漏洞。

输入:

{ "ip": "string" // The IP address to query for vulnerabilities }

输出:

包含与 IP 地址相关的漏洞列表的 JSON 对象。

cve_info

检索有关特定 CVE ID 的信息。

输入:

{ "cve": "string" // The CVE ID to query }

输出:

包含有关 CVE ID 信息的 JSON 对象。

搜索

在 Shodan 中搜索与查询匹配的设备。

输入:

{ "query": "string" // The search query }

输出:

包含与查询匹配的设备列表的 JSON 对象。

项目结构

shodan-mcp-server/ ├── .gitignore ├── package.json ├── README.md ├── tsconfig.json └── src/ ├── index.ts └── index.mts

执照

麻省理工学院

-
security - not tested
F
license - not found
-
quality - not tested

一个 WebSocket 服务器,提供 MCP 接口,用于通过 Shodan API 搜索和检索有关互联网连接设备、IP 地址、DNS 数据和 CVE 漏洞的信息。

  1. Table of Contents
    1. Introduction
      1. Features
        1. Installation
          1. Configuration
            1. Usage with Node.js
              1. API Documentation
                1. get_ip_info
                2. dns_lookup
                3. get_vulnerabilities
                4. cve_info
                5. search
              2. Project Structure
                1. License
                  ID: 6sshn9vsgk