Reporting Window Finder

com.mambabuilt由 mambabuilt.com 发布v1.1.3更新于 Nov 7, 2026

Find when a public company reports: fiscal year end, cadence, next date and the outreach window.

发布方自己的服务:Finder Jobs

概览

AI 生成的概览

解析上市公司身份,并查出其财报时间:财年结束、报告频率、下次事件日期以及可自定义的外联窗口。

可以做什么
  • 用域名、股票代码、ISIN、LEI、CIK 或公司名解析公司身份与上市地点
  • 判断公司是否为上市公司,可选择只保留或排除已上市公司
  • 获取财报时间:财年结束、报告频率、下次事件、距事件天数及外联窗口起止
  • 按交易所、国家、行业、流通盘区间、报告频率等条件构建公司清单
  • 按周或按月汇总财报密集度,可按行业、国家或交易所拆分
适用场景
适合销售、市场或研究工作,需要围绕上市公司财报日期安排外联或营销活动时使用。也适合批量筛选上市公司清单或核查上市状态。
运行要求
通过 npx 从 npm 包在本地运行,需要 Node.js。需要 Apify 账号,并设置 APIFY_TOKEN 环境变量。需要访问 Apify 的网络连接,使用按行计费。
安装前请注意
使用会产生费用:解析公司行约每行 0.006 美元,时间行约每行 0.012 美元,季度汇总行约每行 0.05 美元,另有少量每次运行启动费;返回的行(包括无匹配行)都会计费。构建清单和汇总时请显式设置 limit,其默认值为 1000。财报日期为基于美国 SEC 申报历史的预测,仅覆盖美国公司;非美国公司会返回说明原因但仍会计费。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Reporting Window Finder,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

Reporting Window Finder MCP Server

[Public Company Reporting Window Finder MCP server]

MCP server for the Mamba Labs Reporting Window Finder actor on Apify.

Give it a domain, ticker, ISIN, LEI or CIK and it tells you when that public company reports, and when to reach out around it: fiscal year end, reporting cadence, the next reporting date, days to event, and the open and close of an outreach window you define.

Timing rows cover US companies only. Identity, venue and classification resolve worldwide across the publishable universe. Reporting dates come from US SEC filing history and exist for US companies alone. A non US company resolves fully and returns a stated timing_unavailable_reason rather than a guessed date, and is still charged as a timing row because the lookup ran.

Five tools, one per actor mode

ToolTakesReturns
resolve_companyidentifiersidentity and venue, 44 fields
qualify_companyidentifiersa listed status verdict
get_reporting_timingidentifiersfiscal year end, cadence, next event, the outreach window, 75 fields
build_company_universefiltersa company list
get_reporting_seasonfiltersreporting load per week or month

You never pass mode. Each tool sets it, and each tool exposes only the inputs its mode actually uses.

build_company_universe and get_reporting_season build a list from filters and do not accept company identifiers. Set limit explicitly on both: it defaults to 1000 and you are charged per row returned.

Parameters

Every parameter is optional unless a tool says otherwise. The Tools column names the tools that accept it.

