The server implements a single well-defined tool 'searchLogs' with a clear action verb, comprehensive parameter schema, and reasonable constraints. The tool name follows verb_noun convention (search_logs → searchLogs in camelCase). Input schema includes type definitions, min/max bounds, regex patterns, and defaults. However, output schema is not documented in the provided code, and the tool description, while adequate, lacks guidance on when to use it versus alternatives or what the response structure contains. The server demonstrates good baseline quality but falls short of A-grade production standards due to missing output documentation and incomplete LLM-guidance in descriptions.
Searches request logs from Azure Application Insights by a search term (e.g., order number, transaction ID). Searches through request logs containing the term in name, URL, or custom dimensions.
Output schema not documented. Tool description does not specify what fields are returned, data types, or pagination behavior. LLMs cannot plan downstream operations or extract specific fields without knowing the response structure.
Tool description lacks operational guidance. Does not explain when to use searchLogs, what constitutes a valid search term beyond regex, whether results are ranked by relevance, or what 'request logs' means in the Azure Application Insights context. LLMs must infer intent.
Duration parameter pattern allows only ISO 8601 durations like 'P7D' or 'PT2H' but does not accept composite formats like 'P2DT3H' (2 days 3 hours) despite including regex branch for it. Pattern is overly strict and the description does not clarify edge cases.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | B | 75 | <=2025-11-25 | v2 |
| 2026-03-09 | F | 49 | - | v1 |
Parameter description for 'searchTerm' mentions 'e.g., order number, transaction ID, etc.' but does not explain what 'custom dimensions' are or how they are indexed in Azure Application Insights. LLMs unfamiliar with the Azure domain cannot determine what values to pass.
No error handling guidance documented. Tool description does not explain what happens if searchTerm returns zero results, if Azure connectivity fails, or how to recover. Error responses will not guide LLM retry behavior.