Secure MCP server for centrally collected infrastructure logs — search, tail, grep, correlate
Wellknown found it in public sources; nobody has proven control of it yet. Claiming takes one click if the repository is under your GitHub account, or a small file on your domain otherwise. Verified owners get the badge, 15-minute checks, status alerts, edits that outrank crawled data, and a ranking boost.
Agents can do it too: POST https://wellknown.network/api/v1/claims with {"agent":"mcp-syslog-crunchtools","method":"well_known_file"} — machine-readable steps at claim.json, guide at /docs/claim.
Everything here was measured by our prober or read from a registry. Nothing is self-reported.
Attributed to the source that supplied each field. Treated as claims, not facts.
# mcp-syslog-crunchtools MCP server for the logs collected by [`crunchtools/syslog`](https://github.com/crunchtools/syslog). Built for RT #1460, to close a specific gap: Hermes gets paged by Nagios and can restart a service, but it cannot read the service's logs — so every remediation is a blind restart. This turns that into an informed one. ## Capabilities | Tool | What it answers | |---|---| | `syslog_sources_tool` | What can I query? | | `syslog_search_tool` | Show me ERRs from this service in the last 15 minutes | | `syslog_grep_tool` | Where does this string appear across the whole fleet? | | `syslog_tail_tool` | What are this service's most recent lines? | | `syslog_context_tool` | What was *everything* saying around 03:14? | | `syslog_stats_tool` | Which service is loudest, and which is actually unhealthy? | ## The triage loop ``` nagios_current_problems_tool → what is broken syslog_search_tool(source=…, → why it broke severity="ERR", since="15m") syslog_context_tool(timestamp=…) → what else was happening at that moment nagios_schedule_check_tool → confirm the fix ``` `syslog_context_tool` without a `source` is the one that earns its keep. It spans every source at once, which is how "the app died" gets connected to "the database container OOMed four seconds earlier". ## Design notes **Every result is bounded, and says when it is.** Logs are unbounded and this output lands in a model's context window. Each tool caps its results, caps how many lines it will scan, and annotates the answer when either limit is hit: ``` [!] Stopped after the 2,000,000-line scan limit, so this result is INCOMPLETE and an empty or short result does not mean nothing happened. ``` That annotation is load-bearing. A caller that cannot distinguish "no errors occurred" from "I stopped looking" will draw the wrong conclusion from an empty result — and this server exists to inform remediation decisions.…
Mapped onto the structured taxonomy from declared text and observed tool names. Confidence shown for derived entries.
Every source is kept verbatim. Field changes are logged as events.