mcpField
H
HostTracker

HostTracker

已认证精选远程服务
host-tracker.com云与基础设施18 周前更新

关于 HostTracker

HostTracker 的 MCP 服务将 AI 助手连接到网站和基础设施监控账户,可执行检查并管理监控项、告警、事件和状态页。它提供托管 HTTP 端点,也可从源代码自行运行。

主要功能

  1. 01从 300 多个地点运行检查
  2. 02创建和管理监控项
  3. 03查看正常运行时间与事件
  4. 04管理联系人和告警订阅
  5. 05配置 Webhook 和状态页
  6. 06生成报告并管理任务

适用场景

  1. 01从指定区域检查网站
  2. 02在计划维护期间暂停监控项
  3. 03查看事件并发布状态更新
  4. 04管理告警接收者和 Webhook 交付

MCP 相关

该服务通过支持 OAuth 2.1 或 Bearer Token 身份验证的流式 HTTP,将 HostTracker v2 REST API 暴露为 MCP 工具。它也支持供本地启动的客户端使用的 stdio。

配置

远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。

服务地址https://mcp.host-tracker.com/mcp
一键复制安装命令
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。

全部服务地址
Streamable HTTPhttps://mcp.host-tracker.com/mcp需要授权

工具

详细介绍

HostTracker MCP 服务

validate Smithery Glama score MIT

通过 Model Context Protocol 将 AI 助手连接到 HostTracker,让它在对话中操作你的监控账户:从全球 300 多个位置运行实时检查,查看哪些服务宕机,创建或暂停监控项,安排维护时段,查看事件,管理告警接收者,接入 webhook,以及发布状态页更新。

Endpoint   https://mcp.host-tracker.com/mcp
Transport  streamable HTTP
Auth       OAuth 2.1 (sign in when your client asks) - or Authorization: Bearer <HostTracker API token>

此仓库是该托管服务的公开入口:连接元数据(server.json)、各客户端的设置指南(CLIENT.md)和安全策略(SECURITY.md);从 2.0.0 版起,也包含服务本身的源代码 src/,让你可以准确了解端点背后运行的内容,或自行运行一份副本(参见下文“自行运行”)。

两分钟内完成连接

使用 OAuth(推荐——适用于 Claude.ai、Claude Desktop、Claude Code、ChatGPT,以及任何带有支持 OAuth 的连接器对话框的客户端):

  1. 添加端点:在客户端中将 https://mcp.host-tracker.com/mcp 添加为连接器。
  2. 登录并授权。 客户端会打开 HostTracker 登录页面,随后显示列出所需权限的授权卡片(默认权限:运行检查 + 读取监控项)。点击“批准”。令牌不会显示。
  3. 用日常语言提问: “example.com 现在正常吗?从欧洲和亚洲检查一下。”、“我的哪些监控项已宕机?”、“将 staging 监控项暂停到明天。”
Claude Code

使用 OAuth(无需令牌):

claude mcp add --transport http hosttracker https://mcp.host-tracker.com/mcp
# then, inside Claude Code: /mcp -> hosttracker -> Authenticate (opens the sign-in + consent page)

或者在标头中使用 bearer 令牌:

项目中的 .mcp.json(或用户级连接器的 ~/.claude.json):

{
  "mcpServers": {
    "hosttracker": {
      "type": "http",
      "url": "https://mcp.host-tracker.com/mcp",
      "headers": { "Authorization": "Bearer YOUR_HOSTTRACKER_API_TOKEN" }
    }
  }
}

或者通过命令行:

claude mcp add --transport http hosttracker https://mcp.host-tracker.com/mcp \
  --header "Authorization: Bearer YOUR_HOSTTRACKER_API_TOKEN"
Claude.ai 和 Claude Desktop

Settings -> Connectors -> Add custom connector -> 粘贴 https://mcp.host-tracker.com/mcp -> Connect。浏览器会打开 HostTracker 登录和授权页面;点击“批准”后,连接器即可使用。设置到此完成。

