Skip to main content
Glama

netip-mcp

The whatismynetip.com toolbox as tools your coding agent can call. Subnet math, "what runs on this port and should it be open", MAC vendor lookups, DNS and blocklist checks, the certificate a host actually serves, and the IP the internet sees you as.

Free, MIT, no account, no telemetry. The site's own tools run in your browser; this runs the same logic next to your agent.

Install

Pin the version.

Claude Code

claude mcp add netip -- npx -y github:labaccessnow/netip-mcp#v0.1.0

Claude Desktop, Cursor, or any client with a JSON config

{
  "mcpServers": {
    "netip": {
      "command": "npx",
      "args": ["-y", "github:labaccessnow/netip-mcp#v0.1.0"]
    }
  }
}

Docker

{
  "mcpServers": {
    "netip": {
      "command": "docker",
      "args": ["run", "-i", "--rm", "ghcr.io/labaccessnow/netip-mcp:0.1.0"]
    }
  }
}

Node 18 or newer for the npx route. Also in the official MCP registry as io.github.labaccessnow/netip-mcp.

Related MCP server: NetworkCalc MCP Server

Tools

Tool

What it answers

Network

subnet_calc

Network, mask, wildcard, broadcast, host range and counts for a CIDR — IPv4 and IPv6, /31 and /32 done right

none

ip_in_subnet

Is this address inside that block?

none

ip_convert

IPv4 as dotted, integer, hex, binary — from any of them

none

ipv6_normalize

Expanded and RFC 5952 compressed forms, and what kind of address it is

none

mac_lookup

Vendor from the full IEEE registry (~40,000 assignments, bundled), plus the multicast and locally-administered bits

none

lookup_port

What runs on a port, and whether to expose it — 100 ports written up by hand, searchable by service

none

dns_lookup

A, AAAA, MX, TXT, NS, CNAME, CAA, SOA, PTR, SRV over DNS-over-HTTPS

DoH

reverse_dns

PTR for an IPv4 or IPv6 address

DoH

dnsbl_check

Five common blocklists, honest about the ones that refuse public resolvers

DoH

tls_inspect

The certificate a host actually serves: expiry, SANs, chain verification, protocol, cipher

direct TLS

my_public_ip

The address the internet sees, edge location, ASN, reverse DNS, datacenter/VPN hint

Cloudflare trace + Team Cymru DNS

lookup_port

The one I reach for most. The port pages on the site are opinionated — every port carries a verdict:

Port 3389/tcp+udp — RDP (Remote Desktop Protocol)

  Category   remote access
  Software   Windows Remote Desktop Services, xrdp, FreeRDP server, Windows Admin Center hosts
  Exposure   NEVER — do not expose to the internet

Internet-facing RDP is the most common initial-access route for ransomware crews, who
credential-stuff it around the clock; put it behind WireGuard, Tailscale or an RD Gateway …

Ask by number, or search: lookup_port with query: "redis" finds 6379. detail: true adds the full write-up and FAQ.

What it does not do

  • No account, no signup, no key.

  • No telemetry. Nothing about your usage goes anywhere.

  • Nothing of yours is read from disk. The only file it opens is its own bundled OUI table.

  • The local tools never open a socket. The network tools talk only to public services — Cloudflare and Google's DNS-over-HTTPS resolvers, Cloudflare's trace endpoint, Team Cymru's ASN DNS, and whichever host you point tls_inspect at. tls_inspect refuses anything that resolves to private or reserved space, so it cannot be turned on your own network.

  • "Is my port reachable from outside?" needs a machine outside your NAT to try the connection. That is what whatismynetip.com/port-checker does; a local tool cannot.

The port data and the calculators are the same ones the site uses, so the two stay in step.

Licence

MIT. Written by James Son — network, security, and automation engineer. Corrections and additions to the port write-ups are welcome.

Available Tools

11 tools
dnsbl_checkA

Check an IPv4 address against five common spam/abuse blocklists (Spamhaus ZEN, SpamCop, SORBS, Barracuda, s5h). Honest about lists that refuse public-resolver queries — those come back n/a, never a false 'clean'.

