Server has 9 well-named tools with complete input schemas and descriptions. All tools follow verb_noun naming (search_logs, list_streams, get_stream_info). Schemas are properly typed with constraints (enums, min/max). However, output schemas are not documented, LLMs cannot predict response structure. Error handling is minimal; no recovery guidance or actionable error messages. Parameter descriptions are adequate but lack dependency hints and format guidance. No tool annotations (readOnlyHint, etc.) despite all tools being read-only. Missing documentation of what fields are returned and how to chain tools.
Aggregate log data by a field and compute metrics
Get error, critical, and fatal level logs from the past N hours
Get count of logs grouped by log level for the past N hours
Get detailed information about a specific Graylog stream
Get Graylog system information
List all available Graylog streams
Output schemas not documented. LLMs cannot predict response structure or plan downstream tool calls. search_logs returns dict but fields are unknown.
No tool annotations despite all tools being read-only. Missing readOnlyHint would help agents understand safety and retry behavior.
Error handling lacks recovery guidance. No actionable error messages or categorization (retryable vs user-fixable). Stack traces or bare error codes give agents nothing to act on.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 64 | <=2025-11-25 | v2 |
Search messages in Graylog using a query and time range
Search messages within a specific Graylog stream
Search for Graylog streams by name/title
Parameter descriptions lack format guidance and constraints. E.g., timerange accepts oneOf three schemas but descriptions do not explain when to use each variant or provide examples.
No pagination guidance in list_streams or search_streams_by_name. If Graylog has many streams, responses could be large; no limit or offset parameters documented.