netdiag-mcp: Instructions file for Claude Code

CLAUDE.md

netdiag-mcp CLAUDE.md is an instructions file for Claude Code from shigechika/netdiag-mcp. It costs 981 tokens per session, scanned A, original, MIT.

A set of project instructions for Claude Code, an AI coding assistant, in a Python server that performs read-only network diagnostics.

In plain words
What is it for?
Working on DNS, ping, traceroute, port, HTTP, TLS, WHOIS, and ASN or GeoIP diagnostic features in the netdiag-mcp project.
Why use it?
It gives the assistant the repository’s commands, architecture, error-handling rules, and coding conventions before it changes code.

Instructions file for Claude Code

Written for Claude Code: the file is CLAUDE.md. Also seen: mentions CLAUDE.md.

This is shigechika/netdiag-mcp's own configuration. It tells Claude Code how to work on netdiag-mcp itself, so it is not a mod to install elsewhere. Copy it as a starting point and replace the rules that are about this project. Everything netdiag-mcp configures →

Reuse

Borrowing it

Nothing to install: this file belongs to shigechika/netdiag-mcp. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.

Copy the file
curl -O https://raw.githubusercontent.com/shigechika/netdiag-mcp/main/CLAUDE.md
Clone the repo
git clone --depth 1 https://github.com/shigechika/netdiag-mcp

Made for: Claude Code.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for netdiag-mcp CLAUDE.md

README.md
[![agentmods](https://agentmods.dev/badge/instructions/shigechika/netdiag-mcp/claude-md/github.svg)](https://agentmods.dev/instructions/shigechika/netdiag-mcp/claude-md)
Your own site
<a href="https://agentmods.dev/instructions/shigechika/netdiag-mcp/claude-md"><img src="https://agentmods.dev/badge/instructions/shigechika/netdiag-mcp/claude-md/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for netdiag-mcp CLAUDE.md

Your own site · 80×15
<a href="https://agentmods.dev/instructions/shigechika/netdiag-mcp/claude-md"><img src="https://agentmods.dev/badge/instructions/shigechika/netdiag-mcp/claude-md.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 981 This file is loaded in full into every session.
When invoked 981 The same file — it is already loaded in full.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00981 $0.00981
Opus 5.5 $0.00392 $0.00392
Sonnet 5.5 $0.00196 $0.00196
Haiku 4.5 $0.00098 $0.00098

Measured 26d ago against content hash 95045c57c47a, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade A, and why

netdiag-mcp CLAUDE.md scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 26d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

CLAUDE.md · 66 lines

How it starts

The opening of the file, as written. The whole thing — 66 lines — stays where its author put it; the contents beside it link to each section on GitHub.

CLAUDE.md

Overview

MCP server wrapping dig/ping/mtr/whois and Python's own socket/ssl/httpx stack for on-demand, single-target network diagnostics (DNS, ping, traceroute, TCP port checks, HTTP, TLS certs, WHOIS, ASN/GeoIP lookups). Transport is stdio only. All 9 tools are read-only — there is no write/mutating tool, no config file, and no environment variable required (NETDIAG_HTTP_AUTH is optional).

Commands

uv sync --dev
uv run pytest -v                  # all tests
uv run ruff check .               # lint (gated in CI)
uv run ruff format --check .      # format (gated in CI)

Architecture

  • netdiag_mcp/server.py — MCPServer("netdiag-mcp") with 9 tools plus health_check. Every tool wraps its call in try/except (ValueError, ToolError) and returns f"error: {e}" instead of raising. _REQUIRED_BINARIES = ("dig", "ping", "mtr", "whois") — health_check reports "degraded" (not a hard failure) when any is missing from PATH.
  • netdiag_mcp/tools.py — the actual implementations. _run(binary, args) is the shared subprocess wrapper (always an argv list, SUBPROCESS_TIMEOUT = 15.0, raises ToolError on missing binary/timeout/nonzero exit with no stdout). tcp_port_check/http_check/tls_cert_check don't shell out at all — they use socket/ssl/httpx directly, so those three work even with none of the four binaries installed. ping_host dispatches to ping6 for an IPv6 literal on non-Linux (macOS's ping rejects IPv6 outright; ping6 has no deadline flag, unlike ping's -w/-t, so the IPv6-on-macOS path relies on SUBPROCESS_TIMEOUT alone as a backstop). dns_lookup/dnssec_check map transport to dig's +tls/+https via _DNS_TRANSPORT_FLAGS — requires BIND 9.18+, an older dig rejects the flag outright rather than silently falling back to plain DNS.
  • netdiag_mcp/validate.py — validate_target() (hostname/IP shape, rejects empty/whitespace/oversized), validate_port() (1-65535), clamp() (bounds a count/cycles argument). Every tool runs its target/port/count through one of these before it reaches a subprocess or socket call — inputs are LLM-driven and treated as adversarial.
  • netdiag_mcp/__main__.py — argparse CLI: --version, --check (reports missing binaries, exits non-zero if any are absent), then mcp.run(transport="stdio").

Read the full file on GitHub · 66 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 26d ago Changed · +4 lines · +97 tokens per session 95045c57c47a
  2. 1mo ago Changed 1c9d0936c63d
  3. 2mo ago First seen · 62 lines · 884 tokens per session scan A 5592d5144e8d

Subscribe to this mod's changes

netdiag-mcp CLAUDE.md is an instructions file published in the GitHub repository shigechika/netdiag-mcp (0 stars, last pushed 6d ago), licensed MIT. It adds 981 tokens to every session, about $0.0039 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

netdiag-mcp CLAUDE.md compared with instructions from other repositories

netdiag-mcp CLAUDE.md next to 6 instructions from other repositories
ModTypeStarsLast pushLicenceScanTokensWorks with
netdiag-mcp CLAUDE.mdshigechika/netdiag-mcpInstructions file06d agoMITA981Claude Code
vscode buildNext.instructions.mdmicrosoft/vscodeInstructions file195ktodayMITA9,719GitHub Copilot
vscode oss-third-party-notices.instructions.mdmicrosoft/vscodeInstructions file195ktodayMITA5,516GitHub Copilot
next.js AGENTS.mdvercel/next.jsInstructions file143kyesterdayMITA7,461Codex, OpenCode
langchain AGENTS.mdlangchain-ai/langchainInstructions file149ktodayMITA4,680Codex, OpenCode
vscode copilot-instructions.mdmicrosoft/vscodeInstructions file195ktodayMITA3,093GitHub Copilot
vscode model-prompts.instructions.mdmicrosoft/vscodeInstructions file195ktodayMITA2,022GitHub Copilot