ParametersJSON Schema
NameRequiredDescriptionDefault
ipYesIPv4 address.

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It openly explains that lists refusing public-resolver queries return 'n/a' rather than a misleading 'clean', which is valuable honesty about result semantics. It does not mention other traits like rate limits or network dependency, but the n/a disclosure is significant and well beyond a basic restatement.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, zero filler. The main action is front-loaded, and the crucial caveat about n/a results is delivered in a compact follow-up. Every sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a single-parameter, no-output-schema tool, the description covers the essential operational aspects: what it checks, which lists it uses, and how to interpret one ambiguous result. It does not spell out the full return shape, but the n/a explanation and list of blocklists make the tool's behavior sufficiently predictable for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%: the only parameter, 'ip', is described as 'IPv4 address' in the schema. The description adds no new meaning about the parameter beyond the schema's own description, so the baseline of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Check'), a precise resource ('IPv4 address'), and enumerates the exact blocklists queried (Spamhaus ZEN, SpamCop, SORBS, Barracuda, s5h). This makes the tool's purpose unmistakable and clearly differentiates it from general DNS or IP tools among the siblings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The context is clear: use this tool to check an IPv4 address against spam/abuse blocklists. It does not explicitly name when not to use it or suggest an alternative, so it lacks the explicit exclusion guidance needed for a 5, but the intended use case is unambiguous.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

dns_lookupA

Resolve a DNS name over DNS-over-HTTPS. Record types: A, AAAA, MX, TXT, NS, CNAME, CAA, SOA, PTR, SRV. Returns every answer with its TTL, and says why when there is none (NXDOMAIN vs no record of that type).

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesHostname, e.g. example.com or _dmarc.example.com
typeNoRecord type (default A).

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden and discloses meaningful behavior: it uses DoH, returns every answer with its TTL, and distinguishes NXDOMAIN from a missing record type. It does not cover all edge cases, such as handling of unsupported types, but the core response semantics are clear.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences with no filler: the action is front-loaded, the accepted record types are compactly listed, and the output behavior is stated in a single clause. Every sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a two-parameter lookup with no output schema, the description is sufficiently complete: it names the input, enumerates valid types, and describes both the success return (answers with TTL) and the no-answer distinction. An agent has enough to invoke it correctly and interpret results.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3; the description adds value by enumerating the valid record types for the type parameter, which the schema does not. It reinforces the name parameter's role without duplicating the schema's hostname examples.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific verb and resource: "Resolve a DNS name over DNS-over-HTTPS." It enumerates supported record types, which makes the tool's function clear, though it does not explicitly contrast itself with siblings like reverse_dns.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is implied through the record-type list and the hostname example, but there is no explicit statement of when to choose this tool over alternatives like reverse_dns, dnsbl_check, or lookup_port. No exclusion criteria or recommended contexts are given.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

ip_convertA

Convert an IPv4 address between dotted decimal, unsigned 32-bit integer, hex and dotted binary. Accepts any of the four as input.

ParametersJSON Schema
NameRequiredDescriptionDefault
valueYese.g. 192.168.1.1, 3232235777, 0xC0A80101, or 11000000.10101000.00000001.00000001

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full behavioral burden. It clearly discloses accepted input formats, but it does not specify the output format, whether all representations are returned, or how invalid inputs are handled.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two concise sentences with no filler. The primary action is stated first, followed by the acceptable input scope, making it easy to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple one-parameter conversion tool, the description covers the input contract well. However, since there is no output schema and no annotations, the lack of explicit return-format information leaves a meaningful gap for an agent trying to use the result.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, and the parameter description includes concrete examples for each accepted format. The description reinforces those formats but adds little beyond the schema, so the baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb ('Convert') with a clear resource ('IPv4 address') and enumerates the exact formats involved. It also differentiates itself from siblings like ipv6_normalize by explicitly limiting scope to IPv4.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies when to use the tool: converting IPv4 addresses among the four listed formats. However, it does not explicitly state when not to use it or point to alternatives such as ipv6_normalize for IPv6 addresses.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

ip_in_subnetA

Check whether an IP address falls inside a CIDR block, and show that block's first-to-last range. IPv4 and IPv6.

ParametersJSON Schema
NameRequiredDescriptionDefault
ipYesThe address to test.
cidrYesThe block, e.g. 10.10.0.0/16.

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full behavioral burden. It does disclose output behavior by mentioning the range display and protocol scope, but it does not cover edge cases like invalid IP/CIDR input, exact return format, or whether the operation is purely read-only.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, tightly-packed sentence: primary action first, secondary output second, and protocol coverage last. There is no filler or redundancy, and every clause contributes meaningful information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple two-parameter tool with fully documented schema, this description covers the core behavior and output sufficiently. It lacks only edge-case handling and precise return structure details, which is a minor gap given there is no output schema and the operation is straightforward.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the schema already documents both params. The description adds no extra parameter-level detail beyond what is already present, such as format requirements or examples, so the baseline score of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the specific operation: checking whether an IP address is inside a CIDR block. It also names the secondary output (first-to-last range) and declares IPv4/IPv6 support, which distinguishes it from sibling tools like subnet_calc and ip_convert that serve different purposes.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The usage context is implied by the description: use it when a membership test is needed. However, it gives no explicit guidance about when not to use it or how it compares to sibling alternatives such as subnet_calc, ip_convert, or ipv6_normalize.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

