AIDEVELOPER TOOLS

Corporate Deep Research MCP

**Corporate deep research for AI agents** — this MCP server gives Claude, GPT-4, and any MCP-compatible AI client instant access to 7 live corporate intelligence sources: SEC filings, stock market data, legal entity identifiers, customer reviews, consumer complaints, web research, and encyclopedic context. One tool call returns financial health scores, governance grades, reputation risk levels, and investment risk classifications across all dimensions simultaneously.

Try on Apify Store
$0.10per event
0
Users (30d)
0
Runs (30d)
90
Actively maintained
Maintenance Pulse
$0.10
Per event

Maintenance Pulse

90/100
Last Build
Today
Last Version
1d ago
Builds (30d)
8
Issue Response
N/A

Cost Estimate

How many results do you need?

tool-calls
Estimated cost:$10.00

Pricing

Pay Per Event model. You only pay for what you use.

EventDescriptionPrice
tool-callPer MCP tool invocation$0.10

Example: 100 events = $10.00 · 1,000 events = $100.00

Connect to your AI agent

Add this MCP server to Claude Desktop, Cursor, Windsurf, or any MCP-compatible client.

MCP Endpoint
https://ryanclinton--corporate-deep-research-mcp.apify.actor/mcp
Claude Desktop Config
{
  "mcpServers": {
    "corporate-deep-research-mcp": {
      "url": "https://ryanclinton--corporate-deep-research-mcp.apify.actor/mcp"
    }
  }
}

Documentation

Corporate deep research for AI agents — this MCP server gives Claude, GPT-4, and any MCP-compatible AI client instant access to 7 live corporate intelligence sources: SEC filings, stock market data, legal entity identifiers, customer reviews, consumer complaints, web research, and encyclopedic context. One tool call returns financial health scores, governance grades, reputation risk levels, and investment risk classifications across all dimensions simultaneously.

Manual corporate due diligence takes a financial analyst 6-12 hours per company: pulling EDGAR filings, checking GLEIF LEI status, reading Trustpilot reviews, scanning CFPB complaint volumes, cross-referencing stock data. This server automates the entire intelligence-gathering and scoring pipeline. Your AI agent calls a single MCP tool, and the server fans out to 7 data sources in parallel, builds a corporate graph network, and returns structured analysis with actionable recommendations — in under 3 minutes.

⬇️ What corporate intelligence data can you access?

Data PointSourceCoverage
📊 Business overview, competitors, market positionCompany Deep ResearchWeb-wide intelligence
📋 10-K, 10-Q, 8-K, proxy statementsEDGAR Filing SearchFull SEC database
📈 Stock price, market cap, financial metricsFinnhub Stock DataGlobal equities
🏢 Legal entity verification, parent/child hierarchyGLEIF LEI LookupGlobal LEI registry
⭐ TrustScore, review volume, rating trendsTrustpilot Review AnalyzerTrustpilot listings
⚠️ Complaint volume, product categories, resolution statusCFPB Consumer ComplaintsUS financial complaints
📖 Company history, controversies, notable eventsWikipedia Article Search6M+ articles
🔗 Cross-source identity graph with edge weightsCorporate Network BuilderAll 7 sources unified

MCP Tools

ToolPriceDefault SourcesDescription
map_corporate_intelligence$0.04research, filings, stock, leiBuild a corporate graph network — nodes for companies, filings, stocks, and entities, edges showing relationships and connection weights
assess_financial_health$0.04research, filings, stock, leiScore financial health (strong / stable / caution / distressed) from stock price signals, filing activity, and market cap logarithm
detect_reputation_risk$0.04research, reviews, complaintsDetect reputation risk (low / medium / high / critical) from Trustpilot review trends and CFPB complaint volume and category
analyze_filing_patterns$0.04filings, researchAnalyze SEC filing frequency, form types, and anomaly score using standard deviation of inter-filing gaps
score_corporate_governance$0.04filings, lei, wikipediaGrade governance quality A–F from disclosure completeness, 10-K/10-Q compliance, LEI status, and transparency indicators
trace_corporate_identity$0.04research, lei, stock, wikipediaCross-reference corporate identity across LEI, Wikipedia, and stock registries with alias detection and cross-ref score
assess_investment_risk$0.04research, filings, stock, lei, reviews, complaintsMulti-factor composite risk score (0–1) combining financial risk 30%, reputation risk 25%, governance risk 25%, market risk 20%
generate_deep_research_report$0.04all 7 sourcesFull corporate intelligence report: key findings sorted by severity, overall risk level, and prioritized recommendations

Why use Corporate Deep Research MCP for due diligence?

