Shodan MCP服务器
一个非官方的MCP(模型上下文协议)服务器,为Claude提供访问 肖丹 用于IP地址查找、服务发现和漏洞扫描。
特性
- 主机查找:获取有关任何IPv4地址的详细信息
- 搜索:使用过滤器查询Shodan的数据库(例如。,
apache port:80,country:US) - 计数:获取查询的结果计数,但不获取完整数据
- 账户信息:检查您的Shodan API使用情况和限制
安装
- 克隆存储库:
git clone https://github.com/bonetrees/shodan_mcp.git
cd shodan_mcp- 使用Poetry安装依赖项:
poetry install- 设置您的Shodan API密钥:
cp .env.example .env
# Edit .env and add your Shodan API key从获取API密钥 Shodan帐户.
用法
运行服务器
poetry run python -m shodan_mcp连接到克劳德
将此配置添加到您的Claude桌面 config.json 文件:
macOS: ~/Library/Application\ Support/Claude/claude_desktop_config.json\ 视窗: %APPDATA%/Claude/claude_desktop_config.json
{
"mcpServers": {
"shodan": {
"command": "/full/path/to/poetry", # you can find this using command `which poetry`
"args": ["run","-C","/path/to/your/shodan_mcp/pyproject.toml","python", "-m", "shodan_mcp"],
"cwd": "/path/to/your/shodan_mcp"
}
}
}替换 /path/to/your/shodan_mcp 与这个项目的实际路径。
可用工具
1. shodan_host_lookup
查找有关特定IP地址的详细信息。
参数:
ip(必填):要查找的IPv4地址history(可选):包括历史数据(默认值:false)minify(可选):返回最小数据(默认值:false)
例子:
Look up information for IP 8.8.8.82. shodan_search
使用查询过滤器搜索Shodan的数据库。
参数:
query(必填):Shodan搜索查询limit(可选):返回的最大结果(1-100,默认值:10)
示例查询:
apache port:80-端口80上的Apache服务器country:US ssl:true-美国的SSL服务器product:nginx-Nginx服务器port:22-SSH服务器
3. shodan_count
获取查询的结果总数,而不获取实际数据。
参数:
query(必填):Shodan搜索查询
4. shodan_info
获取您的Shodan API帐户信息(信用、计划等)。
参数: 无
Claude使用示例
连接后,您可以问Claude以下问题:
- “使用Shodan查找IP地址1.1.1.1”
- “在美国搜索Apache服务器”
- “全球有多少台SSH服务器?”
- “我目前使用的Shodan API是什么?”
日志记录
服务器在多个级别提供全面的日志记录:
MCP协议记录
日志消息被发送到连接的MCP客户端(如Claude Desktop),并显示在客户端的界面上。这包括:
- 调试:详细的执行信息
- 信息:一般操作信息
- 警告:重要通知(例如敏感搜索)
- 错误:错误条件和故障
服务器端日志记录
用于调试和监控的传统Python日志记录。日志被写入控制台。
配置
通过环境变量控制日志记录级别:
# Python logging level (DEBUG, INFO, WARNING, ERROR)
SHODAN_MCP_LOG_LEVEL=INFO
# MCP protocol logging level (what gets sent to Claude)
SHODAN_MCP_PROTOCOL_LOG_LEVEL=INFO将这些添加到您的 .env 文件以自定义日志记录行为。
发展
项目结构
shodan_mcp/
├── src/
│ └── shodan_mcp/
│ ├── __init__.py
│ ├── server.py
│ └── logging_config.py
├── .env.example
├── pyproject.toml
└── README.md依赖项
mcp-模型上下文协议库shodan-官方Shodan Python库python-decouple-环境变量管理
许可证
MIT许可证-请参阅 许可证 文件以获取详细信息。
贡献
欢迎投稿!请随时提交拉取请求。
免责声明
这是一个非官方工具。请遵守Shodan的服务条款和费率限制。
