Read-only Model Context Protocol server for OCI Log Analytics.
Two tools with complete input schemas and descriptions, but significant gaps in output documentation and error handling. Tool names follow verb_noun convention (search_, export_). Descriptions are adequate (60-80 chars) but lack context on when to use each tool or what happens on failure. Input schemas are well-formed with proper types, constraints (minLength, min/max), and enums. However, no output schema is documented, LLMs cannot predict what fields to expect or plan downstream calls. Error handling is absent: no guidance on retryability, user-fixable vs fatal errors, or recovery steps. Parameters lack dependency documentation (e.g., maxResults vs maxRecords naming inconsistency suggests unclear design). No tool annotations (readOnlyHint/destructiveHint) despite export_log_analytics being a WRITE operation.
Export OCI Log Analytics query results to a local JSON or CSV file.
Search OCI Log Analytics within a supplied UTC time range. Returns up to 2,001 records.
No output schema documented for either tool. LLMs cannot predict response structure, field names, or types. Prevents planning of downstream tool calls and forces trial-and-error reasoning.
No error handling guidance. Responses lack recovery hints (e.g., 'Query syntax error. Valid operators: AND, OR, NOT'). LLMs cannot self-correct or know whether to retry, ask user, or abort.
Parameter naming inconsistency: search_log_analytics uses 'maxResults' (2001 cap) while export_log_analytics uses 'maxRecords' (1M cap). LLMs may conflate these or pass wrong limits.
export_log_analytics marked as WRITE but lacks tool annotations (destructiveHint). No indication to LLM that this operation modifies local filesystem or requires confirmation.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 57 | <=2025-11-25 | v2 |
Tool descriptions lack context on when to use each. 'Search' vs 'Export' distinction unclear, does search return results in-memory? Does export require a prior search? No dependency hints.