home / mcp / internet speed mcp server

Internet Speed MCP Server

The MCP Internet Speed Test is a specialized Model Context Protocol (MCP) server that enables AI models and agents to perform internet speed measurements.

Installation
Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "inventer-dev-mcp-internet-speed-test": {
      "command": "mcp-internet-speed-test",
      "args": [],
      "env": {
        "PYTHONLOCK": "PYTHONLOCK=1"
      }
    }
  }
}

This MCP server provides an organized interface for measuring internet performance using a standardized Model Context Protocol (MCP). You can run download, upload, latency, and jitter tests, while gathering detailed CDN and server metadata to help you diagnose network performance from AI-driven workflows.

How to use

You interact with this MCP server by configuring an MCP client to call its testing tools. The server exposes dedicated functions to measure download speed, upload speed, latency, and jitter, and to fetch server metadata and run a complete test. When you run a test, you receive structured results that include bandwidth, latency, jitter, and CDN-related details such as the detected CDN provider and the server location.

How to install

Prerequisites are Python 3.12 or higher and a compatible package manager. You can install and run the MCP server using one of several methods listed below. Follow the exact commands to ensure the server starts correctly and the MCP client can connect.

# Install the package globally via pip (recommended)
pip install mcp-internet-speed-test

# Run the MCP server
mcp-internet-speed-test
# Using uv for installation and execution
uv add mcp-internet-speed-test
# Or run directly without installing
uvx mcp-internet-speed-test
# Docker usage to run the MCP server
# Build the image
docker build -t mcp-internet-speed-test .

# Run the MCP server in a container
docker run -it --rm -v $(pwd):/app -w /app mcp-internet-speed-test

For development or local customization, you can clone the project, install in development mode, and run the server using a Python entry point or uv. Example commands are shown in the development flow.

# Development/local installation
git clone https://github.com/inventer-dev/mcp-internet-speed-test.git
cd mcp-internet-speed-test

# Install in development mode
pip install -e .

# Or using uv
uv sync
uv run python -m mcp_internet_speed_test.main

Configuration and usage notes

To use this MCP server with an MCP client, you can configure the MCP client to point at the server and call its testing tools. The server offers multiple testing functions and returns comprehensive metrics along with CDN and server metadata. Below are representative configuration examples and key details you will encounter when wiring this server into your MCP environment.

{
  "mcpServers": {
    "mcp-internet-speed-test": {
      "command": "mcp-internet-speed-test",
      "args": []
    }
  }
}

If you prefer using uvx for a local run, you can configure it as follows.

{
  "mcpServers": {
    "mcp-internet-speed-test": {
      "command": "uvx",
      "args": ["mcp-internet-speed-test"]
    }
  }
}

Troubleshooting and notes

If you encounter issues starting the MCP server or connecting from a client, verify Python 3.12+ is installed and the required packages are present. Ensure the MCP configuration path is correct and the project directory has read and execute permissions. Network-related problems might involve firewall rules or CDN routing, so check access to the test endpoints and CDN headers during testing.

Tools and capabilities

This server provides a cohesive set of testing tools to assess network performance and collect CDN-related metadata. The available functions are designed to be invoked from MCP clients to obtain actionable metrics and context for network diagnostics.

Available tools

measure_download_speed

Measures download bandwidth (in Mbps) and provides server location information.

measure_upload_speed

Measures upload bandwidth (in Mbps) and provides server location information.

measure_latency

Measures network latency (in ms) using multiple samples and reports the minimum value.

measure_jitter

Calculates network jitter from latency samples and reports stability metrics.

get_server_info

Retrieves detailed CDN and server metadata for a given URL without performing a speed test.

run_complete_test

Executes a comprehensive test that includes all metrics and server metadata.