Skip to main content
Glama
mcp-funding-investor-record

mcp-funding-investor-record

Funding Investor Record MCP Server

Glama score MCP Registry npm version npm downloads license mcpservers.org

An MCP server that returns a company funding record from SEC Form D, Companies House and press, each labeled with the source it came from. It wraps the Mamba Labs Funding Record from SEC and Companies House actor on Apify and returns a Clay-ready flat JSON row to any MCP client.

What's Inside

Related MCP server: mcp-company-contact-details-extractor

What it does

Give it a company name and domain and it reads primary sources and returns a funding record: SEC EDGAR Form D amounts, UK Companies House registration details, and press coverage of funding rounds. One flat row per company.

Every number travels with a source_of_record saying whether it came from a legal filing or from a press release, because those are not the same kind of fact and merging them is the defect this tool exists to prevent. Only an exact entity match, after corporate suffixes are stripped, populates an amount. A near match such as a differently named subsidiary goes to separate related_entity columns as a named lead and can never be summed into a total. This is not Crunchbase and not a resold database, so it returns less than a database would and what it returns has a filing behind it.

All of the lookup runs on Apify. This package is a thin client that calls the actor and hands back the result unchanged.

Quick start

You need Node.js 18 or newer and an Apify account with an API token.

Add this to your Claude Desktop config:

{
  "mcpServers": {
    "mamba-funding-investor-record": {
      "command": "npx",
      "args": ["-y", "@mambalabsdev/mcp-funding-investor-record"],
      "env": {
        "APIFY_TOKEN": "your-apify-token"
      }
    }
  }
}

Get your token at https://console.apify.com/account/integrations, paste it in, and restart Claude Desktop. The get_company_funding_record tool will be available.

Prerequisites

  • Node.js 18 or newer

  • An Apify account with an API token

  • Optional: your own Companies House REST API key, free at developer.company-information.service.gov.uk, if you want the UK columns populated

Example prompts

  • "Get the funding record for Anthropic at anthropic.com."

  • "Has Notion filed a Form D in the last 24 months? Regulatory sources only."

  • "Look up funding for this UK company and flag anything above 10 million dollars."

  • "Show me press reported funding for figma.com and keep it separate from any filing."

Inputs

  • company_domain (optional): bare company domain, for example notion.com. Used to derive a company name when none is given, and carried on the row as the join key.

  • company_name (optional but strongly recommended): every source here is searched by name rather than by domain, and the name is what the entity gate compares a filing against. A wrong or missing name is the largest source of wrong rows.

  • sources (optional): which sources to query. One of all, regulatory, sec_only, uk_only or press_only. Regulatory sources are filings and are authoritative; press is the most recent and least verified. Choose regulatory when a number has to be defensible and all when recency matters more.

  • lookbackMonths (optional): how far back to consider a filing. One of 12, 24, 36, 60 or 120, with 36 months the default. A Form D from six years ago is a real filing and usually not a current signal, and this is where you say which you mean.

  • minAmountUsd (optional): one of none, 1000000, 5000000, 10000000 or 50000000. It sets amount_meets_threshold on the row so you can filter to material raises without writing the comparison yourself. It never drops a row and never changes the amount returned.

  • companiesHouseApiKey (optional): your own Companies House REST API key, free at developer.company-information.service.gov.uk. Without one the UK columns report skipped rather than guessing, and the SEC and press sources still run.

  • skipCache (optional): when false (the default) a successful lookup is cached for seven days and reused. Set true to force a fresh fetch.

  • max_charge_usd (optional): a cost cap in USD for this run. The actor stops before an item that could take its charges past this amount. Omit it to rely on the maximum cost per run set in Apify.

Output

The tool returns the actor's flat JSON row for the company, with 32 snake_case fields and no nested objects. source_of_record says where a number came from, form_d_entity_match and uk_entity_match record how strict the entity match was, and filings_rejected counts what the entity gate turned away. See the Apify Store page for the full output schema.

Example output

{
  "degraded": false,
  "degradation_reason": null,
  "company_domain": "anthropic.com",
  "company_name": "Anthropic",
  "source_of_record": "multiple",
  "form_d_filed": true,
  "form_d_date": "2026-06-01",
  "form_d_entity_name": "WU Anthropic LP",
  "form_d_entity_match": "exact",
  "form_d_accession": "0002109576-26-000001",
  "filings_rejected": 56,
  "uk_company_number": "14604577",
  "uk_company_name": "ANTHROPIC LIMITED",
  "uk_company_status": "active",
  "uk_entity_match": "exact",
  "uk_incorporation_date": "2023-01-19",
  "press_amount": 65000000000,
  "press_currency": "$",
  "press_url": "https://techcrunch.com/2026/05/28/anthropic-raises-65-billion-nears-1t-valuation-ahead-of-ipo/",
  "related_entity_name": null,
  "amount_meets_threshold": null,
  "sources_queried": "sec_form_d, companies_house, press",
  "coverage": 0.9,
  "fetch_status": "ok",
  "run_date": "2026-08-23T09:56:16.906Z"
}