A mid-market M&A team spending 10 hours manually researching an acquisition target — EDGAR filings in one tab, Trustpilot in another, calling GLEIF's API separately — will miss the pattern: a spike in 8-K disclosures coinciding with rising CFPB complaints is a material risk signal. Manual research produces siloed data. This server produces a unified graph where the relationships between data points are as important as the data itself.

This MCP server is designed for AI workflows where the agent needs to reason over corporate intelligence, not just retrieve individual data points.

  • Scheduling — attach to an Apify schedule to monitor portfolio companies weekly and alert when risk levels change
  • API access — trigger from Python, JavaScript, n8n, or any HTTP client with a single POST request
  • 5-minute TTL cache — repeated queries within 5 minutes return cached results, keeping costs predictable during iterative agent workflows
  • Spending limits — set a maximum spend per Apify run; the server returns a structured error when the limit is reached so your agent can handle it gracefully
  • Dual transport — supports both SSE (/sse) and Streamable HTTP (/mcp) transports for maximum client compatibility
  • Parallel source fetching — all 7 data sources are fetched concurrently via Promise.all, minimizing latency per tool call

Features

  • 7-source corporate intelligence graph — research, EDGAR filings, Finnhub stock, GLEIF LEI, Trustpilot, CFPB, and Wikipedia are ingested simultaneously and linked into a unified CorpNetwork with typed nodes and weighted edges
  • Typed edge relationships — the network uses 6 edge types: filed_by (0.8), trades_as (0.9), identified_by (0.7), reviewed_on (0.6), complained_about (0.7), described_in (0.5), allowing the agent to traverse corporate relationships
  • Financial health scoring formulahealthScore = priceSignal × 0.3 + filingActivity × 0.3 + log10(marketCap)/12 × 0.4, producing a 0–1 score mapped to four health levels
  • Composite investment risk formulacompositeRisk = financialRisk × 0.3 + reputationRisk × 0.25 + governanceRisk × 0.25 + marketRisk × 0.2, five risk levels from low to critical
  • Reputation risk triangulation — combines Trustpilot review score inversion (1 − avgRating), CFPB complaint volume (capped at 1.0 with 0.2/complaint), and a blended sentiment score
  • Governance grading A–F — evaluates 10-K presence (+0.4), 10-Q presence (+0.3), filing type diversity (+0.1/type, max 0.3), LEI registration (+0.2), and Wikipedia presence (+0.1)
  • Filing anomaly detection — calculates standard deviation of inter-filing gaps, then normalizes by mean gap to produce an anomaly score from 0 to 1 (>0.5 = anomalous)
  • Corporate identity tracing — cross-references a company name across LEI, Wikipedia, and stock symbol to build an alias list and a cross-ref confidence score (max 1.0: LEI 0.4, Wikipedia 0.3, stock 0.3)
  • Findings enginegenerate_deep_research_report applies 4 detection rules: complaint volume thresholds, filing gaps, missing LEI records, and low-rated review clusters, with severity-sorted output
  • Per-source selectability — each tool accepts a sources array so you can run lightweight queries (e.g., ["filings"] only) to control cost and latency
  • Up to 500 items per source — the actor client fetches up to 500 dataset items per upstream actor call, with source-specific slice limits (40 research, 60 filings, 40 stocks, 30 LEI, 40 reviews, 40 complaints, 20 wiki)
  • 180-second upstream timeout — each sub-actor call runs with a 180-second wait; errors are caught gracefully and return empty arrays rather than failing the tool call

Use cases for corporate deep research

Investment due diligence

Portfolio managers and buy-side analysts use generate_deep_research_report as a first-pass screen before commissioning full analyst reports. The tool returns severity-ranked findings — consumer complaint spikes, filing gaps, LEI non-compliance — in under 3 minutes. Teams screening 20 companies per week save an estimated 40+ analyst-hours monthly.

M&A target assessment

Corporate development teams running acquisition pipelines use assess_financial_health and detect_reputation_risk in tandem to eliminate poor targets early. analyze_filing_patterns surfaces anomalous disclosure behavior that often precedes material events — a pattern a human analyst might miss when reviewing filings individually.

Vendor and counterparty screening

Procurement and compliance teams use score_corporate_governance and trace_corporate_identity for vendor onboarding. A governance grade below C, or a cross-ref score below 0.7, flags a counterparty for enhanced manual review. Integration with CRM systems via webhook keeps records current.

Portfolio risk monitoring

Asset managers configure recurring assess_investment_risk checks on portfolio companies using Apify Schedules. The composite risk score (0–1) is a consistent metric for tracking risk level changes over time, and the structured JSON output feeds directly into portfolio dashboards or risk reporting systems.

ESG and governance analysis

ESG analysts use governance grades and CFPB complaint trend data as input to ESG scoring frameworks. Disclosure completeness — measured by regular filing cadence and LEI registration — is a recognized governance indicator. The server provides quantitative signals that supplement qualitative ESG assessments.

