# Keel [Health: Active]

**Category:** 💻 Developer Tools  
**Repository:** https://github.com/seayniclabs/sounding  
**GitHub Stars:** 0  
**Views:** 0  
**Installs:** 0  
**Upvotes:** 0  
**Directory Page:** https://allmcps.com/mcp/keel-2

## Description
Network diagnostics — ping, traceroute, DNS, port scanning, and connectivity testing.

## Tools
Capabilities this server exposes over MCP:

- **health** — Server version and status check
- **ping** — TCP connect ping (port 80) with latency stats
- **traceroute** — Trace network route to a host
- **dns_lookup** — Resolve DNS records (A, AAAA, MX, CNAME, TXT, NS)
- **reverse_dns** — Reverse DNS lookup for an IP address
- **port_check** — Check if a single TCP port is open
- **port_scan** — Scan common TCP ports (rate-limited, max 100)
- **check_ssl_cert** — Inspect SSL/TLS certificate details and expiry
- **whois_lookup** — WHOIS domain registration lookup
- **http_check** — HTTP request with status, timing, headers, size
- **subnet_scan** — Discover live hosts on a local subnet (RFC 1918 only)
- **get_public_ip** — Get the machine's public IP address
- **speed_test** — Measure download speed (Mbps) and latency
- **dns_propagation** — Check DNS propagation across public resolvers

## Claude Desktop Quick Installation
Install path detected from listing signals. Uses `uvx` (confidence: high):

```json
"mcpServers": {
  "keel": {
    "command": "uvx",
    "args": ["sounding-mcp"]
  }
}
```

## Documentation

## 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.

_Full upstream README: https://allmcps.com/mcp/keel-2/readme_