Features

  • SEC Form D filings, returned with the accession number

  • UK Companies House registration details, with your own key

  • Press coverage labeled as press and never merged with a filing

  • Primary sources only, not a resold database

  • Entity identity gate, so a near name match is rejected and recorded

  • Rejection accounting in filings_rejected and related_entity_note

  • 32 flat snake_case fields, one row per company

Pricing

Price per event on the Apify FREE plan, from the live pricing record; paid Apify plans pay less per event.

Event

Price (USD)

Actor Start (apify-actor-start)

0.00005

Company checked (company-checked)

0.0045

Filing found (filing-found)

0.006

Press signal found (press-signal-found)

0.004

Full actor documentation

This server is a thin client and holds no lookup logic. For the complete input and output reference, pricing, and run history, see the Apify Store page:

https://apify.com/mambalabs/funding-investor-record


Mamba Labs GTM Suite

This server is one of the Mamba Labs GTM Suite MCP servers. Every actor in the suite takes a domain or a company and returns one flat row, so they stack in the same Clay table without reshaping anything. The actor behind this server is the Funding Record from SEC and Companies House, immutable Apify actor ID OFS4Mt1gyYNtGfUbE.

Built by Mamba Labs | npm | Apify Store

License

MIT

Built by Mamba Labs. https://apify.com/mambalabs

Available Tools

1 tool
get_company_funding_recordGet Company Funding RecordA
Idempotent

Return a company's funding record from PRIMARY sources: SEC EDGAR Form D filings, UK Companies House registrations and press coverage. Returns one flat Clay ready row in which every number carries a source_of_record saying whether it came from a legal filing or a press release, because those are not the same kind of fact and merging them is the defect this tool exists to prevent. Only an EXACT entity match after corporate suffixes are stripped populates an amount; a near match such as a differently named subsidiary goes to separate related_entity columns as a named lead and can never be summed into a total. Not Crunchbase and not a resold database. Read only; requires an APIFY_TOKEN and consumes Apify credits per call.

NameRequiredDescriptionDefault
sourcesNoWhich sources to query. Regulatory sources are filings and are authoritative; press is the most recent and least verified. Choose "regulatory" when a number has to be defensible and "all" when recency matters more.
skipCacheNoWhen false (default) a successful lookup is cached for seven days and reused, which costs you nothing on a repeated run. Set true to force a fresh fetch.
company_nameNoStrongly recommended here. Every source in this actor is searched by NAME, not by domain, and the name is what the entity gate compares a filing against. A wrong or missing name is the single largest source of wrong rows.
minAmountUsdNoSets amount_meets_threshold on the row so you can filter to material raises without writing the comparison yourself. It never drops a row and never changes the amount returned.
company_domainNoBare company domain, for example notion.com. Used to derive a company name when none is given, and carried on the row as the join key.
lookbackMonthsNoHow far back to consider a filing. 36 months by default. A Form D from six years ago is a real filing and usually not a current signal, and this is where you say which you mean.
max_charge_usdNoOptional. The run stops before any charge that would take this run past this amount, delivers every company row already charged, and processes no more companies. Leave empty to rely only on the maximum cost per run set in Apify, which the actor also honors.
companiesHouseApiKeyNoYOUR OWN Companies House REST API key, free at developer.company-information.service.gov.uk. OPTIONAL: without one the UK columns report skipped rather than guessing, and the SEC and press sources still run. A key passed here travels in the tool call and stays in the chat transcript, so prefer setting COMPANIES_HOUSE_API_KEY in this server's environment: when this argument is omitted the server sends that variable instead.

TDQS