AI agent-driven research workflows

AI coding assistants and research agents (Claude, GPT-4, Cursor, Windsurf) use this server as a corporate intelligence backend. The agent calls map_corporate_intelligence to get an entity graph, then chains assess_investment_risk for scoring, then calls generate_deep_research_report for the final output — a multi-step reasoning workflow that would require dozens of manual API calls without this server.

How to connect the Corporate Deep Research MCP server

Claude Desktop

Add this to your Claude Desktop claude_desktop_config.json:

{
  "mcpServers": {
    "corporate-deep-research": {
      "url": "https://corporate-deep-research-mcp.apify.actor/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_APIFY_TOKEN"
      }
    }
  }
}

Cursor / Windsurf / Cline

Add the MCP server URL to your editor's MCP configuration panel. Use the Streamable HTTP endpoint:

https://corporate-deep-research-mcp.apify.actor/mcp

Pass your Apify API token as a Bearer token in the Authorization header.

SSE transport (legacy clients)

For clients that use Server-Sent Events:

https://corporate-deep-research-mcp.apify.actor/sse

Health check

curl https://corporate-deep-research-mcp.apify.actor/health
# Returns: {"ok":true}

Tool parameters

Every tool in this server accepts the same two parameters:

ParameterTypeRequiredDefaultDescription
querystringYesCompany name, ticker symbol, or corporate entity to research (e.g., "Tesla", "TSLA", "Berkshire Hathaway")
sourcesarray of enumNoTool-specificWhich data sources to query. Options: research, filings, stock, lei, reviews, complaints, wikipedia

Source defaults by tool

ToolDefault sourcesMinimum recommended
map_corporate_intelligenceresearch, filings, stock, lei2 sources
assess_financial_healthresearch, filings, stock, leistock or filings
detect_reputation_riskresearch, reviews, complaintsreviews or complaints
analyze_filing_patternsfilings, researchfilings
score_corporate_governancefilings, lei, wikipediafilings
trace_corporate_identityresearch, lei, stock, wikipedialei or wikipedia
assess_investment_riskresearch, filings, stock, lei, reviews, complaints3+ sources
generate_deep_research_reportall 7 sources4+ sources

Call examples

Quick financial health check (2 sources, lowest cost):

{
  "query": "Palantir Technologies",
  "sources": ["stock", "filings"]
}

Full investment risk assessment (6 sources):

{
  "query": "SolarWinds Corporation",
  "sources": ["research", "filings", "stock", "lei", "reviews", "complaints"]
}

Reputation-only scan for a financial institution:

{
  "query": "Wells Fargo",
  "sources": ["reviews", "complaints"]
}

⬆️ Output examples

assess_financial_health output

{
  "assessments": [
    {
      "company": "Meridian Capital Group",
      "priceSignal": 0.3124,
      "filingActivity": 0.45,
      "marketCap": 0.7213,
      "healthScore": 0.5521,
      "healthLevel": "stable"
    },
    {
      "company": "Apex Industrial Holdings",
      "priceSignal": 0.1840,
      "filingActivity": 0.15,
      "marketCap": 0.2941,
      "healthScore": 0.2167,
      "healthLevel": "distressed"
    }
  ],
  "avgHealth": 0.3844,
  "distressedCount": 1
}

assess_investment_risk output

{
  "risks": [
    {
      "company": "NovaBridge Financial",
      "financialRisk": 0.4,
      "reputationRisk": 0.625,
      "governanceRisk": 0.28,
      "marketRisk": 0.3,
      "compositeRisk": 0.4213,
      "riskLevel": "medium"
    }
  ],
  "avgComposite": 0.4213,
  "criticalCount": 0
}

generate_deep_research_report output

{
  "findings": [
    {
      "category": "Consumer Complaints",
      "finding": "23 consumer complaint(s) found across researched entities",
      "severity": "critical",
      "evidence": "NovaBridge: Mortgage, NovaBridge: Credit card, NovaBridge: Debt collection",
      "recommendation": "Review complaint categories and implement customer experience improvements"
    },
    {
      "category": "Reputation Concerns",
      "finding": "7 low-rated review(s) indicating reputation risk",
      "severity": "high",
      "evidence": "NovaBridge Financial, NovaBri",
      "recommendation": "Deep-dive into review themes and implement reputation management"
    },
    {
      "category": "Identity Verification",
      "finding": "3 company(ies) without LEI identification",
      "severity": "medium",
      "evidence": "NovaBridge, Apex Holdings, Meridian",
      "recommendation": "Cross-reference with GLEIF database for legal entity verification"
    }
  ],
  "overallRisk": "critical",
  "companiesResearched": 4,
  "recommendations": [
    "Implement complaint monitoring and resolution tracking",
    "Verify SEC filing compliance for all entities",
    "Review filing frequency for anomalous patterns"
  ]
}

