Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, email [email protected] and we’ll put it right.

Fodda Earnings Intelligence

REMOTE · MCP.FODDA.AI · SCANNED AUG 3

Cross-company earnings trends & executive divergence with citable sources.

Available components

+15 this week 70 Trust /100
Trust breakdown (6 categories)

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score →

Endpoint Security74
Transport & Reachability100
Schema Quality & AI Usability61
  • 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
  • AI-judged instruction clarity (fair).Partial
  • Context-footprint check failed: tool/resource definitions use about 7216 tokens (~451/item across 16 items; 13 tools + 3 resources), over budget; trim descriptions and params. See how to fix → Fail
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management23
  • Stability observed for 7 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage100
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 100% of tool parameters carry a description.Pass
Capabilities100
  • Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Install

Add this component to your MCP client. Where a client-specific snippet is available, pick your client below and copy it straight into your config; otherwise use the connection detail shown.

remote · mcp.fodda.ai

# add to Claude Code
claude mcp add --transport http ai-fodda-earnings-intelligence https://mcp.fodda.ai/earnings-intelligence
# ~/.codex/config.toml
[mcp_servers.ai-fodda-earnings-intelligence]
url = "https://mcp.fodda.ai/earnings-intelligence"
// opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "ai-fodda-earnings-intelligence": {
      "type": "remote",
      "url": "https://mcp.fodda.ai/earnings-intelligence",
      "enabled": true
    }
  }
}
# add to OpenClaw
openclaw mcp add ai-fodda-earnings-intelligence --url https://mcp.fodda.ai/earnings-intelligence --transport streamable-http
# ~/.hermes/config.yaml
mcp_servers:
  ai-fodda-earnings-intelligence:
    url: "https://mcp.fodda.ai/earnings-intelligence"
// mcp.json
{
  "mcpServers": {
    "ai-fodda-earnings-intelligence": {
      "type": "http",
      "url": "https://mcp.fodda.ai/earnings-intelligence"
    }
  }
}

The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.

Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 3 Aug 26 +2
    • The server rewrote its instructions, which are the text every model session reads security
  • 1 Aug 26 +4
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
  • 31 Jul 26 −1
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
  • 29 Jul 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 3 to 7. That category is still filling its 30-day observation window: 1 days of observed history at the previous scan, 2 at this one. The score rises as the window fills, whether or not the server changes.

  • 28 Jul 26 +9
    • Transport: fail → pass security
    • The server rewrote its instructions, which are the text every model session reads security
    • Schema quality: 538 → 449 functional
    • Stability: unverified → 0.03 functional
    • Schema quality: good → fair functional
    • New tool “get_capabilities” functional
    • New tool “get_validated_trends” functional
  • 27 Jul 26 55

    First indexed and scored.

Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 3 Aug 2026 · Probed https://mcp.fodda.ai/earnings-intelligence

TLS valid

Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .

Subject Issuer Valid from Valid until Key Signature Serial
CN=mcp.fodda.ai CN=WR3,O=Google Trust Services,C=US 24 Jul 2026 22 Oct 2026 RSA 2048 SHA256-RSA 327a89c0ad6224d8102712bc19dab6f4
SANs: mcp.fodda.ai
CN=WR3,O=Google Trust Services,C=US (CA) CN=GTS Root R1,O=Google Trust Services LLC,C=US 13 Dec 2023 20 Feb 2029 RSA 2048 SHA256-RSA 7ff005a91568d63abc22861684aa4b5a
CN=GTS Root R1,O=Google Trust Services LLC,C=US (CA) CN=GlobalSign Root CA,OU=Root CA,O=GlobalSign nv-sa,C=BE 19 Jun 2020 28 Jan 2028 RSA 4096 SHA256-RSA 77bd0d6cdb36f91aea210fc4f058d30d
DNSSEC insecure

Validation of mcp.fodda.ai. Not signed

Zone DS Keys Algorithms Outcome
. trust_anchor 20326, 38696 8, 8 Verified
ai. present 3799 8 Verified
fodda.ai. absent Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation
Authentication No authorisation required

The endpoint answered without asking for a token. Anyone who knows the URL can reach it.

