Keel logo

Keel

Network diagnostics over MCP, including DNS, connectivity, ports, TLS certificates, HTTP checks, and subnet discovery.

Install Keel

Pick your client, then add it in one click or paste the config.

STDIOPython
~/Library/Application Support/Claude/claude_desktop_config.json
claude_desktop_config.json
{
  "mcpServers": {
    "keel-2": {
      "command": "uvx",
      "args": [
        "sounding-mcp"
      ]
    }
  }
}

Settings → Developer → Edit Config, merge this into mcpServers, then fully quit and reopen Claude Desktop.

Install not yet sandbox-tested— we haven't run this command through our automated sandbox yet. Not a red flag; we're working through the catalog.

Overview

Keel MCP server exposes structured network diagnostic tools for AI assistants through the Model Context Protocol. It runs over stdio and covers TCP connectivity, route tracing, DNS, port checks, TLS certificates, WHOIS, HTTP responses, public IPs, speed tests, and DNS propagation. Install it from PyPI with pip or pipx, then register the `sounding` command in an MCP client. Reach for it when an agent needs network observations without manually invoking tools such as ping, dig, nmap, or openssl.

Use cases

  • Diagnose TCP connectivity and latency to a host
  • Resolve DNS records and compare public propagation
  • Inspect HTTP responses and TLS certificate expiry
  • Check individual ports or scan common TCP ports
  • Discover live hosts on an allowed private subnet

Key features

  • TCP ping and route tracing
  • DNS and reverse DNS lookups
  • Port checks and rate-limited scans
  • TLS certificate and WHOIS inspection
  • HTTP timing, headers, and status checks
  • Subnet discovery and DNS propagation testing

Tools14

What Keel lets your agent do. Expand a tool for its parameters.

Self-reported~178 tokens of context

Security & health

What it can reach and how reliably it runs — from our own checks, not the maintainer’s claims.

ActiveLast checked 2d ago

Recent health check succeeded.

7/7 checks healthy over the last 39d

Supply-chain signal

No high-severity advisories surfaced by our automated scan.

Critical 0High 0Medium 0Low 0

Scanned 10d ago via OSV.dev · sounding-mcp (PyPI)

Adoption & maintenance

Factual signals from GitHub, npm, and our automated checks — not a rating.

Last commit6mo agoMost recent push to the default branch.
Tools exposed14Callable tools this server registers over MCP.

How Keel works

What Keel MCP server does

Keel MCP server provides network diagnostics as MCP tool calls for AI assistants. The package is distributed as sounding-mcp, while the executable used to start it is sounding. Its tools cover external connectivity checks, name resolution, domain and certificate inspection, HTTP endpoint measurements, and limited private-network discovery.

Responses are structured around individual diagnostic operations rather than a shell session. This lets an MCP client request a specific check, such as resolving an MX record, testing a TCP port, or inspecting an HTTPS certificate.

How it works

The server uses stdio transport. After installation, an MCP client launches the sounding executable and communicates with it through standard input and output. Inputs are validated before network requests or subprocesses run.

The available checks map to common command-line networking tasks. ping makes TCP connections to port 80 and reports latency statistics. traceroute follows the route to a host. DNS tools resolve selected record types or perform reverse lookups, while http_check reports response status, timing, headers, and response size. Other tools retrieve WHOIS data, check certificate details and expiry, measure download speed, or compare DNS results across public resolvers.

Setup and configuration

Install from PyPI with either:

  • pip install sounding-mcp
  • pipx install sounding-mcp

Run the server with sounding. Claude Code can register it with claude mcp add sounding -- sounding. Claude Desktop uses an mcpServers entry whose command is sounding; installations inside a virtual environment can instead specify the executable's full path.

No environment variables are required to run the documented command.

Tools and capabilities

The Keel MCP server exposes these capabilities:

  • Check server status and version with health.
  • Test TCP connectivity and latency with ping.
  • Trace routes with configurable hop limits using traceroute.
  • Query A, AAAA, MX, CNAME, TXT, and NS records with dns_lookup.
  • Perform reverse DNS, WHOIS, SSL/TLS certificate, and HTTP checks.
  • Test one TCP port or scan common ports with port_check and port_scan.
  • Discover live hosts on permitted private subnets with subnet_scan.
  • Retrieve the machine's public IP, measure download speed, and inspect DNS propagation.

Limitations and notes

port_scan is rate-limited and supports at most 100 ports. subnet_scan accepts only RFC 1918 private subnets, limits the network to a maximum /20, and uses concurrency limiting. The ping operation tests TCP port 80 rather than sending ICMP packets.

For safety, http_check resolves hostnames and blocks internal, private, loopback, link-local, and cloud metadata addresses, including IPv4-mapped IPv6 addresses. Input validators reject malformed hostnames, invalid ports, and shell metacharacters. Traceroute and WHOIS subprocesses use direct argument execution rather than shell interpolation. These controls limit the kinds of destinations and inputs the Keel MCP server can process.

Reviews

No reviews yet — be the first to share how it worked for you.

Frequently Asked Questions about Keel

Keel is an MCP server that connects AI assistants to network diagnostic operations through the `sounding` command. Its main tools cover TCP ping, traceroute, DNS and reverse DNS, port checks and scans, SSL certificate inspection, WHOIS, HTTP checks, subnet discovery, public IP lookup, speed testing, and DNS propagation.

Install it with `pip install sounding-mcp` or `pipx install sounding`. After installation, start the server by running `sounding`; MCP clients can launch that command over stdio.

Add an `sounding` server entry to `claude_desktop_config.json` with `command` set to `sounding` and an empty `args` array. If it is installed in a virtual environment, set `command` to the full path of the executable.

Yes, `subnet_scan` can discover live hosts on RFC 1918 private subnets, but it limits the subnet to a maximum `/20` and applies concurrency limiting. The separate `http_check` tool blocks private and other internal destinations.

Related MCP servers

Add a badge to your READMEShow it’s listed — live SVG, Markdown or HTML.

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewKeel AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/keel-2?style=directory)](https://allmcps.com/mcp/keel-2)
HTML Embed
<a href="https://allmcps.com/mcp/keel-2"><img src="https://allmcps.com/api/badge/keel-2?style=directory" alt="Keel on AllMCPs" /></a>