Unified finance & business MCP server: Yahoo, TradingView, FMP, Alpha Vantage, marketaux and Futu OpenD behind one tool surface.
26 tools with READ_ONLY risk classification. All tools have names starting with action verbs (get_, search_, run_). Descriptions present but vary widely in quality (10-200 chars). Input schemas visible with type declarations, but many lack detailed parameter descriptions. Output schemas not documented. Error handling guidance absent. Tool composition is reasonable (single responsibility), but parameter constraints are minimal. No tool annotations (readOnlyHint, idempotentHint). Naming is clear but some tools are overly generic (e.g., 'kimi_datasource', 'tv_scan', 'tv_analyze' require action parameter to disambiguate). Parameter descriptions often missing or trivial.
USDT-settled perpetuals on crypto exchanges (quote/kline/summary/funding/open_interest)
Egyptian Exchange market data and analysis
Get option chain data from Futu OpenD
Get company information
Profile Chinese companies (tianyancha via kimi)
Get 8 canonical macro indicators
Get events calendar data
Get financial report data
Output schemas not documented. LLMs cannot plan downstream tool calls or extract required fields without knowing response structure. Affects all 26 tools.
Generic action parameters without enum constraints. Tools like tv_scan, tv_analyze, egx_market, quant_backtest, kimi_datasource accept 'action' as free-form string. LLMs cannot discover valid values without trial-and-error. Descriptions mention 'call with action=help' but this is not self-documenting.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 46 | 2026-07-28+ | v2 |
Get FRED series data by series_id
Get historical price data for a symbol
Get kline data from Futu OpenD
Get news for a symbol
Get ownership information for a symbol
Get current stock quote data
Report which sources are configured
Get snapshot data from Futu OpenD
Bundle per-symbol indicator queries (options|short|analyst|dividends|earnings)
Get technical indicators for a symbol
Direct self-describing access to deep datasources (action='list'|'describe'|'call')
Run strategy backtests (call with action='help' for full parameter guide)
Run a stock screener
Search FRED series
Search for Chinese 快讯/flash headlines (熱度/view_count, no summary/sentiment)
Search for symbols
TradingView analyzer container selected by action
TradingView scanner container selected by action
Parameter descriptions missing or trivial. 'source' parameter appears in 15+ tools with description 'Data source', does not explain valid values, format, or when to use each source. 'criteria' in run_screener is 'Screening criteria' (object type, no field documentation). LLMs cannot construct valid payloads.
No error handling guidance. Tools do not document what errors are possible, whether they are retryable, or what the LLM should do next. E.g., if get_quote fails with 'symbol not found', should the LLM call search_symbols? No guidance provided.
No tool annotations. Tools lack readOnlyHint, idempotentHint, or destructiveHint. All tools are READ_ONLY, but this is not declared in the tool definition, only in the risk field (which is not part of the MCP spec). Agents cannot infer safety properties.