ParameterTypeToolsDescription
company_domainstringresolve_company, qualify_company, get_reporting_timingA single bare domain, e.g. stripe.com. The Clay column shape. Used by resolve, qualify and timing.
company_domainsstring[]resolve_company, qualify_company, get_reporting_timingMany domains at once. Used by resolve, qualify and timing.
tickersstring[]resolve_company, qualify_company, get_reporting_timingExchange tickers, e.g. NWLG. Matched against the primary ticker and every venue listing.
isinsstring[]resolve_company, qualify_company, get_reporting_timing12 character ISINs.
leisstring[]resolve_company, qualify_company, get_reporting_timing20 character Legal Entity Identifiers.
ciksstring[]resolve_company, qualify_company, get_reporting_timingSEC Central Index Keys, with or without leading zeros.
company_namesstring[]resolve_company, qualify_company, get_reporting_timingLegal or trading names. Matched on a normalized name. Former names are not available: the alias table carries tickers and ISINs only.
exchange_codesstring[]all fiveISO 10383 MICs. 18 venues are covered.
country_codesstring[]all fiveISO 3166-1 alpha-2, e.g. US, GB, FR.
regionsstring[]all fiveShorthand for a set of venues and countries: us, uk, eu. Widens an explicit exchange or country filter rather than replacing it.
sectorsstring[]all fiveSEC SIC descriptions, e.g. Pharmaceutical Preparations. Populated on roughly 65 percent of the publishable universe.
security_typesstring[]all fiveordinary_shares, depositary_receipt, preferred_shares.
public_float_bandsstring[]all fivemicro, small, mid, large, mega, unknown. Size runs on public float because market capitalization is not populated anywhere in this dataset.
fiscal_year_end_monthsstring[]all fiveIntegers 1 to 12. Fiscal year end is effectively a United States field in this dataset.
exclude_december_fiscal_year_endstring (false, true)all fiveKeep only companies whose fiscal year ends in a month other than December, the accounts whose budget cycle is out of phase with a calendar quarter.
cadencesstring[]all fivequarterly, semiannual, annual, unknown.
operating_companies_onlystring (false, true)all fiveDrop funds, trusts and other non operating entities.
exclude_blank_checksstring (false, true)all fiveDrop pre deal SPACs. Separate from the operating company filter: a blank check shell is flagged as an operating company and passes every ordinary firmographic filter.
foreign_private_issuerstring (any, only, exclude)all fiveFilter on foreign private issuer status.
us_registrant_onlystring (false, true)all fiveKeep only companies carrying an SEC CIK.
min_provenance_confidencestring (any, high)all fiveSet to high to exclude rows whose source terms were never read.
exclude_name_only_matchesstring (false, true)all fiveDrop rows whose identity link rests on a name and country agreeing rather than on an identifier. Use this wherever a wrong identity link matters.
exclude_share_alikestring (false, true)all fiveDrop rows derived from CC BY-SA sources, whose share alike condition may not suit a closed product.
listed_onlystring (false, true)qualify_companyqualify mode. Keep only rows proven to be publicly listed.
suppress_listedstring (false, true)qualify_companyqualify mode. Remove companies proven to be publicly listed, for anyone selling only into private companies. It removes what we can prove is listed; it does not warrant that the remainder is private.
assume_unmatched_is_privatestring (false, true)qualify_companyqualify mode. By default an unmatched company returns is_listed null, because a non match may mean the company is private OR that we do not hold its domain. Set true to opt into reading a non match as private, which sets is_listed false.
event_typesstring[]get_reporting_timing, get_reporting_seasonfull_year_results, half_year_results, quarterly_results, trading_update, annual_report_publication, sustainability_report_publication, agm, proxy_filing, capital_markets_day.
window_lead_daysstringget_reporting_timingHow many days before the event the outreach window opens. Default 70.
window_lag_daysstringget_reporting_timingHow many days before the event the outreach window closes. Default 42. Must be less than the lead.
window_statusesstring[]get_reporting_timingKeep only rows in these window states: open, not_yet, closed_passed, no_event.
max_days_to_eventstringget_reporting_timingDrop rows whose next event is further away than this. A cost control.
min_cadence_confidencestringget_reporting_timing0 to 1. Rows whose cadence confidence falls below this return a null timing block with a stated reason rather than a guess. Quarterly cadence averages 0.94, annual 0.40, semiannual 0.21.
include_constrained_periodstring (true, false)get_reporting_timingEmit the period in which a listed company is constrained in what it can announce, derived from the same window numbers. Useful for campaign and announcement timing.
limitstringbuild_company_universe, get_reporting_seasonMaximum rows for universe and season. Truncation is always reported, never silent.
season_group_bystring (week, month)get_reporting_seasonseason mode. Bucket size.
season_split_bystring (none, sector, country, exchange_code)get_reporting_seasonseason mode. Optional second dimension.
season_fromstringget_reporting_seasonseason mode. ISO date. Defaults to today.
season_tostringget_reporting_seasonseason mode. ISO date. Defaults to 180 days from today.

Install

json
{  "mcpServers": {    "mamba-public-company-reporting-window-finder": {      "command": "npx",      "args": ["-y", "@mambalabsdev/mcp-public-company-reporting-window-finder"],      "env": { "APIFY_TOKEN": "your-apify-token" }    }  }}

Get a token at console.apify.com/account/integrations.

Reading the output

Dates are predicted, not announced. next_event_is_estimate is true for a date derived from filing history. confidence_band sits at 0.80 and 0.50, computed on the weakest link in the chain, so confidence_effective is the minimum of the event and cadence confidences rather than an average.

window_status is the field to filter on. It is open, not_yet, closed_passed or no_event against today. no_event is the state a company lands in when there is no reporting event to build a window from.

Unknown cadence is refused, not guessed. A company whose filing history is too short or irregular returns a null cadence with a reason instead of an invented date.

A row that resolves nothing is still billed. An identifier that matches no public company returns match_method of no_match with every other field null. That is a real answer and the lookup ran to produce it.

Cost

Pay per event on Apify, charged for rows returned rather than rows filtered out.

EventPrice
Company resolved$0.006 per row
Timing row returned$0.012 per row
Reporting season aggregate$0.05 per row
Actor start$0.00005 per run

Volume discounts of 5, 10 and 15 percent apply on the Apify Bronze, Silver and Gold plans. A timing row is never additionally charged as a resolved company.

Part of the Mamba Labs GTM Suite

Browse the full suite on Apify.

License

MIT

来源:README.md,提交 4eca8dc

工具

5

resolve_company

Resolve Company

