An MCP Server for Alpha Vantage
Single tool with basic schema and description, but significant gaps. Tool name is clear (get_stock_data), but description lacks actionable context for LLM selection. Parameters have types and defaults, but descriptions are minimal and lack constraints. No output schema documented. No error handling guidance. No pagination despite API returning potentially large datasets. Fails multiple critical checks from the rubric.
Get stock data from Alpha Vantage API. Args: symbol (str): The stock symbol to query. interval (str): The interval for the stock data. Default is "60min". function (str): The function to use for the query. Default is "TIME_SERIES_INTRADAY". Returns: dict: The response from the Alpha Vantage API.
No output schema documented. LLM cannot plan downstream operations or extract specific fields from Alpha Vantage response.
Tool description lacks WHEN to use it and what it returns. Current description is 180 chars but reads like a docstring copy, not LLM-optimized guidance. Should explain: 'Fetch intraday/daily stock price data from Alpha Vantage. Use for real-time quotes, technical analysis, or price history. Returns time series with OHLC data.'
Parameter descriptions are minimal. 'interval' says 'The interval for the stock data. Default is "60min".' but does not list valid values (1min, 5min, 15min, 30min, 60min). 'function' similarly lacks enum constraint. LLM will hallucinate invalid values.
No error handling guidance. Tool calls external API but provides no recovery hints. If API returns 'Invalid API key' or 'Rate limit exceeded', LLM has no actionable next step.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 43 | 2026-07-28+ | v2 |
API key exposed in environment variable without validation or rotation guidance. While not a parameter, the code does not document secret management best practices or warn about key leakage in logs.