也可以改用 bearer 令牌(例如,使用长期有效且权限范围经过手动选择的令牌);Desktop 还可以通过 mcp-remote 桥接程序连接。编辑 claude_desktop_config.json:

{
  "mcpServers": {
    "hosttracker": {
      "command": "npx",
      "args": [
        "-y", "mcp-remote", "https://mcp.host-tracker.com/mcp",
        "--header", "Authorization:${HT_AUTH}"
      ],
      "env": { "HT_AUTH": "Bearer YOUR_HOSTTRACKER_API_TOKEN" }
    }
  }
}

这里使用 ${HT_AUTH} 间接引用是有意为之:某些 mcp-remote 构建版本会在第一个空格处分割参数,导致字面形式的 Authorization: Bearer ... 无法正常工作。需要 Node.js 18 或更高版本。

Cursor

为所有项目配置 ~/.cursor/mcp.json,或为单个项目配置 .cursor/mcp.json:

{
  "mcpServers": {
    "hosttracker": {
      "url": "https://mcp.host-tracker.com/mcp",
      "headers": { "Authorization": "Bearer YOUR_HOSTTRACKER_API_TOKEN" }
    }
  }
}
VS Code(GitHub Copilot Agent 模式)

在工作区中配置 .vscode/mcp.json。inputs 块可避免将令牌写入文件:它只会提示输入一次,并将令牌存储在编辑器的机密存储中:

{
  "inputs": [
    {
      "type": "promptString",
      "id": "ht-token",
      "description": "HostTracker API token",
      "password": true
    }
  ],
  "servers": {
    "hosttracker": {
      "type": "http",
      "url": "https://mcp.host-tracker.com/mcp",
      "headers": { "Authorization": "Bearer ${input:ht-token}" }
    }
  }
}
Windsurf

~/.codeium/windsurf/mcp_config.json:

{
  "mcpServers": {
    "hosttracker": {
      "serverUrl": "https://mcp.host-tracker.com/mcp",
      "headers": { "Authorization": "Bearer YOUR_HOSTTRACKER_API_TOKEN" }
    }
  }
}
自行运行(Docker)

托管端点是使用该服务的常规方式。如果你更愿意运行自己的副本——以便阅读代码、审查代码,或让 MCP 通信保持在自己的网络内——此仓库可以从源代码构建:

docker build -t hosttracker-mcp https://github.com/HostTracker/mcp.git
docker run --rm -p 8080:8080 hosttracker-mcp

随后,你的副本会在 http://localhost:8080/mcp 响应,并使用完全相同的 Authorization: Bearer 标头: 它是无状态桥接服务,因此不会存储任何内容,并且仍会使用你的令牌访问公开的 HostTracker API v2。 如果不使用 Docker,在任何安装了 .NET 10 SDK 的机器上运行 dotnet run --project src 也能达到相同效果。

同一个二进制文件也支持 stdio,适用于以子进程方式启动服务,而非连接 URL 的客户端。添加 --stdio,并将令牌作为 HT_TOKEN 环境变量传入(stdio 不使用请求 标头):

HT_TOKEN=YOUR_HOSTTRACKER_API_TOKEN dotnet run --project src -- --stdio
docker run -i --rm -e HT_TOKEN=YOUR_HOSTTRACKER_API_TOKEN hosttracker-mcp --stdio

在此模式下,日志会写入 stderr,因此 stdout 会保持为干净的协议流。

ChatGPT 和其他客户端

ChatGPT(开发者模式 -> 连接器):添加 https://mcp.host-tracker.com/mcp;ChatGPT 会提供“关联 账户”步骤,并打开 HostTracker 的登录和授权页面。任何带有支持 OAuth 的连接器对话框的其他客户端也能以相同方式使用——只需提供 URL。

