Add 3 opt-in Loki tools (query_logs, list_labels, list_label_values) that are registered when LOKI_URL is configured. Includes Loki HTTP client, CLI commands (logs, labels), NixOS module option, formatting, and tests. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
32 lines
1.5 KiB
Markdown
32 lines
1.5 KiB
Markdown
# TODO - Future Improvements
|
|
|
|
## Usability
|
|
|
|
- [ ] Progress reporting during indexing ("Fetching nixpkgs... Parsing options... Indexing files...")
|
|
- [ ] Add `search_files` MCP tool - search for files by path pattern (e.g., find all nginx-related modules)
|
|
- [ ] Include file size metadata in `get_option` declarations (byte size and/or line count) so clients know file sizes before fetching
|
|
- [ ] Add range parameters to `get_file` (`offset`, `limit`) with sensible defaults (~200-300 lines) to avoid dumping massive files
|
|
|
|
## Robustness
|
|
|
|
- [ ] PostgreSQL integration tests with testcontainers (currently skipped without manual DB setup)
|
|
- [ ] Graceful handling of concurrent indexing (what happens if two clients index the same revision?)
|
|
|
|
## New MCP Servers
|
|
|
|
- [x] `nixpkgs-packages` - Index and search nixpkgs packages (implemented in `nixpkgs-search packages`)
|
|
- [x] `lab-monitoring` - Query Prometheus and Alertmanager APIs (8 tools, no database required)
|
|
|
|
## Lab Monitoring
|
|
|
|
- [ ] Add `list_rules` tool - list Prometheus alerting and recording rules (via `/api/v1/rules`)
|
|
- [ ] Add `get_rule_group` tool - get details for a specific rule group
|
|
- [x] Add Loki log query support - query logs via LogQL (3 tools: `query_logs`, `list_labels`, `list_label_values`), opt-in via `LOKI_URL`
|
|
|
|
## Nice to Have
|
|
|
|
- [ ] Option history/diff - compare options between two revisions ("what changed in services.nginx between 24.05 and 24.11?")
|
|
- [ ] Auto-cleanup - prune old revisions after N days or keep only N most recent
|
|
- [ ] Man page generation
|
|
- [ ] Shell completions (bash, zsh, fish)
|