{
  "markdown": "# Log Analyzer MCP\n\n<!-- mcp-name: io.github.Fato07/log-analyzer-mcp -->\n\n[![MCP Registry](https://img.shields.io/badge/MCP-Registry-green?logo=anthropic)](https://registry.modelcontextprotocol.io/servers/io.github.Fato07/log-analyzer-mcp)\n[![PyPI version](https://badge.fury.io/py/codesdevs-log-analyzer.svg)](https://badge.fury.io/py/codesdevs-log-analyzer)\n[![PyPI Downloads](https://static.pepy.tech/badge/codesdevs-log-analyzer)](https://pepy.tech/project/codesdevs-log-analyzer)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n[![Python 3.10+](https://img.shields.io/badge/python-3.10+-blue.svg)](https://www.python.org/downloads/)\n[![GitHub stars](https://img.shields.io/github/stars/Fato07/log-analyzer-mcp?style=social)](https://github.com/Fato07/log-analyzer-mcp)\n\n> 🔍 **Stop copy-pasting logs into AI.** Let Claude read them directly.\n\nAn MCP server for AI-powered log analysis. Parse, search, and debug log files across 9+ formats — right from Claude Code.\n\n## 📊 At a Glance\n\n| | |\n|---|---|\n| **14** MCP tools | **9+** log formats |\n| **280** tests | **81%+** coverage |\n\n## 🎬 Demo\n\n![Log Analyzer MCP Demo](demo/demo.gif)\n\n*Analyzing logs with 14 specialized tools*\n\n## 🤔 Why?\n\n| Without log-analyzer-mcp | With log-analyzer-mcp |\n|--------------------------|----------------------|\n| Copy-paste chunks of logs | Point Claude at the file |\n| Lose context between pastes | Full file access |\n| Manual format parsing | Auto-detection |\n| Miss related errors | Smart correlation |\n\n## ✨ Features\n\n- **Auto-Detection** — Identifies format from 9+ common log types\n- **Smart Search** — Pattern matching with context, regex, and time filtering\n- **Error Extraction** — Groups similar errors, captures stack traces\n- **Natural Language** — Ask questions like \"what errors happened today?\"\n- **Sensitive Data Scan** — Detect PII, credentials, and secrets\n- **Multi-File Analysis** — Correlate events across distributed systems\n- **Streaming** — Handles 1GB+ files without memory issues\n\n## 🚀 Quick Start\n\n```bash\n# Install (adds to Claude Code automatically)\nuvx codesdevs-log-analyzer install\n```\n\nThen in Claude Code:\n\n```\nAnalyze /var/log/app.log and tell me what's causing the errors\n```\n\n## 📦 Installation\n\n### One-liner (Recommended)\n\n```bash\nuvx codesdevs-log-analyzer install\n```\n\n### Manual\n\n<details>\n<summary>pip / uv / Claude Code config</summary>\n\n```bash\n# pip\npip install codesdevs-log-analyzer\n\n# uv\nuv tool install codesdevs-log-analyzer\n```\n\nAdd to `~/.claude/settings.json`:\n\n```json\n{\n  \"mcpServers\": {\n    \"log-analyzer\": {\n      \"command\": \"uvx\",\n      \"args\": [\"codesdevs-log-analyzer\"]\n    }\n  }\n}\n```\n\n</details>\n\n## 📋 Supported Formats\n\n| Format | Example |\n|--------|---------|\n| Syslog | `Jan 15 10:30:00 hostname process[pid]: message` |\n| Apache/Nginx | `127.0.0.1 - - [15/Jan/2026:10:30:00] \"GET /path\" 200` |\n| JSON Lines | `{\"timestamp\": \"...\", \"level\": \"ERROR\", \"message\": \"...\"}` |\n| Docker | `2026-01-15T10:30:00.123Z stdout message` |\n| Python | `2026-01-15 10:30:00,123 - module - ERROR - message` |\n| Java/Log4j | `2026-01-15 10:30:00,123 ERROR [thread] class - message` |\n| Kubernetes | `level=error msg=\"...\" ts=2026-01-15T10:30:00Z` |\n| Generic | Any line with recognizable timestamp |\n\n## ⚡ Performance\n\n| Metric | Value |\n|--------|-------|\n| 100MB log file | < 10 seconds |\n| Memory footprint | Streaming (no full load) |\n| Max tested size | 1GB+ |\n| Format detection | < 100ms |\n\n## 🛠️ Available Tools\n\n| Tool | Description |\n|------|-------------|\n| `log_analyzer_parse` | Detect format and extract metadata |\n| `log_analyzer_search` | Search with context lines |\n| `log_analyzer_extract_errors` | Extract and group errors |\n| `log_analyzer_summarize` | Generate debugging summary |\n| `log_analyzer_correlate` | Find related events |\n| `log_analyzer_watch` | Monitor for new entries |\n| `log_analyzer_ask` | Natural language queries |\n| `log_analyzer_scan_sensitive` | Detect PII/credentials |\n| + 6 more | [Full reference →](docs/TOOLS.md) |\n\n## 💡 Examples\n\n**Find errors:**\n```\nExtract all errors from /var/log/app.log, group similar ones\n```\n\n**Search with context:**\n```\nSearch for \"timeout\" in app.log with 5 lines of context\n```\n\n**Correlate events:**\n```\nWhat happened 60 seconds before each OutOfMemoryError?\n```\n\n**Scan for secrets:**\n```\nCheck /var/log/app.log for accidentally logged credentials\n```\n\n## 🔧 Development\n\n```bash\ngit clone https://github.com/Fato07/log-analyzer-mcp\ncd log-analyzer-mcp\nuv sync\nuv run pytest -v --cov\n```\n\n## 📈 Star History\n\n[![Star History Chart](https://api.star-history.com/svg?repos=Fato07/log-analyzer-mcp&type=Date)](https://star-history.com/#Fato07/log-analyzer-mcp&Date)\n\n## 📄 License\n\nMIT License - see [LICENSE](LICENSE) for details.\n\n---\n\n<p align=\"center\">\n  <b>Found this useful?</b> Give it a ⭐ on GitHub!<br><br>\n  <a href=\"https://github.com/Fato07/log-analyzer-mcp/issues/new?template=bug_report.yml\">Report bugs</a> ·\n  <a href=\"https://github.com/Fato07/log-analyzer-mcp/issues/new?template=feature_request.yml\">Request features</a> ·\n  <a href=\"https://github.com/Fato07/log-analyzer-mcp/discussions\">Discussions</a> ·\n  <a href=\"https://github.com/Fato07/log-analyzer-mcp/blob/main/docs/TOOLS.md\">Full docs</a>\n</p>\n\n<p align=\"center\">\n  Built by <a href=\"https://github.com/Fato07\">Fato07</a> at <a href=\"https://codesdevs.io\">CodesDevs</a>\n</p>\n",
  "bytes": 5434,
  "sha": "00bd1c7a83707dcda877769cdd222cb57fd6e6cf29414943ca28ae9d76beec30",
  "repo_slug": "fato07/log-analyzer-mcp",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_io_github_fato07_log_analyzer_mcp_bdb2c806/readme"
}