MCP server for EODHD financial data APIs providing access to stock prices, fundamentals, technical indicators, news, and market data
Server has 2 tools with complete input schemas and descriptions. Naming follows verb_noun pattern (get_*, mp_*). Descriptions are detailed (150-200 chars) and explain WHEN to use each tool, which is good. However, parameter descriptions lack format constraints (e.g., date format 'YYYY-MM-DD' is stated but not enforced via regex or enum). Output schemas are not documented, LLMs cannot predict response structure for chaining. No error handling guidance visible. Tool descriptions mention API call costs (10 calls per request) but lack recovery hints for rate limits or failures. Parameters like 'fmt' have defaults but no validation shown. Overall: solid naming and descriptions, but missing output schema documentation and error recovery patterns.
Fetch detailed data for a specific CBOE index on a given date, including all constituent components. Use when the user needs index close value, divisor, and full component breakdown (symbols, weights, market caps, sectors) for a CBOE index. Requires index_code, feed_type, and date. Returns index-level attributes plus an array of components with ISIN, closing price, currency, shares, market cap, weighting, and sector. Costs 10 API calls per request. For listing all available CBOE indices, use get_cboe_indices_list first.
[Marketplace] Get constituent stocks of a specific S&P or Dow Jones index, including historical component changes for major indices. Use when asked which stocks are in an index, or to track index rebalancing history. Requires the index symbol from mp_indices_list (e.g. GSPC.INDX for S&P 500). To browse available indices first, use mp_indices_list. Consumes 10 API calls per request.
Output schemas not documented. LLMs cannot predict response structure (fields, types, nesting) for downstream tool chaining or data extraction. Both tools return complex objects (index data with components array, constituent stocks with historical changes) but no schema is visible.
Parameter 'date' accepts YYYY-MM-DD format but no validation or error guidance shown. If LLM passes invalid date (e.g., '2024-13-45'), no recovery hint provided. Should include: 'If date is invalid or outside trading range, call get_cboe_indices_list to verify available dates.'
No error handling or recovery guidance. Tools mention 'Costs 10 API calls per request' but do not document what happens on rate limit, invalid index_code, or API failure. LLM has no guidance on retry strategy or fallback.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 60 | <=2025-11-25 | v2 |
Parameter 'api_token' is optional and marked as 'Per-call token override.' Exposing API tokens as tool parameters violates secret-injection pattern, tokens can leak into logs and prompt history. Should use server-side environment variable injection only.
Tool descriptions reference prerequisite tools ('use get_cboe_indices_list first', 'use mp_indices_list') but those tools are not visible in the provided source. If they exist, they should be registered and documented. If they don't exist, the descriptions are misleading.