GitHub
GitHub’s official server lets AI read and manage code, issues and pull requests in your account. Use GitHub’s hosted version or run it locally with Docker.
Description from the maker (original English)
Website uptime monitoring: run checks from 300+ locations, manage monitors, alerts and incidents
These three are never merged into one score: opinions, measurements and popularity are different things.
We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.
Pick the AI app you use, then copy the settings.
AuthorizationValues marked secret are keys to your account. Never share them or paste them into a chat.
You need
Which app do you use?
Pick your app above. We remember it, so next time the button says “Install in …”.
This address needs a key in a request header, which the add-connector menu cannot set. Use Claude Code, Cursor or VS Code instead.
Run this in your terminal
claude mcp add --transport http hosttracker https://mcp.host-tracker.com/mcp --header 'Authorization: Bearer {hosttracker_api_token}'Fill in the empty values before running it.
Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"hosttracker": {
"url": "https://mcp.host-tracker.com/mcp",
"headers": {
"Authorization": "Bearer {hosttracker_api_token}"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
Paste into .vscode/mcp.json in your project
{
"servers": {
"hosttracker": {
"type": "http",
"url": "https://mcp.host-tracker.com/mcp",
"headers": {
"Authorization": "Bearer {hosttracker_api_token}"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
This address needs a key in a request header, which the add-connector menu cannot set. Use Claude Code, Cursor or VS Code instead.
Your choice stays on this device in a cookie; no account needed.
Authorization secret HTTP headerThese settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
We have not read this server’s tool list yet; we check endpoints in rotation.
We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 6, 2026
The registry name was verified with the GitHub account HostTracker, which owns the repo
We have not read this repo from GitHub yet
We have not read this repo from GitHub yet
Not checked yet; we check endpoints in rotation
Not checked yet; we check endpoints in rotation
Not checked yet; we read the tool list when we check the endpoint
Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.
It passed 1 of 1 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.
You need to fill in: Authorization
It runs in the maker’s cloud. Connect over the internet with nothing to install, but what you send passes through the maker’s servers.
The GitHub repo last changed –, and the latest version (2.1.0) reached the registry 2 months ago.
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. It connects by URL, so apps that accept remote MCP servers work too, such as ChatGPT in developer mode.
In the same category: GitHub, Desktop Commander, Cloudflare MCP
Servers in the same category from other makers, sorted by stars.
Reading a card:★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi
GitHub’s official server lets AI read and manage code, issues and pull requests in your account. Use GitHub’s hosted version or run it locally with Docker.
MCP server for terminal commands, file operations, and process management
Cloudflare MCP servers
Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.
Connect an AI assistant to HostTracker over the Model Context Protocol and let it *operate* your monitoring account in conversation: run a live check from 300+ global locations, see what is down, create or pause a monitor, schedule a maintenance window, review incidents, manage who gets alerted, wire a webhook, publish a status page update.
Endpoint https://mcp.host-tracker.com/mcp
Transport streamable HTTP Auth OAuth 2.1 (sign in when your client asks) - or Authorization: Bearer
This repository is the public face of that hosted server: the connection metadata (server.json), the per-client setup guide (CLIENT.md), and the security policy (SECURITY.md) - and, since 2.0.0, the server's own source code in src/, so you can read exactly what runs behind the endpoint or run a copy yourself (see "Run it yourself" below).
With OAuth (recommended - Claude.ai, Claude Desktop, Claude Code, ChatGPT and any client with an OAuth-capable connector dialog):
https://mcp.host-tracker.com/mcp as a connector in your client.With OAuth (no token needed):
claude mcp add --transport http hosttracker https://mcp.host-tracker.com/mcp
Or with a bearer token in the header:
.mcp.json in your project (or ~/.claude.json for a user-wide connector):
{
"mcpServers": { "hosttracker": { "type": "http", "url": "https://mcp.host-tracker.com/mcp", "headers": { "Authorization": "Bearer YOUR_HOSTTRACKER_API_TOKEN" } } } }
Or from the command line:
claude mcp add --transport http hosttracker https://mcp.host-tracker.com/mcp \
--header "Authorization: Bearer YOUR_HOSTTRACKER_API_TOKEN"
Settings -> Connectors -> Add custom connector -> paste https://mcp.host-tracker.com/mcp -> Connect. The browser opens HostTracker's sign-in + consent page; press Approve and the connector is live. That is the whole setup.
To use a bearer token instead (for example a long-lived token with a hand-picked scope set), Desktop can also connect through the mcp-remote bridge. Edit 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" } } } }
The ${HT_AUTH} indirection is deliberate: some mcp-remote builds split an argument on its first space, which breaks a literal Authorization: Bearer .... Node.js 18 or newer is required.
~/.cursor/mcp.json for every project, or .cursor/mcp.json for one:
{
"mcpServers": { "hosttracker": { "url": "https://mcp.host-tracker.com/mcp", "headers": { "Authorization": "Bearer YOUR_HOSTTRACKER_API_TOKEN" } } } }
.vscode/mcp.json in the workspace. The inputs block keeps the token out of the file, prompting for it once and storing it in the editor's secret storage:
{
"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}" } } } }
~/.codeium/windsurf/mcp_config.json:
{
"mcpServers": { "hosttracker": { "serverUrl": "https://mcp.host-tracker.com/mcp", "headers": { "Authorization": "Bearer YOUR_HOSTTRACKER_API_TOKEN" } } } }
The hosted endpoint is the normal way to use the server. If you would rather run your own copy - to read the code, audit it, or keep the MCP hop inside your network - the repository builds it from source:
docker build -t hosttracker-mcp https://github.com/HostTracker/mcp.git
docker run --rm -p 8080:8080 hosttracker-mcp
Your copy then answers at http://localhost:8080/mcp and takes exactly the same Authorization: Bearer header: it is a stateless bridge, so it stores nothing and still talks to the public HostTracker API v2 under your token. Without Docker, dotnet run --project src does the same on any machine with the .NET 10 SDK.
The same binary also speaks stdio, for clients that launch the server as a child process instead of connecting to a URL. Add --stdio and pass your token as the HT_TOKEN environment variable (there is no request header on 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
Logs go to stderr in that mode, so stdout stays a clean protocol stream.
ChatGPT (developer mode -> connectors): add https://mcp.host-tracker.com/mcp; ChatGPT offers its "link account" step, which opens HostTracker's sign-in + consent page. Any other client with an OAuth-capable connector dialog works the same way - just the URL.
Any client that can send a static header also works with a bearer token: the endpoint https://mcp.host-tracker.com/mcp and the header Authorization: Bearer YOUR_HOSTTRACKER_API_TOKEN. Where a client's connector form offers an API-key or custom-header authentication mode, the token goes there.
A generic, dependency-free bridge for anything that can only launch a command:
npx -y mcp-remote https://mcp.host-tracker.com/mcp --header "Authorization:${HT_AUTH}"
Longer walkthroughs, verification commands and troubleshooting live in CLIENT.md.
The server exposes the HostTracker v2 REST API as MCP tools. Every list tool takes limit (maximum 50) and cursor and returns the next cursor; every timestamp is Unix seconds in both directions; ids are opaque strings.
| Family | What it covers |
|---|---|
| Checks | Run an instant check on any URL from 300+ locations (HTTP/S, ping, TCP port, traceroute, DNS, blacklist, WHOIS, Web Risk, crawl, page speed), fetch its result, list the available check types and devices. |
| Monitors | List, read, create, edit, copy, pause, resume and delete monitors, in single or bulk form, plus the catalogue of monitor types. |
| Results and incidents | Uptime summaries, raw check results, the incident list, one incident in detail, and comments on an incident. |
| Maintenance | List, create, edit and delete maintenance windows so planned work does not raise alerts. |
| Contacts | Manage contacts and contact groups, send and confirm a contact confirmation, and send a test alert to one. |
| Subscriptions | See who is notified for which monitor, and subscribe or unsubscribe a contact. |
| Webhooks | Manage webhook endpoints, send a test delivery, review the delivery log and redeliver a failed one. |
| Status pages | Manage public status pages, publish an incident on one and post follow-up updates. |
| Reports | Generate a report and list the report types available on your plan. |
| Jobs | Poll, wait on, cancel or resume the asynchronous jobs that bulk operations and reports return. |
| Account | Read-only: the account profile, its quota and its current usage. Useful for diagnosing a refused call. |
| Locations | List the checkpoint pools and individual monitoring locations you can target. |
| Generic door | describe_api searches the real v2 operations and api_request calls one, for anything without a dedicated tool. It is not a URL proxy: the operation must exist in the published API description, and the safety policy below still applies. |
The full tool list
| Family | Tools |
|---|---|
| Checks | run_instant_check, get_check_result, list_check_types |
| Monitors | 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 |
| Results and incidents | get_uptime_summary, list_monitor_results, list_incidents, get_incident, comment_incident |
| Maintenance | list_maintenance, create_maintenance, update_maintenance, delete_maintenance |
| Contacts | 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 |
| Subscriptions | list_subscriptions, subscribe_contact, unsubscribe_contact |
| Webhooks | list_webhooks, create_webhook, update_webhook, delete_webhook, test_webhook, list_webhook_deliveries, redeliver_webhook |
| Status pages | list_status_pages, get_status_page, create_status_page, update_status_page, delete_status_page, create_status_page_incident, add_status_page_incident_update |
| Reports | generate_report, list_report_types |
| Jobs | get_job, wait_for_job, cancel_job, resume_job |
| Account | get_account, get_account_quota, get_account_usage |
| Locations | list_locations |
| Generic door | describe_api, api_request |
Three behaviours worth knowing before the first call:
submit=true. Bulk deletion additionally needs confirmed=true and the count the validation pass reported, so a selection that drifted in between is refused.wait_for_job.confirmed=true deletes. The API returns a receipt listing what was removed.Two ways in, same permission model:
check + monitor:read. The account family is never grantable to a connected app. Every connection is listed under Integrations -> API -> Connected apps, where one click revokes it (the app then has to ask you again). A tool that needs a scope thOnly the beginning is shown; read the rest in the repo