Company intelligence for AI agents — any company, one call. Exposes company research as an MCP tool for Claude Desktop.
DeepLook exposes 2 tools (research, lookup) via fastmcp with HTTP transport. Both tools have reasonable descriptions and documented input schemas with enums, but several critical gaps reduce the score: (1) Tool naming lacks action verbs, 'research' and 'lookup' are vague compared to 'run_research' or 'search_company'; (2) Parameter descriptions exist but are minimal (avg ~40 chars), below the 72-char baseline for A-grade tools; (3) Output schemas are NOT documented in the tool definitions, the MCP server does not expose what fields clients should expect in responses; (4) No error handling patterns visible, no guidance on retryability, user-fixable errors, or recovery steps; (5) No tool annotations (readOnlyHint, etc.) despite both tools being read-only with well-defined risk profiles. The server is functional but cuts corners on LLM-friendliness.
Quick lookup of company data without YouTube fetcher. Returns structured company information (ticker, entity_type) and basic financial/market data.
Run full company research with LLM synthesis. Fetches data from yfinance, DuckDuckGo News, CoinGecko, DeFiLlama, SEC EDGAR, Wikipedia, YouTube, and Finnhub, then synthesizes with Claude.
Tool names lack action verbs. 'research' and 'lookup' are noun-like; production tools use verb_noun (e.g. 'run_research', 'search_company'). LLMs infer intent from names first, ambiguous names cause tool confusion when many are available.
Output schemas not documented. The tools' responses are not declared in the MCP tool definitions. LLMs cannot plan downstream operations or extract returned IDs (e.g., ticker, entity_type) without seeing the response structure. Clients must reverse-engineer outputs from code or experimentation.
No tool annotations despite clear risk profiles. Both tools are READ_ONLY and idempotent (safe to retry), but these hints are not declared via ToolAnnotations.readOnlyHint. Agents cannot distinguish safe tools from destructive ones without explicit hints.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 55 | <=2025-11-25 | v2 |
No error handling guidance. The code does not show error recovery patterns (e.g., 'API timeout, retry in 5 seconds', 'Company not found, try a partial ticker search'). Agents hitting failures have no next-step guidance.
Parameter descriptions are minimal. 'Entity type hint: stock/crypto/auto' is only ~35 chars; baseline is 72 chars. Descriptions should explain WHEN to use each option and what the LLM should infer if the user doesn't specify.
No pagination guidance for research results. The 'research' tool synthesizes data from 8+ sources but the tool definition does not declare output size limits or pagination. Large reports could overflow context.