MCP server demonstrating monetization of AI agent tools using PayMCP with multiple payment providers
Critical failures across all dimensions. Two identical tool names (add_numbers) with conflicting schemas (integer vs number types) indicate incomplete or broken tool registration. Both tools have minimal descriptions (4 words, well below 20-char threshold). Input parameters lack descriptions entirely (null values visible in schema). No output schema documented. No error handling guidance. Source code shows only pseudocode examples, not actual working implementation. Tool definitions appear inferred rather than explicitly registered in production code.
Add two numbers together
Add two numbers together
Duplicate tool names with conflicting schemas. Two 'add_numbers' tools exist with different input types (integer vs number). LLMs cannot disambiguate; this violates single-responsibility principle and breaks tool composition.
All parameter descriptions are null. Input schema shows {"a":{"type":"integer","description":null}}, parameters lack any documentation. LLMs cannot infer what 'a' and 'b' represent or what values are valid.
Tool descriptions are 4 words ('Add two numbers together'). Descriptions do not explain when to use this tool, what it returns, or any prerequisites. Insufficient for LLM selection.
No output schema documented. LLMs cannot plan downstream calls or extract return values. Unknown whether tool returns a number, object, or string.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 21 | 2026-07-28+ | v2 |
Source code is pseudocode/example only. No actual tool registration visible in production code. Tool definitions appear inferred from examples rather than explicitly implemented. Cannot verify real behavior.