Read the protocol.
Minecraft Java Status probing without player login. Parse text components, version strings, public player samples, favicons, and explicitly reported mod metadata.
TCP → Handshake → Status → Ping/PongDiscover, scan, and search Minecraft Java servers.
Turn public Status responses into a structured index—
with the original evidence intact.
Private Survival
{
"version": {
"name": "1.21.8",
"protocol": 772
},
"players": {
"online": 7,
"max": 20
},
"description": {
"text": "Private Survival"
},
"enforcesSecureChat": true,
"previewsChat": false
}Start with an endpoint. Keep the response. Query what the server actually reported.
Minecraft Java Status probing without player login. Parse text components, version strings, public player samples, favicons, and explicitly reported mod metadata.
TCP → Handshake → Status → Ping/PongPreserve the raw response alongside normalized fields. PostgreSQL holds current state, change snapshots, public player observations, and scan runs. A failed check keeps the last successful state.
raw_status / server_state / snapshotsCombine version, reported software, mod loader, player count, MOTD, and sourced country filters. Query your own index with readable CLI output or JSON.
breakbot search --version 1.21 --players-min 5breakbot probe 127.0.0.1:37975 --layout classic --no-imageBreakBot Endpoint Address 127.0.0.1:37975 Status ONLINE Protocol type modern Minecraft Version 1.21.8 Protocol 772 Players 7 / 20 MOTD Private Survival Server software Reported Unknown Hint (version.name) Unknown Mods Loader Unknown Mods Unknown Chat flags (as reported) Enforces secure chat true Previews chat false Network TCP 0.4 ms Status 0.25 ms Ping 0.12 ms Total 0.95 ms
Bound the work.
Keep failures visible.
$ breakbot scan targets.txt --concurrency 32Bounded async workers, configurable timeouts, and recorded diagnostics.
$ breakbot rescan --older-than 3600Recheck stored endpoints without erasing their last successful state.
Collect the metadata first. Optionally ask Claude to interpret it.
Reported fields, advertised claims, and AI interpretations stay distinct.
“Private Survival”
{
"motd": "Private Survival",
"version": "1.21.8",
"reported_software": null,
"reported_proxy": null,
"reported_mod_loader": null,
"reported_mods": null
}Real input derived from normal.json through BreakBot’s parser and AI input builder. Players and arbitrary raw fields are omitted.
Explicit request
Bounded input
Schema validation
Evidence validation
“Survival”
Confirms the quoted text exists. Does not verify gameplay.SUMMARY / AI INTERPRETATIONAdvertises survival gameplay.
“Private” does not establish a whitelist or authentication mode. Language and region are not advertised.
The schema supports game modes, language, advertised region, gameplay tags, short summaries, and evidence-backed advertised claims. Tags are stored today; AI-tag search is planned. Interpretations may be inaccurate.
Inspect the contract ↗$ breakbot analyze <server>CLI example +The command analyzes an existing saved successful Status result. Install the AI extra, migrate PostgreSQL, and provide an API key for new analysis. This is output from the actual renderer using schema-validated illustrative data, not a live Claude result.
uv run --extra ai breakbot analyze 127.0.0.1:37975BreakBot / AI Analysis ┌─────────────────┬─────────────────────────────────┐ │ Server │ 127.0.0.1:37975 │ │ Model │ illustrative (no API call) │ │ Requested model │ illustrative (no API call) │ │ Source │ saved Minecraft Status metadata │ │ Status │ Completed │ │ Cached │ No │ │ State observed │ fixture capture │ │ Analyzed │ illustrative │ └─────────────────┴─────────────────────────────────┘ AI-generated interpretations; advertisements are not verified. Classification Game mode: survival (advertised) Language: Unknown Region: Unknown Summary (AI interpretation) Advertises survival gameplay. Advertised claims (unverified) None identified Supporting excerpts (server-provided text) motd: Survival Uncertain Language and region are not advertised. The word Private does not establish whitelist or authentication status.
The endpoint is a capture fixture and must be saved in your own index before analysis. This sample shows the output format only.
One path from candidates to a searchable index.
AI enrichment branches from stored metadata, only when requested.
scan / importEndpoint lists, bounded CIDR scans, and external masscan JSON. An open port is a candidate.
TCP → StatusHandshake in Status mode, receive JSON, measure Ping/Pong. Modern Status with a legacy fallback.
raw + normalizedParse the fields the server provides. Keep raw JSON and preserve missing values as unknown.
state + historyStore latest successful state, changed snapshots, player observations, and scan run diagnostics.
CLI / JSONCombine filters over reported metadata. This is a local index, not a hosted public search service.
ai_enrichmentsSeparate interpretations + evidenceIn development. Scanning, rescanning, search, and server inspection require no Claude request.
Values returned in Status fields. A protocol response records what the server reports.
Statements in the MOTD or public metadata. Advertising is evidence of a claim, not its truth.
Structured readings of that text, with their basis and excerpts. Never promoted into scanner facts.
Implementation state from the current repository.
A plan is not a shipped feature.
Single-endpoint probing, full Status parsing, PostgreSQL persistence, bounded bulk scans, masscan import, combined search filters, and explicit rescans.
CLI · STATUS ONLY · LOCAL INDEXClaude client, analyze, validated evidence, versioned caching, and separate storage are implemented locally. Live Claude and end-to-end database verification remain pending for this website audit.
Continuous discovery and scheduling, reverse player lookup, separate Login checks, throughput work, retention rules, and server-owner opt-out operations.
NO DELIVERY DATES CLAIMEDBreakBot is an independent, early-stage engineering project focused on discovering Minecraft Java servers and building a reliable, inspectable index of what they report.
The source response matters as much as the parsed result. Public player samples are incomplete observations. A version string is not proof of the software behind it. Optional AI adds interpretations without rewriting that foundation.