ipv6_normalizeA

Show the fully expanded form and the correct RFC 5952 compressed form of an IPv6 address, plus what kind of address it is (global, ULA, link-local, loopback, documentation…).

ParametersJSON Schema
NameRequiredDescriptionDefault
addressYes

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It discloses the three concrete outputs (expanded form, compressed form, address type) and scopes the operation to IPv6 normalization. It does not describe invalid-input handling or exact return structure, but for a pure formatting tool the core behavior is adequately transparent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The whole description is one focused sentence with no filler. The primary output is front-loaded, and every phrase carries meaningful information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a one-parameter, read-only formatting tool with no output schema, the description is largely complete: it enumerates the expected outputs and clarifies the input type. It could additionally describe error behavior or output layout, but that is a minor gap rather than a blocking omission.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

There is a single required parameter 'address' with no schema description coverage, and the description adds the key semantic that it must be an IPv6 address. However, it does not specify allowed input formats (e.g., brackets, uppercase, IPv4-mapped), nor what happens for invalid addresses, so the compensation is partial.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('Show') and a specific resource ('fully expanded form and correct RFC 5952 compressed form of an IPv6 address'), plus a third output category (address type). This clearly distinguishes it from siblings like ip_convert or subnet_calc by focusing specifically on IPv6 normalization and classification.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description makes the usage context clear: use this tool when you need expanded or RFC 5952-compressed forms of an IPv6 address and its classification. It does not explicitly name alternatives or state when not to use it, so it does not reach the explicit-when-not/alternatives level.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

lookup_portA

What runs on a port and whether it is safe to expose. Covers the 100 ports whatismynetip.com documents by hand: service, protocols, category, common software, an exposure verdict (never / caution / normal) with the reasoning, and related ports. Give a port number, or a query like 'redis' or 'wireguard' to search by service. detail:true adds the full explainer and FAQ.

ParametersJSON Schema
NameRequiredDescriptionDefault
portNoPort number, 0–65535.
queryNoSearch by service, software or category instead of a number.
detailNoInclude the long explainer and FAQ (default false).

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the behavioral disclosure burden. It discloses the output fields (service, protocols, category, software, exposure verdict with reasoning, related ports), the supported input modes, and the limitation that it covers only the 100 ports documented by whatismynetip.com. This gives an agent a clear model of what to expect.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact and front-loaded: it states the core question first, then summarizes return content, then gives usage examples and the optional detail flag. Every sentence contributes information, with no filler or repetition of the tool name.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given that there is no output schema, the description compensates well by enumerating the response components and the verdict categories. It also explains both numeric and textual query modes. It could add a note about handling unknown ports or no matches, but overall it is sufficient for an agent to call the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3. The description adds useful meaning by providing concrete query examples ('redis', 'wireguard') and clarifying that detail:true appends the long explainer and FAQ. This goes slightly beyond the schema's descriptions without being redundant.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific purpose: 'What runs on a port and whether it is safe to expose.' It clearly identifies the resource (ports) and the kind of answer provided (service, protocols, exposure verdict), and it is distinct from all sibling tools like reverse_dns, dns_lookup, and mac_lookup.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives concrete input guidance: provide a port number or search by service with examples like 'redis' or 'wireguard', and mentions the detail flag for extended output. It does not explicitly contrast with alternative tools, but the sibling tools serve clearly different purposes, so this is a minor gap.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

mac_lookupA

Identify the vendor behind a MAC address from the full IEEE MA-L registry (about 40,000 assignments, bundled — no network), and decode the multicast and locally-administered bits. Explains randomised/privacy MACs.