score_corporate_governance output

{
  "scores": [
    {
      "company": "Meridian Capital Group",
      "disclosureScore": 0.74,
      "filingCompliance": 0.8,
      "transparencyIndex": 0.77,
      "governanceGrade": "B"
    },
    {
      "company": "NovaBridge Financial",
      "disclosureScore": 0.3,
      "filingCompliance": 0.0,
      "transparencyIndex": 0.15,
      "governanceGrade": "F"
    }
  ],
  "avgTransparency": 0.46,
  "topGradeCount": 1
}

Output fields

Financial health (assess_financial_health)

FieldTypeDescription
assessments[].companystringCompany name (max 50 chars)
assessments[].priceSignalnumberStock price normalized to 0–1 (price / 500, capped at 1)
assessments[].filingActivitynumberFiling activity score: filingCount × 0.15, capped at 1
assessments[].marketCapnumberMarket cap signal: log10(marketCap) / 12, capped at 1
assessments[].healthScorenumberWeighted composite: price × 0.3 + filings × 0.3 + mcap × 0.4
assessments[].healthLevelstringstrong (≥0.7) / stable (≥0.5) / caution (≥0.3) / distressed (<0.3)
avgHealthnumberMean health score across all assessed companies
distressedCountnumberCount of companies with healthLevel === "distressed"

Reputation risk (detect_reputation_risk)

FieldTypeDescription
risks[].companystringCompany name
risks[].reviewScorenumberReview risk: 1 − avgRating (higher = worse reviews)
risks[].complaintScorenumberComplaint risk: complaintCount × 0.2, capped at 1
risks[].sentimentScorenumberBlended: (reviewScore + complaintScore) / 2
risks[].reputationRisknumberComposite: reviewScore × 0.4 + complaintScore × 0.4 + sentiment × 0.2
risks[].riskLevelstringcritical (≥0.75) / high (≥0.5) / medium (≥0.25) / low (<0.25)
avgRisknumberMean reputation risk across all companies
highRiskCountnumberCount of companies at high or critical risk level

Filing patterns (analyze_filing_patterns)

FieldTypeDescription
patterns[].companystringCompany name
patterns[].filingCountnumberTotal number of filings found
patterns[].filingTypesstring[]Distinct form types found (e.g., ["10-K", "10-Q", "8-K"])
patterns[].frequencynumberEstimated filings per year (365 days / mean inter-filing gap)
patterns[].anomalyScorenumberstdDev(gaps) / mean(gaps), capped at 1 — higher = more irregular
totalFilingsnumberTotal filing nodes in the network
avgFrequencynumberMean annual filing frequency across companies
anomalousCountnumberCompanies with anomalyScore > 0.5

Governance score (score_corporate_governance)

FieldTypeDescription
scores[].companystringCompany name
scores[].disclosureScorenumberfilingCount × 0.12 + LEI bonus 0.2 + Wikipedia bonus 0.1, capped at 1
scores[].filingCompliancenumber10-K presence (0.4) + 10-Q presence (0.3) + type diversity (0.1/type, max 0.3)
scores[].transparencyIndexnumberdisclosureScore × 0.5 + filingCompliance × 0.5
scores[].governanceGradestringA (≥0.8) / B (≥0.6) / C (≥0.4) / D (≥0.2) / F (<0.2)
avgTransparencynumberMean transparency index
topGradeCountnumberCompanies with grade A or B

Identity trace (trace_corporate_identity)

FieldTypeDescription
traces[].entitystringPrimary company name
traces[].leiMatchbooleanWhether a matching LEI entity was found
traces[].wikiMatchbooleanWhether a matching Wikipedia article was found
traces[].crossRefScorenumberLEI (0.4) + Wikipedia (0.3) + stock ticker (0.3) presence score
traces[].aliasesstring[]Name variants found across sources (max 5)
totalTracednumberTotal companies traced
confirmedCountnumberCompanies with crossRefScore ≥ 0.7
avgCrossRefnumberMean cross-reference confidence score

Investment risk (assess_investment_risk)

FieldTypeDescription
risks[].companystringCompany name
risks[].financialRisknumber1 − (filingCount × 0.1), capped at [0,1]
risks[].reputationRisknumbercomplaints × 0.15 + (1 − avgRating) × 0.5, capped at 1
risks[].governanceRisknumber1 − (LEI 0.4 + Wikipedia 0.2 + filings × 0.08), capped at [0,1]
risks[].marketRisknumber0.3 if stock data found, 0.7 if no stock data
risks[].compositeRisknumberfinancial × 0.3 + reputation × 0.25 + governance × 0.25 + market × 0.2
risks[].riskLevelstringcritical (≥0.75) / high (≥0.5) / medium (≥0.25) / low (<0.25)
avgCompositenumberMean composite risk
criticalCountnumberCompanies at critical risk level