Result No authorisation required
HTTP status 200
Transports 2 probes
Transport URL Outcome Status Location
streamable-http https://mcp.fodda.ai/earnings-intelligence Verified 200
http (plaintext) http://mcp.fodda.ai/earnings-intelligence HTTPS enforced 302 https://mcp.fodda.ai/earnings-intelligence
MCP tools — 13 exposed · ~3,373 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability.

Tool Tokens
generate_visual ~247

Create a presentation-ready data visualization from research findings. Available chart types: "cultural_shifts" (From→To transitions), "competitive_compass" (brands on 2 axes), "trend_constellation" (network of related trends), "implication_ladder" (Signal→Trend→So What→Do What), "innovation_pathway" (Now→Near-Term→Future), "opportunity_map" (2×2 white space analysis). Returns a branded SVG that renders directly in the chat.

NameTypeReqDescription
chart_typestringyesThe type of visualization to generate
datastringyesJSON string containing the chart data. Structure depends on chart_type. cultural_shifts: {shifts:[{from,to}]}. competitive_compass: {brands:[{name,x,y}], axes:{left,right,top,bottom}}. trend_constell…

No output schema declared.

No examples provided.

get_capabilities ~58

Returns Fodda's main capabilities / features / offerings / products / services / tools and what they cost. Call this for any question about what Fodda can do or what's available.

NameTypeReqDescription
userIdstringOptional user identifier.

No output schema declared.

No examples provided.

get_company_earnings ~423

The canonical per-ticker earnings source. Returns the full truth-layer record for covered tickers (517 consumer-sector companies) — analyst concerns, sentiment labels, strategic activity (marketing/retail/technology/sustainability), CEO intelligence, and validated consumer trends from Fodda's quarterly analysis pipeline. Falls back to web-backfill for uncovered tickers. Uses 0–15 API calls depending on mode/view (coverage is free, snapshot/history = 10, qa = 5, compare = 15). Use this for company-specific data. Use get_earnings_intelligence for cross-company thematic comparisons.

NameTypeReqDescription
analyststringAnalyst name filter for qa view.
metricsstringComma-separated metric names for history view (e.g. swot_total,ceo_sentiment). Defaults to all.
modestringExecution mode (alias for view): snapshot (10 API calls), history (10 API calls), qa (5 API calls), compare (15 API calls), guidance (10 API calls), coverage (free).
periodstringQuarter filter (e.g. Q1-2026). Defaults to latest quarter.
sectorstringSector filter for guidance view.
tickerstringCompany ticker symbol (e.g. NKE, LULU, ONON). Required for snapshot, history, and qa views.
tickersstringComma-separated ticker symbols for compare view (2-5 tickers). Only used when view=compare.
userIdstringOptional user identifier for trial usage tracking.
viewstringsnapshot: full quarterly record with analyst concerns, sentiment, activity, validated trends (10 API calls). history: narrative timeline across quarters (10 API calls). qa: per-analyst Q&A entries wi…

No output schema declared.

No examples provided.

get_earnings_divergence ~246

Cross-company analyst-management divergence detection from the knowledge graph (legacy-thematic). Surfaces where executives are deflecting, reframing, or avoiding specific topics — the gap between what analysts press on and how management responds. Use for "where are executives deflecting?" or "divergence in [sector] earnings." For per-ticker deflection signals, use get_company_earnings with view=qa and filter by response_directness. Uses 5 tokens ($2.50 via SPT).

NameTypeReqDescription
dateFromstringISO date range start
dateTostringISO date range end
industrystringIndustry filter (e.g., 'hotels', 'sportswear', 'luxury')
limitintegerMax results to return (default 10, max 25)
searchstringFree text search (e.g., 'tariffs', 'AI capex', 'margin erosion')
sectorstringSector filter (e.g., 'retail', 'technology', 'travel')
userIdstringOptional user identifier for trial usage tracking.

No output schema declared.

No examples provided.

get_earnings_intelligence ~331