ParametersJSON Schema
NameRequiredDescriptionDefault
macYesAny format: 00:1A:2B:3C:4D:5E, 00-1a-2b-3c-4d-5e, 001a.2b3c.4d5e, or just the first three octets.

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the behavioral burden. It explicitly discloses that the lookup is bundled and works without network, notes the registry size, and mentions extra behavior around multicast, locally-administered bits, and privacy MACs. It doesn't cover error handling or output shape, but the core behavioral traits are well stated.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two compact sentences with no filler. Main behavior is front-loaded, and the registry/offline constraint plus secondary capabilities are conveyed efficiently.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple one-parameter read-only lookup, the description is nearly complete: input is fully documented in the schema, and the description explains offline behavior, registry scope, and what the tool can tell the agent. A note about the exact return format would be nice, but it is not essential here.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already documents all accepted MAC formats with 100% coverage. The description adds no additional parameter-level meaning beyond the overall lookup purpose, so the baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Uses a specific verb ('Identify') with a clear resource ('vendor behind a MAC address'), then adds the registry source and secondary decoding behavior. This clearly differentiates it from the sibling DNS, IP, and subnet tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description makes the intended use case obvious: look up a MAC address vendor, including offline capability. It doesn't name alternatives or exclusion criteria, but the sibling tools are unrelated and the context is unambiguous enough for an agent to decide when to call it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

my_public_ipA

The public IP address the internet sees this machine as, with the edge location that saw it, reverse DNS, the network's ASN and organisation, and a datacenter/VPN hint. Needs an outside observer, so this one talks to Cloudflare's trace endpoint and Team Cymru's ASN DNS.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.2/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full behavioral disclosure burden and does so well. It transparently reveals that the tool makes external network calls to Cloudflare's trace endpoint and Team Cymru's ASN DNS, and explains why an outside observer is needed. This gives the agent important context about network dependence and external service usage without any contradictions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences with no wasted words. The first sentence front-loads the tool's output and core value, while the second sentence adds necessary behavioral context about external dependencies. Every phrase contributes meaning.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter tool with no output schema, the description is complete: it enumerates all returned data fields, explains the mechanism, and implies the need for internet connectivity. An agent can decide to invoke the tool and know what to expect from the response.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has zero parameters, and the baseline for zero-parameter tools is 4. The description reinforces that the tool operates on 'this machine' and requires no caller-supplied input, so an agent knows there are no arguments to configure.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states exactly what the tool returns: the public IP address as seen from the internet, plus edge location, reverse DNS, ASN, organisation, and datacenter/VPN hint. It clearly identifies a specific resource and outcome, though it lacks an explicit verb like 'gets' or 'returns.' The subject matter also differentiates it from siblings like reverse_dns and dns_lookup, which focus on other DNS/IP lookups.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage context is implied rather than stated: the description indicates this tool requires an outside observer and external network calls, so it should be used when an agent needs the machine's egress/public IP. However, it does not explicitly say when not to use it or name alternative tools for related needs, such as reverse_dns for a specific IP's PTR record.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

reverse_dnsA

PTR lookup for an IPv4 or IPv6 address — what name the address maps back to, if any.

ParametersJSON Schema
NameRequiredDescriptionDefault
ipYes

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the behavioral burden. It states the operation is a PTR lookup and that the result is the mapped name 'if any', which covers the core behavior. It does not disclose response format, error behavior for invalid IPs, or what happens when no PTR record exists.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single focused sentence with no filler. It front-loads the core verb and adds useful scope details ('IPv4 or IPv6', 'if any') without wasting words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a one-parameter, read-only DNS utility with no output schema, the description covers the input domain and the general return value. The only gaps are explicit failure/response formatting details, which are minor given how simple the operation is.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema provides only a bare 'ip' string with no description, and the description compensates by specifying that it accepts an IPv4 or IPv6 address and that the lookup maps that address to a name. It lacks format examples or edge-case constraints, but for a single simple parameter this is adequate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific operation ('PTR lookup') and clarifies the direction of the mapping ('what name the address maps back to'). This clearly distinguishes reverse_dns from sibling tools like dns_lookup, even without naming them explicitly.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies this tool is for IP-to-name lookup rather than name-to-IP lookup, which is sufficient context given the sibling list. However, it does not explicitly state when to prefer this tool over dns_lookup or other alternatives, leaving usage decisions to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

subnet_calcA

Work out a subnet from a CIDR or an address plus dotted mask: network, netmask, wildcard, broadcast, usable host range and counts. IPv4 and IPv6. Handles /31 point-to-point and /32 host routes correctly.