Deep research report (generate_deep_research_report)

FieldTypeDescription
findings[].categorystringFinding category: Consumer Complaints, Filing Gaps, Identity Verification, Reputation Concerns
findings[].findingstringPlain-text description of what was found
findings[].severitystringcritical / high / medium / low
findings[].evidencestringSample entities/records supporting the finding
findings[].recommendationstringActionable next step
overallRiskstringDerived from most severe finding: critical / high / medium / low
companiesResearchednumberCount of company nodes in the network
recommendationsstring[]Deduplicated action items from all findings

How much does corporate deep research cost?

Each tool call costs $0.04 regardless of which tool you use or how many sources you include. There are no subscription fees or minimum commitments. The Apify Free plan includes $5 of monthly credits — enough for 125 tool calls with no payment required.

ScenarioTool callsCost per callTotal cost
Single company quick scan1$0.04$0.04
Full 8-tool analysis on one company8$0.04$0.32
Daily monitoring: 10 portfolio companies10$0.04$0.40/day
Weekly M&A pipeline screen: 50 companies50$0.04$2.00
Monthly enterprise due diligence: 500 calls500$0.04$20.00

You can set a maximum spending limit per Apify run. When the limit is reached, the server returns a structured {"error": true, "message": "Spending limit reached for ..."} response so your agent can handle it gracefully without unexpected charges.

Bloomberg Terminal costs $24,000/year for a single seat. PitchBook Professional starts at $10,000/year. With this server, a team running 500 corporate intelligence calls per month pays $20 — with no subscription commitment and no minimum seat requirements.

How to use Corporate Deep Research MCP via the API

Python

from apify_client import ApifyClient
import json

client = ApifyClient("YOUR_APIFY_TOKEN")

# Start the MCP server as an Apify actor run
run = client.actor("ryanclinton/corporate-deep-research-mcp").call(run_input={
    "port": 3050
})

print(f"MCP server running. Connect to: https://corporate-deep-research-mcp.apify.actor/mcp")
print(f"Run ID: {run['id']}")

Direct HTTP tool call (Python)

import requests

response = requests.post(
    "https://corporate-deep-research-mcp.apify.actor/mcp",
    headers={
        "Content-Type": "application/json",
        "Authorization": "Bearer YOUR_APIFY_TOKEN"
    },
    json={
        "jsonrpc": "2.0",
        "method": "tools/call",
        "params": {
            "name": "assess_investment_risk",
            "arguments": {
                "query": "Enron Corporation",
                "sources": ["research", "filings", "stock", "lei", "reviews", "complaints"]
            }
        },
        "id": 1
    }
)

result = response.json()
risk_data = json.loads(result["result"]["content"][0]["text"])
print(f"Composite risk: {risk_data['risks'][0]['compositeRisk']}")
print(f"Risk level: {risk_data['risks'][0]['riskLevel']}")

JavaScript

const response = await fetch("https://corporate-deep-research-mcp.apify.actor/mcp", {
    method: "POST",
    headers: {
        "Content-Type": "application/json",
        "Authorization": "Bearer YOUR_APIFY_TOKEN"
    },
    body: JSON.stringify({
        jsonrpc: "2.0",
        method: "tools/call",
        params: {
            name: "generate_deep_research_report",
            arguments: {
                query: "Silicon Valley Bank",
                sources: ["research", "filings", "stock", "lei", "reviews", "complaints", "wikipedia"]
            }
        },
        id: 1
    })
});

const data = await response.json();
const report = JSON.parse(data.result.content[0].text);
console.log(`Overall risk: ${report.overallRisk}`);
console.log(`Companies researched: ${report.companiesResearched}`);
for (const finding of report.findings) {
    console.log(`[${finding.severity.toUpperCase()}] ${finding.category}: ${finding.finding}`);
}

cURL

# Call the generate_deep_research_report tool
curl -X POST "https://corporate-deep-research-mcp.apify.actor/mcp" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_APIFY_TOKEN" \
  -d '{
    "jsonrpc": "2.0",
    "method": "tools/call",
    "params": {
      "name": "generate_deep_research_report",
      "arguments": {
        "query": "Theranos",
        "sources": ["research", "filings", "lei", "reviews", "complaints", "wikipedia"]
      }
    },
    "id": 1
  }'

# List all available tools
curl -X POST "https://corporate-deep-research-mcp.apify.actor/mcp" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_APIFY_TOKEN" \
  -d '{"jsonrpc":"2.0","method":"tools/list","params":{},"id":2}'

How Corporate Deep Research MCP works

