Labsco
MCP SERVER

MCP Internet Speed Test

by inventer-dev

Measure download, upload, latency and jitter — and see which CDN edge answered.

Network, Endpoint & Fleet Management
Summary
It tells you which edge served the test, which is usually the real question.

A bandwidth figure on its own does not explain a slow connection; knowing the bytes came from a POP in another city, on a cache MISS, does. The measurement follows the SpeedOf.Me approach — file sizes double until one sample runs long enough to be a fair reading, and that sample is the number reported rather than an average over short ones.

What it is

A Python server that runs real network measurements and reports both the numbers and the CDN server that served the test — provider, POP code, physical location and cache status.

What you get
  • `measure_download_speed` and `measure_upload_speed` in Mbps, each with the server location that handled it
  • `measure_latency` from multiple samples, reporting the minimum, and `measure_jitter` from the variation between them
  • `get_server_info` — CDN details for any URL without running a speed test at all
  • `run_complete_test` — every metric plus server metadata in a single call
  • CDN identification for Fastly, Cloudflare and Amazon CloudFront, with the POP code mapped to a physical location from a table of 50+ worldwide, cache HIT or MISS, and the `x-served-by`, `via` and `x-cache` headers
  • Incremental testing that starts at 128KB and doubles up to 128MB, stopping once a sample runs at least the sustain time — configurable from 1 to 8 seconds, default 8
Requirements

Python 3.12 or higher, for the async support. `pip install mcp-internet-speed-test` then run `mcp-internet-speed-test`, or `uvx mcp-internet-speed-test` without installing anything. A Dockerfile is included if you would rather containerise it.

Setup effort

One command — pip install mcp-internet-speed-test