Cross-company thematic earnings intelligence from the knowledge graph and web sources. Use for multi-company comparisons ("what are hotel companies saying about labor costs?"), industry-level queries, or sector filters. For single-brand earnings, brand_tracker includes earnings automatically. For per-ticker structured analysis (analyst concerns, activity breakdown, validated consumer trends), use get_company_earnings instead — it reads the canonical truth layer. Results may include "knowledge_graph" or "web_supplemental" provenance. Uses 5 tokens ($2.50 via SPT).

NameTypeReqDescription
brandstringBrand name for fuzzy matching (e.g., 'Nike', 'Marriott')
dateFromstringISO date range start (e.g., '2025-01-01')
dateTostringISO date range end (e.g., '2026-06-01')
industrystringIndustry filter (e.g., 'hotels', 'sportswear', 'consumer electronics')
limitintegerMax results to return (default 20, max 50)
searchstringFree text search in earnings summaries (e.g., 'labor costs', 'tariff guidance', 'AI investment')
sectorstringSector filter (e.g., 'retail', 'technology', 'travel')
tickerstringCompany stock ticker (e.g., 'NKE', 'LVMUY', 'HLT'). At least one filter required.
userIdstringOptional user identifier for trial usage tracking.

No output schema declared.

No examples provided.

get_evidence ~315

Get the source articles, case studies, and statistics behind a specific trend — with full citations and publisher attribution. Each item includes source URL, location, brand names, publication date, category, and a formatted citation. Use after search_graph when you need the supporting proof behind a trend. This is a direct lookup by trend ID — not a text search tool.

NameTypeReqDescription
for_node_idstringyesThe node_id from a prior search_graph result (e.g. '2507.0'). MUST come from the search result's node_id field. Node IDs are NOT sequential integers — do NOT guess or invent IDs like '1', '2', '3'. D…
graphIdstringyesThe graph ID. Use list_graphs to see all options. Examples: 'retail', 'tech', 'food', 'travel', 'beauty', 'sports', 'sic', 'pew', 'ce-design', 'ezra-eeman-wayfinder', 'dhl-ecommerce-trends-2026', 'au…
top_knumberNumber of evidence items to return (default 5)
userIdstringOptional user identifier for trial usage tracking.

No output schema declared.

No examples provided.

get_label_values ~297

List all brands, locations, technologies, audiences, or trends within a specific knowledge graph. Use to explore what a graph contains — e.g., "what brands are in the retail graph?" or "what locations does the fashion graph cover?". To get a complete list of every trend in a graph, call with label="Trend" — this returns the full deterministic list, useful for industry-report graphs where search may return partial results.

NameTypeReqDescription
graphIdstringyesThe graph ID. Use list_graphs to see all options. Examples: 'retail', 'tech', 'food', 'travel', 'beauty', 'sports', 'sic', 'pew', 'ce-design', 'ezra-eeman-wayfinder', 'dhl-ecommerce-trends-2026', 'au…
labelstringyesThe label to fetch values for (e.g., 'Brand', 'Location', 'Technology', 'Audience', 'RetailerType', 'Trend')
propertystringOptional property to return values for. Defaults vary by label.
userIdstringOptional user identifier for trial usage tracking.

No output schema declared.

No examples provided.

get_my_account ~74

Check the current user's account status: API call balance, plan, enabled/disabled graphs, and profile info. Use when the user asks "how many API calls do I have?", "what plan am I on?", "what graphs can I access?", or similar account questions. Returns live data — not cached from session start.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

get_neighbors ~406

Discover what's connected to a specific trend — related brands, technologies, locations, and cross-domain links that search alone wouldn't surface. Returns curated editorial connections between trends that web search cannot provide. Use after search_graph to map the territory around a trend, find which brands are connected, or understand cross-domain relationships. Requires node_id from a prior search_graph result.