任何可以发送静态标头的客户端也能使用承载令牌:端点为 https://mcp.host-tracker.com/mcp,标头为 Authorization: Bearer YOUR_HOSTTRACKER_API_TOKEN。如果 客户端的连接器表单提供 API 密钥或自定义标头身份验证模式,请在其中填写令牌。

适用于任何只能启动命令的客户端的通用无依赖桥接方案:

npx -y mcp-remote https://mcp.host-tracker.com/mcp --header "Authorization:${HT_AUTH}"

更详细的操作指南、验证命令和故障排除内容请参阅 CLIENT.md。

助手可以做什么

此服务将 HostTracker v2 REST API 暴露为 MCP 工具。每个列表工具都接受 limit(最大值为 50)和 cursor,并返回下一个游标;所有时间戳均以 Unix 秒表示,输入和输出均如此;ID 均为不透明字符串。

分类涵盖内容
检查从 300 多个位置对任意 URL 执行即时检查(HTTP/S、ping、TCP 端口、traceroute、DNS、黑名单、WHOIS、Web Risk、爬取、页面速度),获取检查结果,列出可用的检查类型和设备。
监控项以单项或批量形式列出、读取、创建、编辑、复制、暂停、恢复和删除监控项,并查看监控项类型目录。
结果和事件正常运行时间摘要、原始检查结果、事件列表、单个事件详情,以及事件评论。
维护列出、创建、编辑和删除维护时段,避免计划内工作触发警报。
联系人管理联系人和联系人组,发送并确认联系人确认请求,以及向联系人发送测试警报。
订阅查看哪些联系人会收到哪些监控项的通知,并订阅或取消订阅联系人。
Webhook管理 Webhook 端点、发送测试投递、查看投递日志,并重新投递失败的请求。
状态页管理公开状态页,在状态页上发布事件并发布后续更新。
报告生成报告,并列出你的套餐支持的报告类型。
任务轮询、等待、取消或恢复批量操作和报告返回的异步任务。
账户只读:账户资料、配额和当前用量。可用于诊断调用被拒的原因。
位置列出可供选择的检查点池和独立监控位置。
通用入口describe_api 可搜索实际的 v2 操作,api_request 可调用这些操作,适用于没有专用工具的情况。它不是 URL 代理:操作必须存在于已发布的 API 描述中,并且仍受下文安全策略约束。
完整工具列表 | 家族 | 工具 | |---|---| | 检查 | `run_instant_check`, `get_check_result`, `list_check_types` | | 监控项 | `list_monitors`, `get_monitor`, `create_monitor`, `update_monitor`, `delete_monitor`, `pause_monitor`, `resume_monitor`, `copy_monitor`, `bulk_create_monitors`, `bulk_update_monitors`, `bulk_delete_monitors`, `list_monitor_types` | | 结果和事件 | `get_uptime_summary`, `list_monitor_results`, `list_incidents`, `get_incident`, `comment_incident` | | 维护 | `list_maintenance`, `create_maintenance`, `update_maintenance`, `delete_maintenance` | | 联系人 | `list_contacts`, `get_contact`, `create_contact`, `update_contact`, `delete_contact`, `send_contact_confirmation`, `confirm_contact`, `test_contact`, `list_contact_groups`, `create_contact_group`, `update_contact_group`, `delete_contact_group` | | 订阅 | `list_subscriptions`, `subscribe_contact`, `unsubscribe_contact` | | Webhook | `list_webhooks`, `create_webhook`, `update_webhook`, `delete_webhook`, `test_webhook`, `list_webhook_deliveries`, `redeliver_webhook` | | 状态页 | `list_status_pages`, `get_status_page`, `create_status_page`, `update_status_page`, `delete_status_page`, `create_status_page_incident`, `add_status_page_incident_update` | | 报告 | `generate_report`, `list_report_types` | | 作业 | `get_job`, `wait_for_job`, `cancel_job`, `resume_job` | | 账户 | `get_account`, `get_account_quota`, `get_account_usage` | | 位置 | `list_locations` | | 通用接口 | `describe_api`, `api_request` |