Phase 1: Source resolution and graph construction

When a tool is called, the server first checks a 5-minute in-memory TTL cache keyed by source and query string (e.g., res:Tesla, fil:Tesla). Cache hits return instantly with no API cost. For cache misses, the server fans out to all requested sources in parallel via Promise.all, calling each upstream Apify actor with a 180-second timeout and fetching up to 500 dataset items.

The 7 source actors are: ryanclinton/company-deep-research, ryanclinton/edgar-filing-search, ryanclinton/finnhub-stock-data, ryanclinton/gleif-lei-lookup, ryanclinton/trustpilot-review-analyzer, ryanclinton/cfpb-consumer-complaints, and ryanclinton/wikipedia-article-search.

Phase 2: Corporate network assembly

The raw data from all sources is passed to buildCorpNetwork(), which constructs a typed graph of CorpNode and CorpEdge objects. Nodes are created for: companies (from research, up to 40), filings (up to 60), stocks (up to 40), LEI entities (up to 30), reviews (up to 40), complaints (up to 40), and Wikipedia articles (up to 20). Deduplication uses a Set<string> keyed on node IDs to prevent duplicate company nodes from multiple sources.

Edges are created based on name-matching heuristics: the first 8-10 characters of a company name are matched against node names from other source types to determine relationships. Edge weights reflect confidence: trades_as (0.9, highest), filed_by (0.8), complained_about and identified_by (0.7), reviewed_on (0.6), described_in (0.5).

Phase 3: Scoring and analysis

Each tool's scoring function operates on the assembled CorpNetwork. The functions traverse edges to collect linked nodes per company, then apply their respective formulas:

  • assessFinancialHealth() — pulls stock node score, counts filing edges, reads marketCap from stock metadata
  • detectReputationRisk() — averages review node scores (normalized 0–1), counts complaint nodes
  • analyzeFilingPatterns() — computes inter-filing date gaps in milliseconds, derives stdDev/mean ratio as anomaly score
  • scoreCorporateGovernance() — checks for 10-K and 10-Q form type strings, presence of LEI and article nodes
  • assessInvestmentRisk() — combines all four risk dimensions with fixed weights
  • generateDeepResearchReport() — applies threshold rules to network counts (>5 complaints = critical finding, >3 low-rated reviews = high finding)

Phase 4: Transport and billing

The server supports both SSE (/sse + /messages) and Streamable HTTP (/mcp) transports. Each tool call triggers Actor.charge() before returning results. If the spending limit is reached, the server returns a structured error JSON rather than throwing, preserving agent workflow stability. The server runs in Apify Standby mode, staying alive to handle multiple tool calls without cold-start overhead.

Tips for best results

  1. Use generate_deep_research_report as your entry point. It queries all 7 sources and returns severity-sorted findings. Use individual tools only when you need to drill into a specific dimension.

  2. Narrow sources to control cost and latency. A ["filings"]-only call to analyze_filing_patterns takes ~30 seconds and costs $0.04. A 7-source generate_deep_research_report takes 2-3 minutes. Match source selection to your urgency.

  3. Use ticker symbols for public companies. Querying "AAPL" rather than "Apple Inc" improves match quality in EDGAR and Finnhub since these sources index by ticker. For private companies, use the full legal name.

  4. Chain tools for multi-step agent workflows. Call map_corporate_intelligence first to understand what data is available, then target specific tools. The graph structure in the output tells you which data sources returned useful results.

  5. Combine with counterparty screening. For third-party risk, pair this server with Counterparty Due Diligence MCP to add sanctions, adverse media, and PEP checks alongside the financial intelligence from this server.

  6. Set Apify spending limits on runs used for large batch screening. If your agent iterates over a long list of companies, configure a per-run spending cap in Apify Console to prevent unbounded costs.

  7. Schedule weekly portfolio monitoring. Use Apify Schedules with a webhook to POST results to a Slack channel or dashboard. The structured JSON output from assess_investment_risk is well-suited for automated alerting on risk level changes.

Combine with other Apify actors and MCP servers

Actor / MCP ServerHow to combine
Counterparty Due Diligence MCPAdd KYB sanctions screening, adverse media, and PEP checks to financial intelligence for full third-party risk coverage
Corporate Political Exposure MCPLayer political risk and lobbying exposure data on top of governance scores from this server
Brand Narrative Intelligence MCPExtend reputation risk detection with media narrative analysis and brand sentiment trends
Competitive Digital Intelligence MCPCombine corporate financial health data with competitive digital posture for a complete competitor profile
Trustpilot Review AnalyzerRun deeper review analysis — sentiment by topic, review velocity trends — beyond what the MCP aggregates
CFPB Consumer ComplaintsPull full complaint records with narrative text for detailed complaint analysis beyond count-based signals
EDGAR Filing SearchAccess full filing text, exhibits, and XBRL data beyond what the MCP's 60-filing limit exposes

