An MCP server that provides pricing tier recommendations based on API query volume and user seat count
This server has a single tool 'recommend_tier' with a very basic implementation. The tool has a reasonable name following verb_noun pattern, but critical definition quality issues severely limit its value. The input schema is present with proper types and descriptions, but the tool description is generic and lacks critical context about use cases, return value structure, and when to invoke it. The source code shows no MCP server registration pattern, only a client class with a Python method. No evidence of MCP protocol implementation, tool registration, or server startup. The tool appears to be a simple utility function, not a properly registered MCP tool. Additionally, the output schema is not documented in the tool definition, callers have no visibility into the structure of the response before invocation.
Recommends a pricing tier based on API queries and user seats
No MCP server implementation visible. Source code shows only a Python client class, not an MCP server with tool registration. Tool existence is inferred from example_usage.py, not explicitly registered via MCP protocol.
Tool description is generic and under 20 characters minimal guidance. 'Recommends a pricing tier based on API queries and user seats' lacks context on WHEN to call it, what thresholds apply, and what the output structure contains. No guidance on return format or downstream usage.
Output schema not documented. The tool returns a dict with 'recommended_tier' and 'monthly_base_price' fields, but this structure is not declared in the tool definition. LLMs cannot plan downstream operations without knowing the response schema.
No error handling documented. The tool has no error recovery guidance. What happens if invalid inputs are passed (e.g., negative values)? No validation or error categorization for LLM guidance.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 34 | 2026-07-28+ | v2 |
No parameter constraints. Integer parameters api_queries and user_seats lack minimum/maximum bounds. An LLM could pass -1000 or 999999999 without validation. No enum, range, or format constraints.
Tier thresholds are hardcoded and not discoverable. The tool description does not explain the decision logic (>50k queries → Enterprise, >10k → Professional, etc.). An LLM cannot reason about edge cases or explain the recommendation to a user.