首次调用前,有三点行为值得了解:

  • 批量操作会先进行验证。 批量工具会返回一份验证报告;要执行写入,需要显式地再次调用并设置 submit=true。批量删除还需要 confirmed=true 和验证阶段报告的数量,因此如果期间选择内容发生变化,操作会被拒绝。
  • 批量操作和报告是异步的。 它们会返回一个作业 ID;使用 wait_for_job 轮询作业。
  • 删除任何内容都无法撤销,因此始终需要两次调用。 删除工具的首次调用不会删除任何内容——它会返回资源,以便助手向你展示即将删除的内容;只有再次调用并设置 confirmed=true 才会执行删除。API 会返回一份列出已删除内容的回执。

身份验证和权限范围

两种接入方式,共用同一套权限模型:

  • OAuth(已连接的应用)。 客户端自行注册,你只需登录一次,并在授权页面批准一组权限范围。服务器会在后台签发有效期较短的访问令牌(1 小时)和可轮换的刷新令牌(90 天)。如果客户端未请求任何权限范围,则会获得 check + monitor:read。account 系列权限永远不会授予已连接的应用。每个连接都会列在 集成 -> API -> 已连接的应用 下,点击一次即可撤销(之后应用必须再次向你请求授权)。如果工具需要的权限范围不在连接的授权范围内,则会返回 missing_scope,并指出所需权限——重新连接并批准更广泛的权限范围即可。
  • Bearer 令牌。 在 集成 -> API 中创建令牌,并手动选择权限范围、过期时间和可选的 IP 允许列表;将令牌放在 Authorization 标头中传递。

权限范围按系列划分,每个系列都有 :read 和 :write 叶级权限,二者互不隐含;仅指定系列名称即可获得该系列下的所有叶级权限。

你希望助手执行的操作权限范围
运行即时检查check
查看监控项、正常运行时间和事件monitor:read
创建、编辑、暂停或删除监控项和维护计划monitor:write
查看通知对象contact:read、subs:read
管理联系人和订阅contact:write、subs:write
管理 Webhookwebhook:read、webhook:write
管理状态页并发布事件statuspage:read、statuspage:write
查看配额、使用量和限制account:read(仅限 Bearer 令牌——OAuth 连接不提供此权限)

只授予足以完成工作的最小权限范围。绝无理由授予 account:write:无论令牌允许什么,服务器都会拒绝 /account 下的所有写入操作。如果调用被拒绝,请让助手运行 get_account_quota,查看令牌实际携带的权限范围。

限制和配额

  • 该端点会按客户端 IP 对 /mcp 进行速率限制。被限流的响应会携带 Retry-After,服务器会原样传递其值;服务器绝不会代你等待或重试,因此由助手决定如何处理。
  • 你的 API 套餐配额会根据你自己的令牌执行,与直接调用 REST API 时完全相同。get_account_usage 和 get_account_quota 会报告当前情况。详情请参阅错误和限制指南。
  • 应用层故障(没有令牌、权限范围错误、配额用尽、输入无效)会作为普通工具结果返回,并附带可操作的说明,而不是协议错误。

安全

该服务是无状态的,不存储任何内容:每次调用都会使用你自己的令牌转发到 API,所有权、配额和速率限制均由 API 执行。此外,无论令牌如何,服务器都会拒绝 /account 下的任何写入操作,以及任何涉及付款、套餐、密码、登录或签发 API 令牌的操作。经过检查的目标所控制的内容,在发送给模型之前会被包裹在带长度上限的围栏块中,防止恶意目标向助手注入指令。完整政策请参阅 SECURITY.md。

链接

许可证

本仓库的内容(文档和元数据)采用 MIT 许可证发布。托管的 MCP 服务和 HostTracker 服务本身均为专有产品。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。