Limitations

  • Private companies have limited financial data. EDGAR filings and Finnhub stock data are US public-company-centric. Private companies may return empty stock and filing nodes, which degrades financial health and investment risk scores significantly. The governance grade will understate quality for well-run private companies with no SEC filing obligations.
  • Source data quality depends on upstream actors. The scoring is only as good as the data returned by the 7 upstream actors. If GLEIF LEI returns no results for a query, the governance score will penalize the company for missing LEI even if the entity is legitimately registered under a different name variant.
  • Name-matching is approximate. The graph construction uses first-8-to-10-character substring matching to link nodes across sources. Common company name prefixes can produce false edge connections. Use specific, unique company names or ticker symbols to minimize false links.
  • 180-second upstream timeout. If an upstream actor takes longer than 3 minutes to respond, that source returns an empty array. A slow CFPB response will produce a reputation risk score of 0 (artificially low) rather than an error.
  • 5-minute cache is shared within a single server instance. The in-memory TTL cache does not persist across Standby restarts. After a restart, the first query for each company pays full source-fetching cost.
  • Up to 500 items per source. For very large companies with hundreds of SEC filings or thousands of complaints (e.g., major banks), the 500-item cap means the network only reflects a recent slice of filings and complaints.
  • CFPB data is US financial institutions only. Non-financial companies and non-US companies will return no CFPB complaint data, making the complaint score component of reputation risk zero for those entities.
  • No XBRL or financial statement parsing. The financial health score uses market cap and filing count as proxies. It does not parse balance sheets, income statements, or cash flow data. For deep financial modeling, use the direct EDGAR actor.

Integrations

  • Claude Desktop — connect via claude_desktop_config.json for conversational corporate due diligence with Claude
  • Cursor / Windsurf — embed corporate intelligence in your IDE workflow for AI-assisted analysis
  • Apify API — trigger tool calls programmatically from any HTTP client, CI/CD pipeline, or internal application
  • Webhooks — push risk score changes to Slack, Teams, or internal alerting systems when scheduled runs complete
  • Zapier — trigger corporate research on new CRM entries and push findings to HubSpot, Salesforce, or Google Sheets
  • Make (Integromat) — automate vendor screening workflows: new vendor added → research triggered → governance score sent to procurement team
  • LangChain / LlamaIndex — use this server as a corporate intelligence tool in RAG pipelines and multi-agent research workflows

Troubleshooting

Tool returns empty assessments or risks arrays. The corporate graph had no company nodes. This happens when the query string doesn't match any entity names in the source data. Try a more specific query — use the full legal name or ticker symbol. Check if the company is private (SEC filing data may be absent).

generate_deep_research_report returns overallRisk: "low" with no findings. The findings engine applies minimum thresholds: complaints need >5 records, low-rated reviews need >3 records, missing LEI needs >2 entities. For small companies with sparse data, all thresholds may go unmet even if risk exists. Use assess_investment_risk directly for a score-based view.

Financial health score seems too low for a well-known company. The health scoring uses stock price / 500 as the price signal, meaning stocks above $500 score 1.0 and below $50 score 0.1. This is a relative signal, not an absolute valuation. Combine with score_corporate_governance and trace_corporate_identity for a fuller picture.

Tool call times out in Claude Desktop. Each tool call can take up to 3 minutes when fetching 7 sources. If Claude Desktop has a shorter timeout, reduce the sources array to 2-3 sources for faster responses, or use a tool with fewer default sources like analyze_filing_patterns.

Spending limit reached error. The Apify run hit its configured spending cap. Increase the limit in Apify Console under the actor run settings, or set up a recurring run with a higher monthly budget allocation.

Responsible use

  • This server only accesses publicly available corporate data from official registries (SEC EDGAR, GLEIF), licensed market data (Finnhub), and publicly accessible platforms (Trustpilot, Wikipedia).
  • CFPB complaint data is a public government dataset published under US FOIA principles.
  • Do not use outputs to make unsupported claims about company creditworthiness, solvency, or legal compliance without engaging qualified financial and legal professionals.
  • Investment decisions based on this data should involve licensed financial advisors. This server provides intelligence inputs, not investment advice.
  • Comply with applicable data regulations when using outputs in commercial due diligence processes.
  • For guidance on web scraping and data legality, see Apify's legal guide.

❓ FAQ

How many companies can the Corporate Deep Research MCP research in one tool call? Each tool call takes a single query string and researches that company across all selected sources. The corporate network may include related entities found in filings and research data — typically 5-30 company nodes — all scored in a single $0.04 call. To research 10 unrelated companies, make 10 separate calls.