A4.6/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Adds context the annotations cannot: an APIFY_TOKEN is required, each call consumes Apify credits, and the entity gate can silently prevent an amount from populating. Notably, the tool is described as 'Read only' yet readOnlyHint=false — but the same sentence discloses why (credit consumption per call), so the agent understands the side effect rather than being misled.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loads the core return shape, then qualifies it with the source_of_record and exact-match rules — good ordering. Some sentences carry rhetorical flourish ('merging them is the defect this tool exists to prevent') and heavy ALL-CAPS emphasis that could be trimmed without losing information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description takes on return-value duty and does it: one flat Clay-ready row, per-number source_of_record, amount_meets_threshold, and separate related_entity columns for non-exact matches. Auth requirements and credit cost are also covered, leaving nothing essential unexplained for an 8-parameter open-world tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is already 100%, so the baseline is 3, but the description adds conceptual weight: it explains why company_name is the decisive input (the name, not the domain, is what the entity gate compares) and that a near-match never gets summed into a total. That framing makes the parameters' consequences clearer than the schema alone.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Opening sentence names a specific verb+resource (return a company's funding record) and enumerates the exact sources (SEC EDGAR Form D, UK Companies House, press). It goes further by stating the defining constraint — every number carries a source_of_record — and what the tool is not ('Not Crunchbase and not a resold database'), which makes it unmistakable.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives usable selection conditions: exact-match vs near-match routing ('a near match ... goes to separate related_entity columns as a named lead'), and the source trade-off is spelled out both here and in the schema (regulatory for defensible numbers, all for recency). It lacks an explicit 'do not use when you just need X' statement, but with no siblings to disambiguate against, the guidance is clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 1 tool updatev1.1.1
    • Changedget_company_funding_record8 fields changed
      • removedInput schema / additionalProperties
        Removed value: -false
      • changedInput schema / properties / companiesHouseApiKey / description
        Previous value: -"YOUR OWN Companies House REST API key, free at developer.company-information.service.gov.uk. OPTIONAL: without one the UK columns report skipped rather than guessing, and the SEC and press sources still run. Marked secret, so the value never renders on this page."New value: +"YOUR OWN Companies House REST API key, free at developer.company-information.service.gov.uk. OPTIONAL: without one the UK columns report skipped rather than guessing, and the SEC and press sources still run. A key passed here travels in the tool call and stays in the chat transcript, so prefer setting COMPANIES_HOUSE_API_KEY in this server's environment: when this argument is omitted the server sends that variable instead."
      • changedInput schema / properties / lookbackMonths / description
        Previous value: -"How far back to consider a filing. 36 months by default. A Form D from six years ago is a real filing and usually not a current signal, and this is where you say which you mean. Sent as a string for Clay compatibility."New value: +"How far back to consider a filing. 36 months by default. A Form D from six years ago is a real filing and usually not a current signal, and this is where you say which you mean."
      • addedInput schema / properties / max_charge_usd
        Added value: +{
        +  "description": "Optional. The run stops before any charge that would take this run past this amount, delivers every company row already charged, and processes no more companies. Leave empty to rely only on the maximum cost per run set in Apify, which the actor also honors.",
        +  "minimum": 0,
        +  "type": "number"
        +}
      • changedInput schema / properties / minAmountUsd / description
        Previous value: -"Sets amount_meets_threshold on the row so you can filter to material raises without writing the comparison yourself. It never drops a row and never changes the amount returned. Sent as a string for Clay compatibility."New value: +"Sets amount_meets_threshold on the row so you can filter to material raises without writing the comparison yourself. It never drops a row and never changes the amount returned."
      • changedInput schema / properties / minAmountUsd / enum
        Previous value: -[
        -  "none",
        -  "1000000",
        -  "5000000",
        -  "10000000",
        -  "50000000"
        -]New value: +[
        +  "1000000",
        +  "5000000",
        +  "10000000",
        +  "50000000",
        +  "none"
        +]
      • changedInput schema / properties / skipCache / description
        Previous value: -"When \"false\" (default) a successful lookup is cached for seven days and reused, which costs you nothing on a repeated run. Set \"true\" to force a fresh fetch. Sent as a string for Clay compatibility."New value: +"When false (default) a successful lookup is cached for seven days and reused, which costs you nothing on a repeated run. Set true to force a fresh fetch."
      • changedInput schema / properties / sources / description
        Previous value: -"Which sources to query. Regulatory sources are filings and are authoritative; press is the most recent and least verified. Choose \"regulatory\" when a number has to be defensible and \"all\" when recency matters more. Sent as a string for Clay compatibility."New value: +"Which sources to query. Regulatory sources are filings and are authoritative; press is the most recent and least verified. Choose \"regulatory\" when a number has to be defensible and \"all\" when recency matters more."
  2. 1 tool updatev1.0.0
    • First observedget_company_funding_record

TDQS

A4.5/5.0

Scored across 1 tool

Disambiguation5/5

With only one tool there is no possibility of misselection; the tool's purpose (returning a sourced company funding record) is stated unambiguously in its description.

Naming Consistency5/5

The single name get_company_funding_record follows a clear verb_noun snake_case pattern that would generalize well if more tools were added.

Tool Count3/5

One tool is thin for a server, but the scope is deliberately narrow (a single read-only lookup with a defined output schema), so a minimal surface is defensible rather than a mismatch.

Completeness4/5

For a read-only funding lookup the single operation covers the stated lifecycle end-to-end, including source attribution and exact-match rules; no create/update is expected since the domain is external public records.

Maintenance

ActivityActive
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    A
    maintenance
    MCP server for the Mamba Labs People Finder & Email Verifier actor on Apify. Give it a company domain, name or LinkedIn URL and it returns the people at that company who match your role, seniority and department filters, each as a structured contact record with an optional verified business email.
    1
    65 npm
    MIT