Trading Agent MCP Server - A template for building MCP servers
Single tool with minimal viable schema and descriptions. Tool is named generically without action verb prefix, and while it has a schema and description, both lack the depth and LLM-optimization needed for production use. The server demonstrates basic MCP structure but falls well short of patterns for tool composition, error guidance, and parameter clarity. Most concerning: tool name 'hello_tool' is redundant (tool suffix is implicit), lacks verb prefix (should be 'greet_person' or similar), and the codebase shows unrelated divination/hand technique code (hand_techniques.py) with no connection to trading or the actual server, suggesting incomplete or abandoned implementation.
Say hello to someone. Args: name: The name of the person to greet Returns: A greeting response with status and message
Tool name lacks action verb prefix and is redundant. 'hello_tool' should be 'greet_user' or 'send_greeting', tool suffix is implicit in MCP registration.
Parameter description is minimal (13 chars: 'The name of the person to greet'). While this example is borderline adequate, it lacks context on format (empty string handling), constraints (max length, allowed characters), or guidance on natural vs. system identifiers.
No output schema documented. Tool returns a structured dict with 'status', 'message', 'name', 'timestamp', 'metadata' fields, but none of these are declared in the tool's public schema. LLMs cannot predict response shape and must reverse-engineer it from calling.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | F | 39 | 2026-07-28+ | v2 |
| 2026-03-09 | F | 42 | - | v1 |
Error handling is silent, exceptions are caught but error responses lack actionable guidance. When an error occurs, the response returns {'status': 'error', 'message': '...'}, but there's no instruction for the LLM: should it retry? Ask the user? This violates recovery-guide pattern.
Codebase contains unrelated divination/hand technique code (docs/hand_techniques.py) with imports for AI agents and symbol tables, completely disconnected from the trading agent MCP server. This suggests incomplete refactoring, copy-paste from a template, or abandoned code paths. Reduces confidence in maintainability.
Tool description states returns 'A greeting response with status and message' but actual response includes 'timestamp' and 'metadata' fields not mentioned. Documentation is incomplete, LLMs will be surprised by actual output.
No composition or chaining support. The server defines a single greeting tool with no clear relationship to trading, markets, or agents. Prompt feature exists ('call_hello_multiple_prompt') but is disconnected from tool capabilities, suggests incomplete feature build.