NameTypeReqDescription
depthnumberTraversal depth (default 1, max 2)
directionstringTraversal direction: 'out' (default) follows outgoing edges, 'in' follows incoming edges
graphIdstringyesThe graph ID. Use list_graphs to see all options. Examples: 'retail', 'tech', 'food', 'travel', 'beauty', 'sports', 'sic', 'pew', 'ce-design', 'ezra-eeman-wayfinder', 'dhl-ecommerce-trends-2026', 'au…
limitnumberMaximum results (default 50)
relationship_typesarrayFilter by relationship types: 'EVIDENCED_BY', 'RELATED_TO', 'SEMANTICALLY_SIMILAR', 'ASSOCIATED_BRAND', 'MENTIONS_BRAND', 'IN_LOCATION'
seed_node_idsarrayyesArray of node IDs to start traversal from. MUST be actual node_id values from a prior search_graph result (e.g. ["2507.0"]). Node IDs are NOT sequential integers — do NOT guess or invent IDs like "1"…
userIdstringOptional user identifier for trial usage tracking.

No output schema declared.

No examples provided.

get_node ~282

Get the full profile of a specific trend — detailed description, lifecycle stage (emerging/building/mature), signal strength, geographic scope, and all properties. Use when you need deeper detail on a single trend after search_graph returned a summary. Requires node_id from a prior search_graph result.

NameTypeReqDescription
graphIdstringyesThe graph ID. Use list_graphs to see all options. Examples: 'retail', 'tech', 'food', 'travel', 'beauty', 'sports', 'sic', 'pew', 'ce-design', 'ezra-eeman-wayfinder', 'dhl-ecommerce-trends-2026', 'au…
nodeIdstringyesThe node_id from a prior search_graph result (e.g. '2507.0'). MUST come from the search result's node_id field. Node IDs are NOT sequential integers — do NOT guess or invent IDs like '1', '2', '3'. D…
userIdstringOptional user identifier for trial usage tracking.

No output schema declared.

No examples provided.

get_validated_trends ~158

Returns market-validated consumer trends from corporate earnings reports cross-validated by Fodda's analysis pipeline. Connects earnings commentary (analyst concerns, CEO statements) with consumer trend signals.

NameTypeReqDescription
limitintegerMax results to return (default 20, max 50)
searchstringFree text search in validated trends (e.g. 'resale', 'inventory', 'pricing').
sectorstringFilter by sector (e.g. 'retail', 'sportswear', 'beauty').
tickerstringFilter by company ticker symbol (e.g. 'NKE', 'LULU').
userIdstringOptional user identifier for trial usage tracking.

No output schema declared.

No examples provided.

list_graphs ~108

List all knowledge graphs the user can access — IDs, descriptions, authors, sectors, signal counts. Use FIRST in any session to discover available sources before searching. Returns graph metadata needed for graphId parameters in other tools. Deprecated: waldo, psfk (use retail/tech/food/travel/fashion/beauty/sports instead).

NameTypeReqDescription
userIdstringOptional user identifier. Authenticated users are identified automatically via API key. For trial users, this helps track usage.

No output schema declared.

No examples provided.

search_graph ~428

Find trends, signals, and expert insights across 100+ curated knowledge graphs covering retail, beauty, tech, food, travel, sports, and 30+ specialist domains. Returns trend data with cited evidence, source attribution, and lifecycle stage (emerging/building/mature/fading) — not generic web summaries. If graphId is omitted, searches ALL accessible graphs in parallel (recommended default). Use for market trends, competitor analysis, innovation signals, consumer behavior, cultural shifts, or any topic where curated expert intelligence outperforms web search.

NameTypeReqDescription
graphIdstringOptional graph ID. If omitted, searches ALL accessible graphs. Examples: 'retail', 'tech', 'food', 'travel', 'beauty', 'sports', 'sic', 'pew', 'ce-design', 'ezra-eeman-wayfinder', 'dhl-ecommerce-tren…
include_evidencebooleanIf true, batch-fetch supporting evidence articles inline with results. Default: true.
limitnumberMaximum number of results (default 10, max 50)
modestringExecution mode: "research" for topic research (15 API calls), "compare" for upload & compare intelligence (20 API calls). Defaults to "research".
querystringyesThe search query. Location terms are auto-detected and used to filter results geographically.
skip_skillsbooleanIf true, skip applying any enabled skills (Paralogy, Igloo, etc.) for this query only. Use when the user says "without skills", "skip Paralogy", or "just the raw results". Default: false.
use_semanticbooleanWhether to use semantic search (default true)
userIdstringOptional user identifier for trial usage tracking.

No output schema declared.

No examples provided.