MCP server for Azure Cosmos DB integration with product search and order management capabilities
Three tools present with minimal quality. Tool definitions are visible in cosmosdb-mcp-server.ts but lack rigor. 'Weather' is a placeholder unrelated to Cosmos DB domain. 'searchProducts' and 'getOrders' have descriptions (10-50 chars, below 194-char baseline) and input schemas with single string parameters. No output schemas documented. No error recovery guidance. No parameter constraints, enums, or validation hints. Descriptions do not explain WHEN to use each tool or what fields are returned. No tool annotations (readOnlyHint present in metadata but not in schema). Naming is acceptable (verb_noun pattern) but descriptions are too terse to guide LLM selection.
Get weather for a given location
Get all orders in the Azure Cosmos DB database for the selected email
Given a user query, search for matching products in the Azure Cosmos DB database
Output schemas not documented. LLMs cannot infer what fields searchProducts and getOrders return, forcing guesswork on downstream tool chaining.
Descriptions are 10-50 characters, well below 194-char baseline. 'Get weather for a given location' and 'Given a user query, search for matching products' lack context on WHEN to use, what data is returned, and dependencies.
No parameter constraints or enums. 'location' and 'query' accept free-form strings with no guidance on format, length, or valid values. No validation hints for LLM.
Error handling returns generic error strings ('Error fetching products from Cosmos DB: ' + error) without recovery guidance. LLM cannot determine if error is retryable or user-fixable.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 46 | 2026-07-28+ | v2 |
Weather tool is unrelated to Cosmos DB domain and appears to be a placeholder. Reduces server coherence and suggests incomplete implementation.