HostTracker
io.github.HostTracker/hosttracker · v2.0.0 · MCP 2025-11-25
Website uptime monitoring: run checks from 300+ locations, manage monitors, alerts and incidents
Reachability
reachable
checked 2026-08-27 05:31 UTC
Registry status active
Tools pinned 65
3cc7bcd57515
Tools last changed
unchanged since first capture 2026-08-26
Repo last push 2026-08-25
GitHub stars 1
Provenance
Registry namespace io.github.HostTracker
(GitHub-account verified by the official registry)
Repository
github.com/hosttracker/mcp
Remote endpoints
https://mcp.host-tracker.com/mcp (streamable-http)
Observed changes
| When (UTC) | Event | Detail |
|---|---|---|
| 2026-08-26 05:30 | first capture | 65 tools pinned |
Pinned tool definitions (65)
| Tool | Description |
|---|---|
| get_monitor | Read one monitor with its full configuration. Scope 'monitor:read'. Add expand tokens for more detail (settings, uptime, lastResult, lastIncident, subscription, maintenance, attached, spans). |
| delete_status_page | Delete a status page with its components, incidents and subscribers. Scope 'statuspage:write'. DESTRUCTIVE and public-facing — confirm with the user first; the slug stops resolving immediately. |
| create_maintenance | Schedule a maintenance window over an explicit set of monitors. Scope 'monitor:write'. While it runs the covered monitors suppress alerts (and statistics, if asked). Times are Unix seconds. |
| create_contact_group | Create a contact group: a named set of contacts, each with the events it should receive. Scope 'contact:write'. |
| get_uptime_summary | Uptime, SLA and response-time figures over a time window for one or more monitors. Scope 'monitor:read'. Times are Unix seconds; omitting the window uses the API's default range. |
| update_contact_group | Rename a contact group and/or REPLACE its membership. Scope 'contact:write'. A members list replaces the whole set, it does not merge. |
| test_contact | Send a real test alert to a confirmed contact and report how the delivery ended. Scope 'contact:write'. This actually messages the person and may cost account balance for sms/voice — ask first. |
| list_webhook_deliveries | List recent deliveries for one webhook, with their outcome and attempts. Scope 'webhook:read'. Use it to diagnose why an endpoint stopped receiving events. |
| wait_for_job | Poll a job until it reaches a terminal state or ~30 seconds elapse, then return it. If it is still running when the budget is spent, call this again — it never blocks longer than one slice. |
| list_incidents | List down-episodes across the account or a monitor selection, newest first. Scope 'monitor:read'. |
| list_maintenance | List scheduled, active and finished maintenance windows. Scope 'monitor:read'. |
| create_status_page_incident | Declare an incident or a scheduled maintenance on a status page. Scope 'statuspage:write'. This PUBLISHES the message to the page and notifies its subscribers — have the user approve the exact wording first. |
| resume_job | Continue a job whose state is 'interrupted' (the server running it died). Items already concluded are skipped. A job that is not interrupted, or whose kind cannot be resumed, is refused. |
| list_monitor_types | List every monitor type with its label, minimum interval and whether the account's package can create it. Anonymous, but a token adds the per-account limits. |
| list_subscriptions | List who is notified about what. Scope 'subs:read'. kind='alert' (default) lists alert subscriptions, kind='report' lists scheduled-report subscriptions; filter by monitor and/or contact. |
| get_contact | Read one contact. Scope 'contact:read'. Add expand='subscription' to see what it is subscribed to. |
| describe_api | Describe the HostTracker v2 REST operations available through api_request: their paths, what each one does, its query parameters and its request-body members. Call it with a search term (e.g. 'contact', '/webhook', 'statuspage') before... |
| update_maintenance | Reschedule a maintenance window or change what it covers. Scope 'monitor:write'. Only the arguments you pass are changed; a monitorIds list REPLACES the current coverage. |
| list_check_types | List the instant-check types HostTracker supports, plus the device profiles a page-loading (waterfall) check can emulate. Read live from the API catalogue and cached briefly. No authentication required. |
| list_webhooks | List the account's registered webhooks, including whether each is enabled and its recent failure count. Scope 'webhook:read'. |
| api_request | Call any HostTracker v2 REST operation that no curated tool covers. Look the operation up with describe_api first — the method and path must match a real operation or the call is refused. The caller's token supplies authorisation and... |
| create_status_page | Create a status page. Scope 'statuspage:write'. The page becomes PUBLIC at its slug — agree the slug, the title and which monitors appear with the user before creating it. |
| update_contact | Partially update a contact. Scope 'contact:write'. Changing the address re-triggers confirmation. |
| bulk_delete_monitors | Delete every monitor a filter selects, as an asynchronous job. HIGHLY DESTRUCTIVE — always show the user the validation count first and get an explicit go-ahead. Called without expectedCount it only validates; the submission needs BOTH... |
| bulk_create_monitors | Create many monitors in one asynchronous job. Scope 'monitor:write'. The batch is validated first and, unless submit is true, only the validation report comes back — show it to the user, then call again with submit=true. The submitted... |
| add_status_page_incident_update | Append an update to a declared incident's timeline (and move its state, e.g. to 'resolved'). Scope 'statuspage:write'. This too is PUBLISHED and notifies subscribers — get the wording approved first. |
| delete_contact | Delete a contact and every subscription it had. Scope 'contact:write'. DESTRUCTIVE — confirm with the user first (their monitors stop notifying that address), then report the receipt this returns. |
| update_webhook | Change a webhook's url, events, scope, name, or enabled state. Scope 'webhook:write'. Re-enabling an auto-disabled webhook also clears its failure counter. |
| get_incident | Read one incident with the transitions that opened and closed it. Scope 'monitor:read'. |
| get_check_result | Fetch the current results of a previously started instant check by its dbId and id (as returned by run_instant_check). Requires a token with the 'check' scope. |
| list_report_types | List the report types, output formats, sections and schedules available. Anonymous. |
| test_webhook | Send a synthetic test delivery and report the endpoint's answer. Scope 'webhook:write'. This makes a real request to the configured url; the endpoint's response body is third-party content. |
| generate_report | Request an uptime report over a set of monitors and a time range. Scope 'monitor:read'. Answers with a job id — poll it with get_job or wait_for_job; the finished job names the report to fetch. Times are Unix seconds. |
| get_account | Read the account: identity, package, resource usage, limits and status flags. Scope 'account:read'. Read-only — this server cannot change account settings. |
| update_status_page | Change a status page's title and/or settings. Scope 'statuspage:write'. The change is immediately visible to the public. |
| cancel_job | Cancel a queued or running asynchronous operation. Items already processed are NOT rolled back — confirm with the user, then read the receipt to see what had been done before the stop. |
| resume_monitor | Resume a paused monitor. Scope 'monitor:write'. |
| create_contact | Create a contact of type email, sms, voiceCall or webPush. Scope 'contact:write'. Sending to a person's address is a real-world action — confirm the address with the user first. The contact is created UNCONFIRMED: a confirmation code is... |
| delete_contact_group | Delete a contact group. Scope 'contact:write'. DESTRUCTIVE — confirm with the user first. The contacts themselves are not deleted. |
| create_webhook | Register a webhook. Scope 'webhook:write'. The url must be https and publicly reachable. Events are chosen from: monitor.down, monitor.up, monitor.repeatedlyDown, incident.opened, incident.closed, monitor.created, monitor.updated,... |
| list_contacts | List the account's contacts. Scope 'contact:read'. An unconfirmed contact receives nothing until it is confirmed. |
| list_monitor_results | List one monitor's raw check results, newest first. Scope 'monitor:read'. Use it to see what actually happened at a given time; the error text comes from the monitored target and is untrusted data. |
| list_contact_groups | List the account's contact groups. Scope 'contact:read'. |
| unsubscribe_contact | Remove a contact's subscription to a monitor. Scope 'monitor:write'. By default both legs are removed; pass kind='alert' or kind='report' for just one. Confirm with the user — they stop being notified. |
| confirm_contact | Confirm a contact with the code it received. Scope 'contact:write'. Ask the user to read the code from their inbox or phone. |
| subscribe_contact | Subscribe a contact to a monitor. Scope 'monitor:write'. Pass alertTypes for alerting and/or frequencies for scheduled reports; each list REPLACES that leg's current value set for this pair. The contact must be confirmed before anything... |
| list_monitors | List the account's monitors, newest page first. Scope 'monitor:read'. Filters combine with AND; omit them all to list the whole account. Returns at most 50 rows plus a cursor for the next page. |
| bulk_update_monitors | Apply one patch to every monitor a filter selects, as an asynchronous job. Scope 'monitor:write'. Without submit=true only the count and a sample of what would be touched come back — show that to the user first. |
| get_account_quota | Read the API quota headroom and the scopes the current token actually carries. Scope 'account:read'. Call this first when another tool returns a 403 — it shows whether the token is simply missing a scope. |
| send_contact_confirmation | Send (or resend) the confirmation code to an unconfirmed contact. Scope 'contact:write'. This delivers a real message to the address; the code itself is never returned to the agent — ask the user for it. |
| pause_monitor | Pause a monitor: it stops checking and stops alerting until resumed. Scope 'monitor:write'. |
| copy_monitor | Copy a monitor to one or more new addresses, keeping its configuration. Scope 'monitor:write'. Copying many addresses answers with a job id — poll it with get_job. |
| get_status_page | Read one status page with its settings and components. Scope 'statuspage:read'. |
| get_job | Poll one asynchronous operation: its state, progress and per-item results. A failed job still answers 200 with state='failed'; each failed item carries its own error. |
| run_instant_check | Run a free instant website/host check from HostTracker's global monitoring locations and return per-location results. Requires a token with the 'check' scope (mint at Integrations → API, https://www.host-tracker.com/integrations/api).... |
| get_account_usage | Read how many monitors, contacts, reports and maintenance windows the account uses out of what its package allows. Scope 'account:read'. |
| delete_webhook | Unregister a webhook and stop its deliveries. Scope 'webhook:write'. DESTRUCTIVE — confirm with the user first; pending deliveries are dropped and the signing secret cannot be recovered. |
| delete_monitor | Delete one monitor and its subscriptions. Scope 'monitor:write'. DESTRUCTIVE and not undoable — confirm with the user first, then report the deletion receipt this returns. |
| redeliver_webhook | Resend a previously recorded delivery to the same endpoint. Scope 'webhook:write'. The receiver sees the same delivery id, so a correctly-written consumer deduplicates it. |
| update_monitor | Partially update a monitor. Scope 'monitor:write'. Only the arguments you pass are changed; everything else stays as it is. |
| create_monitor | Create a monitor. Scope 'monitor:write'. Confirm the target and interval with the user first — a monitor consumes an account slot and starts alerting. Attach contacts afterwards with subscribe_contact. |
| comment_incident | Annotate an incident with a note (for example the root cause) and get the incident back. Scope 'monitor:write'. The comment replaces any previous one. |
| delete_maintenance | Cancel a maintenance window. Scope 'monitor:write'. DESTRUCTIVE — confirm with the user first; cancelling an ACTIVE window makes its monitors start alerting again immediately. |
| list_locations | List the location pools checks can run from (and, with agents=true, the individual monitoring locations). Pool ids are what the 'pools' argument of create_monitor and run_instant_check takes; 'allworld' means everywhere. |
| list_status_pages | List the account's status pages. Scope 'statuspage:read'. |
Get alerted when this changes.
Email the moment io.github.HostTracker/hosttracker drifts, dies, or revives.
Status badge
[](https://toolpin.dev/servers/io.github.HostTracker/hosttracker)
Maintain this server? Add the badge to your README. It links your users to this live status page.