ParametersJSON Schema
NameRequiredDescriptionDefault
cidrYese.g. 10.10.1.0/24, 192.168.1.37/255.255.255.0, or 2001:db8::/48

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are present, so the description carries the transparency burden. It discloses IPv4/IPv6 support and explicitly highlights correct /31 and /32 handling, which are meaningful edge-case behaviors. Its output list also makes clear this is a pure calculation with no side effects, though it does not state what happens on invalid input.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The definition is exactly two sentences with no filler. The first sentence front-loads the purpose and expected outputs; the second concisely adds protocol support and special cases. Every phrase contributes information an agent needs.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a single-parameter, low-complexity calculator with no annotations and no output schema, the description lists the outputs, accepted input forms, and important edge cases. It could strengthen by naming exact return field keys or invalid-input behavior, but an agent can select and invoke the tool correctly with the information provided.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and the parameter description already gives examples of CIDR, dotted-mask, and IPv6 forms. The tool description reinforces this and adds edge-case context, but does not meaningfully extend the semantic meaning of the cidr parameter. Baseline 3 applies because the schema already documents the parameter well.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific action ('work out a subnet') and the resource (CIDR or address/dotted mask), then enumerates concrete outputs (network, netmask, wildcard, broadcast, usable range, counts). This clearly dsistinguishes it from siblingtools such as ip_in_subent (membership check) and ip_convert (format conversion).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The usage is implied by the operation ('work out a subnet'), so the agent can infer when to call it. However, the description does not explicitly mention alternatives or provide when-not-to-use guidance, even though sibling tools exist in the same domain. No routing language distinguishes it from ip_in_subnet or ipv6_normalize.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

tls_inspectA

Connect to a public host and report the TLS certificate it actually serves: subject, issuer, validity window and days left, SANs, protocol and cipher, whether the chain verifies, and the SHA-256 fingerprint. Any port (default 443). Accepts a URL. Refuses hosts that resolve to private or reserved addresses.

ParametersJSON Schema
NameRequiredDescriptionDefault
hostYesHostname, host:port, or a URL.
portNoPort (default 443, or taken from host:port / the URL).

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the behavioral burden and does this well by stating that it makes a live connection, reports the certificate actually served, and refuses private/reserved addresses. It does not discuss edge cases like timeouts or whether the connection performs full validation, but it discloses key operational behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences with no filler. The first sentence front-loads the tool's outputs, and the second sentence adds port and host constraints. Every clause adds useful information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

There is no output schema and no annotations, yet the description fully enumerates the returned certificate data and the main input constraints. An agent can predict what the tool does, what it returns, and when it refuses to operate, making the definition complete for this complexity level.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%: host and port are already documented in the schema. The description adds minor reinforcement ('Accepts a URL', 'Any port default 443') but does not materially expand parameter meaning beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific verb ('Connect') and resource ('TLS certificate'), then enumerates exactly what it reports. It is clearly distinct from sibling network tools like dns_lookup, reverse_dns, or lookup_port because only this one inspects live TLS certificates.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description makes the intended use clear: connect to a public host and inspect its served certificate. It also specifies that private or reserved addresses are refused, which helps the agent know when the tool will not work. It does not explicitly name alternative tools, but the context is sufficient for selection among the siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 11 tool updatesv0.1.0
    • First observeddns_lookup
    • First observeddnsbl_check
    • First observedip_convert
    • First observedip_in_subnet
    • First observedipv6_normalize
    • First observedlookup_port
    • First observedmac_lookup
    • First observedmy_public_ip
    • First observedreverse_dns
    • First observedsubnet_calc
    • First observedtls_inspect

TDQS

A4/5.0

Scored across 11 tools

Disambiguation5/5

Every tool targets a distinct networking task: reverse DNS, public IP discovery, subnet math, membership testing, format conversion, MAC lookup, port information, DNS resolution, blocklist checks, and TLS inspection. The only mild adjacency is reverse_dns and dns_lookup's PTR support, but their stated inputs and purposes remain clearly separate.

Naming Consistency3/5

Most names use an object_action snake_case style like ip_convert, mac_lookup, and tls_inspect, but lookup_port reverses that pattern, and my_public_ip, reverse_dns, and ip_in_subnet are noun phrases. The style is readable and consistent in casing, but the verb placement and phrase structure are not uniform.

Tool Count5/5

Eleven tools is a well-scoped size for a network/IP utility server. Each tool contributes a meaningful, non-redundant capability, and the set does not feel padded or overwhelming.

Completeness4/5

The toolset covers IPv4/IPv6 conversion, subnetting, DNS and reverse DNS, blocklist checks, MAC vendor identification, port lookup, TLS cert inspection, and public IP details. The main minor gap is arbitrary-address ownership/ASN or WHOIS lookup, but the existing workflows are coherent and do not leave core IP tasks stranded.

Maintenance

ActivityMaintained
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    Provides network utility tools including DNS lookup, WHOIS lookup, SPF record inspection, SSL/TLS certificate checking, and subnet/CIDR analysis powered by networkcalc.com services.
    1
    MIT