IP信誉检查服务

一个与AbuseIPDB API无缝集成的MCP服务器实现,用于IP信誉检查和滥用报告管理。

  • by Salmanwz
  • Python
  • 本地部署
  • 3 星标
  • 更新于
在 GitHub 查看 Salmanwz/mcp-abuseipdb

使用说明

AbuseIPDB MCP 服务器

一个模型上下文协议(MCP)服务器实现,它提供了与AbuseIPDB API的无缝集成,用于IP声誉检查和滥用报告管理。

概述

这款MCP服务器使AI助手和自动化系统能够查询AbuseIPDB的威胁情报数据库,让您可以通过标准化协议接口检查IP地址的恶意活动情况、获取滥用置信度评分,并访问详细的历史报告数据。

特点/功能

  • IP信誉检查 - 查询任何IPv4或IPv6地址的滥用报告
  • 置信度评分 - 根据报告频率和严重程度获取虐待置信度评分(0-100)
  • 详细报告 - 访问全面的滥用报告元数据和分类
  • 历史数据 - 在可配置的时间窗口内查询滥用报告(最长可达365天)
  • 灵活输出 - 在简洁摘要和详尽详细回复之间切换
  • 基于标准的 - 基于模型上下文协议,实现无缝集成

先决条件

安装

1. 克隆仓库

git clone https://github.com/Salmanwz/mcp-abuseipdb.git
cd mcp-abuseipdb

2. 安装UV包管理器

curl -LsSf https://astral.sh/uv/install.sh | sh

3. 安装依赖项

uv add mcp[cli] httpx

配置

选项1:环境变量(独立使用)

export ABUSEIPDB_API_KEY="your_api_key_here"

选项2:Claude桌面集成

将以下配置添加到您的Claude桌面配置文件中(claude_desktop_config.json):

MacOS(麦金塔操作系统): ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "abuseipdb": {
      "command": "uv",
      "args": [
        "--directory",
        "/absolute/path/to/mcp-abuseipdb",
        "run",
        "abusedb.py"
      ],
      "env": {
        "ABUSEIPDB_API_KEY": "your_api_key_here"
      }
    }
  }
}

重要的替换 /absolute/path/to/mcp-abuseipdb (带有)实际路径和 your_api_key_here 使用您的API密钥。

使用方法

启动服务器(独立模式)

uv run abusedb.py

可用工具

check - IP地址声誉查询

查询AbuseIPDB以获取与给定IP地址相关的滥用报告。

参数:

参数 类型 必需 默认值 描述
ipAddress 字符串 ✅ 是 - 要检查的IPv4或IPv6地址
maxAgeInDays 整数 ❌ 否 30 报告的最大年龄(1-365天)
verbose 布尔值 ❌ 否 false 包含详细报告细分

示例请求:

# Basic check - last 30 days
{
  "ipAddress": "1.2.3.4"
}

# Check with custom time window
{
  "ipAddress": "1.2.3.4",
  "maxAgeInDays": 90
}

# Verbose output with full details
{
  "ipAddress": "1.2.3.4",
  "maxAgeInDays": 90,
  "verbose": true
}

响应结构:

{
  "data": {
    "ipAddress": "1.2.3.4",
    "abuseConfidenceScore": 75,
    "totalReports": 42,
    "lastReportedAt": "2025-10-13T14:23:01+00:00",
    "isWhitelisted": false,
    "countryCode": "US",
    "usageType": "Data Center/Web Hosting/Transit",
    "isp": "Example Hosting Inc",
    "domain": "example-host.com",
    "reports": [...]  // Only included when verbose=true
  }
}

用例

  • 安全运营将IP信誉检查集成到SOC(安全运营中心)工作流程中
  • 事件响应在调查过程中快速评估威胁等级
  • 威胁情报用滥用数据丰富安全警报
  • 网络监控自动化可疑IP检测与阻断
  • 日志分析将连接日志与已知恶意IP进行交叉比对

API速率限制

免费层级的API密钥数量有限 每天1000张支票升级至高级计划以享受更高限额。

故障排除

API密钥问题

# Verify your API key is set
echo $ABUSEIPDB_API_KEY

# Test connectivity
curl -G https://api.abuseipdb.com/api/v2/check \
  --data-urlencode "ipAddress=8.8.8.8" \
  -H "Key: $ABUSEIPDB_API_KEY"

Claude 桌面连接

  1. 验证配置文件路径和JSON语法
  2. 配置更改后重启 Claude 桌面版
  3. 检查MCP服务器日志中的连接错误

发展

项目结构

mcp-abuseipdb/
├── abusedb.py          # Main MCP server implementation
├── pyproject.toml      # UV/Python dependencies
├── README.md           # This file
└── LICENSE            # License information

运行测试

# Add test dependencies
uv add pytest pytest-asyncio httpx

# Run tests
uv run pytest

贡献

欢迎贡献!请随时提交拉取请求。对于重大更改,请先打开一个议题进行讨论,说明您希望做出的更改。

  1. 为仓库创建分支(或“克隆仓库”)
  2. 创建你的特性分支(git checkout -b feature/AmazingFeature)
  3. 提交你的更改(git commit -m 'Add some AmazingFeature')
  4. 推送到分支(git push origin feature/AmazingFeature)
  5. 提交一个拉取请求

安全

此服务器处理敏感威胁情报数据。最佳实践:

  • 永远不要提交API密钥 进行版本控制
  • 将API密钥存储在环境变量或安全保险库中
  • 对于所有API通信,请使用HTTPS(默认强制执行)
  • 在生产环境中实现速率限制
  • 监控API使用情况以发现异常

资源

许可证

此项目采用MIT许可证授权——详见 许可证 详情请见文件。

致谢


注这是一个非官方实现,与AbuseIPDB无任何关联,也未得到其认可。