Repository avatar
AI Tools
v0.4.2
active

log-analyzer-mcp

io.github.Fato07/log-analyzer-mcp

AI-powered log analysis - parse, search, extract errors across 9+ formats

Documentation

Log Analyzer MCP

MCP Registry PyPI version PyPI Downloads License: MIT Python 3.10+ GitHub stars

๐Ÿ” Stop copy-pasting logs into AI. Let Claude read them directly.

An MCP server for AI-powered log analysis. Parse, search, and debug log files across 9+ formats โ€” right from Claude Code.

๐Ÿ“Š At a Glance

14 MCP tools9+ log formats
280 tests81%+ coverage

๐ŸŽฌ Demo

Log Analyzer MCP Demo

Analyzing logs with 14 specialized tools

๐Ÿค” Why?

Without log-analyzer-mcpWith log-analyzer-mcp
Copy-paste chunks of logsPoint Claude at the file
Lose context between pastesFull file access
Manual format parsingAuto-detection
Miss related errorsSmart correlation

โœจ Features

  • Auto-Detection โ€” Identifies format from 9+ common log types
  • Smart Search โ€” Pattern matching with context, regex, and time filtering
  • Error Extraction โ€” Groups similar errors, captures stack traces
  • Natural Language โ€” Ask questions like "what errors happened today?"
  • Sensitive Data Scan โ€” Detect PII, credentials, and secrets
  • Multi-File Analysis โ€” Correlate events across distributed systems
  • Streaming โ€” Handles 1GB+ files without memory issues

๐Ÿš€ Quick Start

# Install (adds to Claude Code automatically)
uvx codesdevs-log-analyzer install

Then in Claude Code:

Analyze /var/log/app.log and tell me what's causing the errors

๐Ÿ“ฆ Installation

One-liner (Recommended)

uvx codesdevs-log-analyzer install

Manual

pip / uv / Claude Code config
# pip
pip install codesdevs-log-analyzer

# uv
uv tool install codesdevs-log-analyzer

Add to ~/.claude/settings.json:

{
  "mcpServers": {
    "log-analyzer": {
      "command": "uvx",
      "args": ["codesdevs-log-analyzer"]
    }
  }
}

๐Ÿ“‹ Supported Formats

FormatExample
SyslogJan 15 10:30:00 hostname process[pid]: message
Apache/Nginx127.0.0.1 - - [15/Jan/2026:10:30:00] "GET /path" 200
JSON Lines{"timestamp": "...", "level": "ERROR", "message": "..."}
Docker2026-01-15T10:30:00.123Z stdout message
Python2026-01-15 10:30:00,123 - module - ERROR - message
Java/Log4j2026-01-15 10:30:00,123 ERROR [thread] class - message
Kuberneteslevel=error msg="..." ts=2026-01-15T10:30:00Z
GenericAny line with recognizable timestamp

โšก Performance

MetricValue
100MB log file< 10 seconds
Memory footprintStreaming (no full load)
Max tested size1GB+
Format detection< 100ms

๐Ÿ› ๏ธ Available Tools

ToolDescription
log_analyzer_parseDetect format and extract metadata
log_analyzer_searchSearch with context lines
log_analyzer_extract_errorsExtract and group errors
log_analyzer_summarizeGenerate debugging summary
log_analyzer_correlateFind related events
log_analyzer_watchMonitor for new entries
log_analyzer_askNatural language queries
log_analyzer_scan_sensitiveDetect PII/credentials
+ 6 moreFull reference โ†’

๐Ÿ’ก Examples

Find errors:

Extract all errors from /var/log/app.log, group similar ones

Search with context:

Search for "timeout" in app.log with 5 lines of context

Correlate events:

What happened 60 seconds before each OutOfMemoryError?

Scan for secrets:

Check /var/log/app.log for accidentally logged credentials

๐Ÿ”ง Development

git clone https://github.com/Fato07/log-analyzer-mcp
cd log-analyzer-mcp
uv sync
uv run pytest -v --cov

๐Ÿ“ˆ Star History

Star History Chart

๐Ÿ“„ License

MIT License - see LICENSE for details.


Found this useful? Give it a โญ on GitHub!

Report bugs ยท Request features ยท Discussions ยท Full docs

Built by Fato07 at CodesDevs