Resolve a domain, ticker, ISIN, LEI, CIK or company name to a listed company identity. Returns 44 fields per input: legal name, primary ticker, ISIN, LEI, CIK, domain, primary exchange, country, currency, sector, security type, public float band, shares outstanding, and the provenance of each. Every input returns exactly one row, including the ones that match nothing, which come back with match_method set to no_match and every other field null. Read matched_on to see which identifier produced the row. Use this when you hold identifiers and need the listed identity behind them; use qualify_company for a yes or no on listed status, get_reporting_timing for dates, and build_company_universe when you hold filters rather than identifiers. The filter inputs (exchange_codes, country_codes, regions, sectors, and the rest) narrow which matched rows come back. Charged per company row returned, including a no_match row, because the lookup ran either way. Requires an APIFY_TOKEN and consumes Apify credits. Read only.

输入参数ciksleisisinsregionssectorstickerscadencescompany_namescountry_codescompany_domainexchange_codessecurity_types另有 11 个

qualify_company

Qualify Company

Answer whether a company is publicly listed. Takes the same identifiers as resolve_company and returns a listed status verdict per input. Set listed_only to keep only the companies proven to be listed, or suppress_listed to remove them, which is what you want when selling only into private companies. By default an unmatched company returns is_listed null rather than false, because a non match may mean the company is private OR that the dataset does not hold its domain; set assume_unmatched_is_private to true to opt into reading a non match as private. Use this to split a prospect list into listed and private companies before outreach; use resolve_company when you need the full identity fields. Identify companies with company_domain, company_domains, tickers, isins, leis, ciks, or company_names; every other input is an optional filter shared with resolve_company (exchange, country, region, sector, security type, float band, fiscal year end, cadence, and data quality switches). Charged per company row returned. Requires an APIFY_TOKEN and consumes Apify credits. Read only.

输入参数ciksleisisinsregionssectorstickerscadenceslisted_onlycompany_namescountry_codescompany_domainexchange_codes另有 14 个

get_reporting_timing

Get Reporting Timing

Find when a public company next reports, and when to reach out around it. Returns 75 fields per input: fiscal year end, derived reporting cadence and its confidence, the next reporting event with its type, period and date, days to event, and the open and close of an outreach window you define with window_lead_days and window_lag_days, which default to 70 and 42. window_status is one of open, not_yet, closed_passed or no_event and is the field to filter on. Dates are PREDICTED from filing history, not announced: read next_event_is_estimate and confidence_band, whose thresholds sit at 0.80 and 0.50. TIMING ROWS COVER US COMPANIES ONLY. A non US company resolves fully for identity and returns a stated timing_unavailable_reason rather than a guessed date, and is still charged as a timing row because the work ran. Charged per timing row returned, never additionally as a resolved company. Requires an APIFY_TOKEN and consumes Apify credits. Read only.

输入参数ciksleisisinsregionssectorstickerscadencesevent_typescompany_namescountry_codescompany_domainexchange_codes另有 18 个

build_company_universe

Build Company Universe

Build a list of listed companies from filters rather than from identifiers you already hold. Filter by exchange, country, region, sector, security type, public float band, fiscal year end month, reporting cadence, operating status and foreign private issuer status. Returns 44 fields per company, the same shape resolve_company returns. At least one filter is required, so a bare call cannot pull the whole universe. This tool does NOT accept company identifiers: use resolve_company, qualify_company or get_reporting_timing for specific companies. SET limit EXPLICITLY. It defaults to 1000 and you are charged per company row returned, so an unbounded call is an expensive call. Truncation is always reported, never silent. Requires an APIFY_TOKEN and consumes Apify credits. Read only.

输入参数limitregionssectorscadencescountry_codesexchange_codessecurity_typespublic_float_bandsus_registrant_onlyexclude_share_alikeexclude_blank_checksfiscal_year_end_months另有 5 个

get_reporting_season

Get Reporting Season

Show how reporting load is distributed over time, so you can find the busy weeks and the quiet ones. Returns aggregate rows per bucket, not per company: period start and end, event count, company count, estimated share and mean confidence. Bucket by week or month with season_group_by, and optionally split by sector, country or exchange with season_split_by. The window defaults to today through 180 days out; set season_from and season_to for another. At least one filter is required and company identifiers are not accepted. Use this to plan campaign timing across a market, not to time one account; for a single company use get_reporting_timing. Narrow the population with the same filters build_company_universe takes (exchange_codes, country_codes, regions, sectors, public_float_bands, cadences). Charged per aggregate row returned, which is far fewer rows than the companies behind them. Requires an APIFY_TOKEN and consumes Apify credits. Read only.

输入参数limitregionssectorscadencesseason_toevent_typesseason_fromcountry_codesexchange_codessecurity_typesseason_group_byseason_split_by另有 10 个

版本历史

5
  1. v1.1.3最新Nov 5, 2026
  2. v1.1.2Oct 16, 2026
  3. v1.1.1Oct 16, 2026
  4. v1.1.0Oct 6, 2026
  5. v1.0.0Sep 16, 2026

评分

已满足适用检查项的 90%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分
  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具必需15 分
  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分

其他 Finder 集成