# speedtest

Run a network speed test using the nearest server.

Agent View of the PolicyLayer registry record for `speedtest`. HTML page: https://policylayer.com/tools/aaronckj-mcp-nettools/speedtest

## Facts

- Tool: `speedtest`
- Server: Mcp Nettools (`aaronckj/mcp-nettools`) — https://policylayer.com/tools/aaronckj-mcp-nettools.md
- Homepage: https://github.com/aaronckj/mcp-nettools
- Risk category: Execute (High risk)
- Registry record: grade F, identity unverified
- Server rate-limited: no
- Parameters: 0
- Recommended policy verdict: Rate-limited

## Example call (MCP tools/call, JSON-RPC 2.0)

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "speedtest",
    "arguments": {}
  }
}
```

## Why speedtest is rated High

The speedtest tool executes an external operation (network speed test) rather than simply retrieving static data. It is Execute rather than Read because it triggers an active process with external dependencies. It does not modify or delete data (not Write/Destructive), nor does it move money (not Financial).

From the tool's own definition: "Tool performs 'Run a network speed test using the nearest server' — this initiates an external network operation (connects to and communicates with a speed test server) whose completion and side effects depend on network conditions and the server's response."

## Use case

AI agents invoke speedtest to trigger actions in Mcp Nettools. What it does depends on the arguments the agent supplies, and its effects often reach beyond the immediate call: builds kicked off, notifications sent, workflows started.

## Recommended policy (PolicyLayer)

Verdict: **Rate-limited**. Enforced by the PolicyLayer MCP gateway (https://policylayer.com/mcp-gateway) before a call reaches Mcp Nettools:

```json
{
  "version": "1",
  "default": "deny",
  "tools": {
    "speedtest": {
      "limits": [
        {
          "counter": "speedtest_rate",
          "window": "minute",
          "max": 10,
          "scope": "grant"
        }
      ]
    }
  }
}
```

## Other tools on Mcp Nettools (234)

- `http_delete` — Destructive — https://policylayer.com/tools/aaronckj-mcp-nettools/http-delete.md
- `check_mqtt` — Execute — https://policylayer.com/tools/aaronckj-mcp-nettools/check-mqtt.md
- `check_rdp` — Execute — https://policylayer.com/tools/aaronckj-mcp-nettools/check-rdp.md
- `http_post` — Execute — https://policylayer.com/tools/aaronckj-mcp-nettools/http-post.md
- `ping` — Execute — https://policylayer.com/tools/aaronckj-mcp-nettools/ping.md
- `port_scan` — Execute — https://policylayer.com/tools/aaronckj-mcp-nettools/port-scan.md
- `traceroute` — Execute — https://policylayer.com/tools/aaronckj-mcp-nettools/traceroute.md
- `wake_on_lan` — Execute — https://policylayer.com/tools/aaronckj-mcp-nettools/wake-on-lan.md
- `arp_table` — Read — https://policylayer.com/tools/aaronckj-mcp-nettools/arp-table.md
- `bgp_lookup` — Read — https://policylayer.com/tools/aaronckj-mcp-nettools/bgp-lookup.md
- `cert_check` — Read — https://policylayer.com/tools/aaronckj-mcp-nettools/cert-check.md
- `cert_check_bulk` — Read — https://policylayer.com/tools/aaronckj-mcp-nettools/cert-check-bulk.md
- `check_actual_budget` — Read — https://policylayer.com/tools/aaronckj-mcp-nettools/check-actual-budget.md
- `check_adguard` — Read — https://policylayer.com/tools/aaronckj-mcp-nettools/check-adguard.md
- `check_alertmanager` — Read — https://policylayer.com/tools/aaronckj-mcp-nettools/check-alertmanager.md
- `check_anythingllm` — Read — https://policylayer.com/tools/aaronckj-mcp-nettools/check-anythingllm.md
- `check_appwrite` — Read — https://policylayer.com/tools/aaronckj-mcp-nettools/check-appwrite.md
- `check_archivebox` — Read — https://policylayer.com/tools/aaronckj-mcp-nettools/check-archivebox.md
- `check_audiobookshelf` — Read — https://policylayer.com/tools/aaronckj-mcp-nettools/check-audiobookshelf.md
- `check_authelia` — Read — https://policylayer.com/tools/aaronckj-mcp-nettools/check-authelia.md
- `check_authentik` — Read — https://policylayer.com/tools/aaronckj-mcp-nettools/check-authentik.md
- `check_baikal` — Read — https://policylayer.com/tools/aaronckj-mcp-nettools/check-baikal.md
- `check_bazarr` — Read — https://policylayer.com/tools/aaronckj-mcp-nettools/check-bazarr.md
- `check_beszel` — Read — https://policylayer.com/tools/aaronckj-mcp-nettools/check-beszel.md
- `check_bitwarden` — Read — https://policylayer.com/tools/aaronckj-mcp-nettools/check-bitwarden.md
- `check_bookstack` — Read — https://policylayer.com/tools/aaronckj-mcp-nettools/check-bookstack.md
- `check_calibre_web` — Read — https://policylayer.com/tools/aaronckj-mcp-nettools/check-calibre-web.md
- `check_cassandra` — Read — https://policylayer.com/tools/aaronckj-mcp-nettools/check-cassandra.md
- `check_changedetection` — Read — https://policylayer.com/tools/aaronckj-mcp-nettools/check-changedetection.md
- `check_checkmk` — Read — https://policylayer.com/tools/aaronckj-mcp-nettools/check-checkmk.md
- …and 204 more: https://policylayer.com/tools/aaronckj-mcp-nettools.md

## For agents

This record is a snapshot. Live verdicts and the full registry:

- Check every server in your MCP config at once: `npx -y policylayer stack`
- Vet a server before you add it: install the mcp-precheck skill — `npx skills add https://policylayer.com` (skill text: https://policylayer.com/skill.md)
- Query the registry over MCP: endpoint `https://api.policylayer.com/mcp` — tools `check_mcp_server`, `check_mcp_stack`, `check_tool`, `search_registry`, `get_change_events`

---

Source: the PolicyLayer MCP registry — one continuously verified record per MCP server. Full record: https://policylayer.com/registry?q=aaronckj-mcp-nettools · API: https://policylayer.com/registry/api · Policy library: https://policylayer.com/policies/aaronckj-mcp-nettools