How current is the corporate intelligence data? Finnhub stock data is fetched live at query time. EDGAR reflects the latest published filings (typically within 24 hours of SEC publication). GLEIF LEI data reflects the current registry state. Trustpilot and CFPB data reflect the current platform state. Company Deep Research pulls live web data. The 5-minute TTL cache means repeated queries within 5 minutes return cached results.

Does corporate deep research work for private companies? Partially. Company Deep Research, Trustpilot reviews, CFPB complaints, Wikipedia, and GLEIF LEI all cover private companies. SEC filing data and Finnhub stock data are limited to publicly listed entities. Financial health and investment risk scores will be less reliable for private companies due to missing financial signals.

How accurate is the governance grade for a company? The governance grade is based on observable signals: presence of 10-K filings, 10-Q filings, LEI registration, and Wikipedia coverage. It measures disclosure compliance and registry presence, not actual governance quality. A company can score grade A while having genuine governance issues not visible in public data, and a private company may score F simply due to no SEC filing obligation.

Can I research non-US companies with Corporate Deep Research MCP? Yes. Finnhub covers global equities. GLEIF LEI is a global standard covering entities in 200+ jurisdictions. Wikipedia has international coverage. Company Deep Research pulls web-wide intelligence. SEC EDGAR is US-centric but covers foreign private issuers. CFPB complaints are US financial institutions only.

How is this different from Bloomberg Terminal or PitchBook? Bloomberg and PitchBook are professional data platforms with structured financial databases, analyst coverage, and proprietary data licensing. This server aggregates from public sources and open registries. It costs $0.04 per query vs. $2,000+/month for Bloomberg. It is designed for AI agent workflows and programmatic access, not for human analysts navigating a UI. Use it as an automated first-pass screen, not as a replacement for deep professional research platforms.

How does corporate deep research handle company name variations? The graph construction uses first-8-to-10-character substring matching to link entities across sources. If a company is known by multiple names (e.g., "Meta" vs "Facebook"), query under the name most likely to appear in EDGAR filings — usually the full legal name. The trace_corporate_identity tool surfaces aliases found across sources.

Is it legal to use this data for investment research? All data sources are publicly available. EDGAR, GLEIF, and CFPB are government-operated public databases. Trustpilot is publicly accessible. Using public data for investment research is standard practice. This server does not provide investment advice — outputs should be treated as intelligence inputs for qualified financial professionals. Consult Apify's legal guide for further context.

Can I schedule automated portfolio monitoring with this server? Yes. Use Apify Schedules to trigger assess_investment_risk on a list of portfolio companies on a daily or weekly cadence. Combine with a webhook to send risk level changes to Slack or your portfolio management system. The structured JSON output is designed for automated processing.

What happens if one of the 7 upstream sources fails or times out? Each source is fetched independently with a 180-second timeout. If an upstream actor fails or times out, that source returns an empty array and the network is built from the remaining sources. The tool call does not fail — it returns scores based on available data. The affected dimension (e.g., reputation risk if reviews fail) will reflect default/neutral values.

Can I use this MCP server in a LangChain or LlamaIndex agent? Yes. Any MCP-compatible client can connect to this server. LangChain and LlamaIndex support MCP tool use. Connect to https://corporate-deep-research-mcp.apify.actor/mcp with your Apify token as a Bearer header. The 8 tools will be available as callable functions in your agent's tool registry.

How do I keep costs predictable for a large research workflow? Set a per-run spending limit in Apify Console. The server returns {"error": true, "message": "Spending limit reached for ..."} when the limit is hit, rather than throwing an unhandled error. Your agent can catch this and pause processing. At $0.04 per call, 100 calls = $4.00 — a predictable unit cost for budgeting.

Help us improve

If you encounter issues, you can help us debug faster by enabling run sharing in your Apify account:

  1. Go to Account Settings > Privacy
  2. Enable Share runs with public Actor creators

This lets us see your run details when something goes wrong, so we can fix issues faster. Your data is only visible to the actor developer, not publicly.

Support

Found a bug or have a feature request? Open an issue in the Issues tab on this actor's page. For custom corporate intelligence solutions or enterprise integrations, reach out through the Apify platform.

How it works

01

Configure

Set your parameters in the Apify Console or pass them via API.

02

Run

Click Start, trigger via API, webhook, or set up a schedule.

03

Get results

Download as JSON, CSV, or Excel. Integrate with 1,000+ apps.

Use cases

Sales Teams

Build targeted lead lists with verified contact data.

Marketing

Research competitors and identify outreach opportunities.

Data Teams

Automate data collection pipelines with scheduled runs.

Developers

Integrate via REST API or use as an MCP tool in AI workflows.

Ready to try Corporate Deep Research MCP?

Start for free on Apify. No credit card required.

Open on Apify Store