README
🚀 猎人 API MCP 服务器
这是一个基于 Model Context Protocol (MCP) 的服务器,提供了与 Huntress API 交互的工具。借助该服务器,你可以进行程序化访问,实现账户管理、组织管理、代理管理、事件报告、摘要报告等诸多功能。
🚀 快速开始
本服务器可让你轻松与 Huntress API 进行交互,实现各类管理和报告功能。你可以通过 Smithery 自动安装,也能手动进行安装配置。
✨ 主要特性
- 账户信息检索:可获取当前账户的详细信息。
- 组织管理:支持列出账户中的所有组织,并获取特定组织的详细信息。
- 代理管理与监控:能够列出账户中的所有代理,同时获取特定代理的详细信息。
- 事件报告访问:可以列出事件报告,并获取特定事件报告的详细信息。
- 摘要报告生成:支持列出摘要报告,并获取特定摘要报告的详细信息。
- 费用报告访问:可列出费用报告,并获取特定费用报告的详细信息。
- 内置速率限制:每分钟限制60次请求,确保服务稳定。
- 错误处理和响应格式化:对多种错误场景进行处理,并对响应进行格式化。
📦 安装指南
使用 Smithery 安装
通过 Smithery 自动安装 Huntress API MCP 服务器以用于 Claude 桌面版:
npx -y @smithery/cli install huntress-mcp-server --client claude
手动安装
- 克隆仓库。
- 安装依赖:
npm install - 基于
.env.example创建一个.env文件:HUNTRESS_API_KEY=your_api_key_here HUNTRESS_API_SECRET=your_api_secret_here - 构建服务器:
npm run build
💻 使用示例
基础用法
以下是使用 get_account_info 工具获取账户信息的示例:
# 调用 get_account_info 工具获取账户信息
# 假设已经配置好环境变量
node path/to/huntress-server/build/index.js get_account_info
高级用法
以下是使用 list_organizations 工具列出账户中所有组织的示例:
# 调用 list_organizations 工具列出所有组织
# 假设已经配置好环境变量
node path/to/huntress-server/build/index.js list_organizations
📚 详细文档
可用工具
账户管理
get_account_info:获取当前账户信息。
组织管理
list_organizations:列出账户中的所有组织。get_organization:获取特定组织的详细信息。
代理管理
list_agents:列出账户中的所有代理。get_agent:获取特定代理的详细信息。
事件报告
list_incident_reports:列出事件报告。get_incident_report:获取特定事件报告的详细信息。
摘要报告
list_summary_reports:列出摘要报告。get_summary_report:获取特定摘要报告的详细信息。
费用报告
list_billing_reports:列出费用报告。get_billing_report:获取特定费用报告的详细信息。
配置
服务器需要以下环境变量:
| 属性 | 详情 |
|------|------|
| HUNTRESS_API_KEY | 你的 Huntress API Key |
| HUNTRESS_API_SECRET | 你的 Huntress API Secret Key |
这些可以在你的 Huntress 账户 <your_account_subdomain>.huntress.io 下的“API 凭证”部分获取。
使用 MCP
将以下配置添加到你的 MCP 设置中:
{
"mcpServers": {
"huntress": {
"command": "node",
"args": ["path/to/huntress-server/build/index.js"],
"env": {
"HUNTRESS_API_KEY": "your_api_key_here",
"HUNTRESS_API_SECRET": "your_api_secret_here"
}
}
}
}
速率限制
服务器实现了 Huntress API 的速率限制,即每分钟60次请求(基于滑动窗口)。这意味着:
- 在任何60秒的时间段内最多只能有60次请求。
- 窗口是滑动的,因此如果第一次请求在T0,第60次请求在T30,则第61次请求必须等到T60。
错误处理
服务器处理了多种错误场景:
- 无效的 API 凭证。
- 超过速率限制。
- 无效的请求参数。
- API 响应错误。
📄 许可证
本项目采用 MIT License,详情请参见 LICENSE 文件。
微信扫一扫