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.

io.github.Zhao73/alphacouncil-agent

NPM · ALPHACOUNCIL-AGENT · SCANNED AUG 3

Simulated investment committee: 27 investor lenses read the same filings, debate, and a PM decides.

Available components

60 Trust /100
Trust breakdown (6 categories)

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score →

Supply Chain Security100
  • No malware found by supply-chain analysis.Pass
  • No known CVEs affecting this package version or its production dependencies.Pass
  • No install/post-install scripts declared.Pass
  • No production dependencies, so there is no dependency health to assess. View diagnostics → Pass
Provenance & Transparency45
Schema Quality & AI Usability35
  • AI-judged instruction clarity (fair).Partial
  • Context-footprint check failed: tool/resource definitions use about 5907 tokens (~190/item across 31 items; 31 tools + 0 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 Management0
  • Stability not yet verified: not enough scan history yet (needs a 30-day window).Unverified
Tool Coverage91
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 72% of tool parameters carry a description.Partial
Capabilities100
  • Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass

Unverified: 1 category

A category scored 0 because we could not verify it: a data source with nothing on this package, evidence we could not reach, or a check we could not run. We only credit what we can confirm.

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.

npm · alphacouncil-agent

# add to Claude Code
claude mcp add zhao73-alphacouncil-agent -- npx -y alphacouncil-agent
# add to Codex CLI
codex mcp add zhao73-alphacouncil-agent -- npx -y alphacouncil-agent
// opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "zhao73-alphacouncil-agent": {
      "type": "local",
      "command": [
        "npx",
        "-y",
        "alphacouncil-agent"
      ],
      "enabled": true
    }
  }
}
# add to OpenClaw
openclaw mcp add zhao73-alphacouncil-agent --command npx --arg -y --arg alphacouncil-agent
# ~/.hermes/config.yaml
mcp_servers:
  zhao73-alphacouncil-agent:
    command: "npx"
    args: ["-y", "alphacouncil-agent"]
// mcp.json
{
  "mcpServers": {
    "zhao73-alphacouncil-agent": {
      "command": "npx",
      "args": [
        "-y",
        "alphacouncil-agent"
      ]
    }
  }
}
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.

  • 2 Aug 26 +15
    • Malware scan: unverified → pass security
  • 31 Jul 26 +16
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
  • 30 Jul 26 29

    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 · Analysed npm/[email protected]

Provenance none

Ecosystem: npm · Outcome: none

Dependencies 0 packages

0 packages in the resolved dependency tree.

MCP tools — 31 exposed · ~5,877 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
analyze_symbol ~668

Research an operating company, ETF, mutual fund or market index and write a manager-style decision summary. The instrument is classified before evidence routing: funds use holdings look-through, indices use aggregate methodology, and Company Facts screens apply only to operating companies. Set council_mode=quick for the bounded news-inclusive quick_v1 path; the default remains the full council.

NameTypeReqDescription
as_ofstringAnalysis date YYYY-MM-DD. Defaults to today.
council_modestringfull runs the eight-role evidence fan-out and three-round cross-exam. quick runs the fixed news-inclusive four-role preset, up to four masters, one parallel bull/bear round, a short PM, and a hard gl…
council_pacestringFull-council depth/time tier. fast = 15 minutes, normal = 30, slow = 60. The tier sets the total budget AND every per-stage cap together: slow gives each evidence seat 12 minutes instead of 6 and eac…
dry_runbooleanDefault false. Set true only for planning/self-tests without launching Codex subagents.
languagestringReader-facing language for subagents and final report, e.g. auto, zh-CN, en-US, ja-JP. Auto infers from prompt.
max_concurrencynumber
output_modestringFinal synthesis target shape.
promptstringUser objective or extra instructions.
seat_weightsobjectOverride the declared weight of any seat, e.g. {"master_buffett": 2, "master_soros": 0}. Weights are an editable prior, not an optimum: a return backtest of LLM judgment would be invalidated by look-…
selection_receiptstringyesOne-run receipt returned by confirm_master_selection. Required for every council run and consumed exactly once.
symbolstringyesExchange ticker. US, HK, JP, KR, CN and TW symbols all work, e.g. AAPL, 0700.HK, 7203.T, 005930.KS, 600519.SS.
synthesisbooleanRun bull, bear, and portfolio-manager synthesis after evidence collection.
synthesis_timeout_msnumber
tasksarray
timeout_msnumber
total_timeout_msnumberHard queue-to-persistence wall-clock budget. Cannot exceed the selected council_pace's total (fast 900000, normal 1800000, slow 3600000) or ten minutes for quick. Callers may lower the applicable cei…
visibility_requiredbooleanWhen true, headless MCP execution is rejected; use host-visible agents/threads and record their outputs.
wait_for_completionbooleanDefault false for real runs: return a run_id immediately and poll read_run. Set true only when the MCP client can remain connected for the entire council. Dry runs remain synchronous when this field…

No output schema declared.

No examples provided.

begin_council_selection ~351

MANDATORY first step for every council run. Creates a short-lived selection session and returns every enabled master with a stable number, identity, method, best-for description and maturity. It does not create a research run, fetch data or launch workers. Show this catalog to the user even when their request already names masters; named masters may be preselected but must still be submitted for this run.

NameTypeReqDescription
council_modestringfull runs the eight-role evidence fan-out and three-round cross-exam. quick runs the fixed news-inclusive four-role preset, up to four masters, one parallel bull/bear round, a short PM, and a hard gl…
council_pacestringPrefill only, when the request already named a speed such as fast or slow. It highlights that tier in the returned pace_options and never confirms one. Full only.
hoststringCalling host, e.g. codex, claude-code, opencode or grok-build.
languagestringReader-facing language for subagents and final report, e.g. auto, zh-CN, en-US, ja-JP. Auto infers from prompt.
preselected_master_idsarrayOptional stable IDs inferred from masters explicitly named in the request. They are highlighted only; the user must still submit this run's selection.
promptstringUser objective or extra instructions.
symbolstringyesExchange ticker. US, HK, JP, KR, CN and TW symbols all work, e.g. AAPL, 0700.HK, 7203.T, 005930.KS, 600519.SS.

No output schema declared.

No examples provided.

collect_evidence ~571

Launch Codex subagents and save shared JSON evidence packets. Use dry_run=true only for planning/self-tests.

NameTypeReqDescription
as_ofstringAnalysis date YYYY-MM-DD. Defaults to today.
council_modestringfull runs the eight-role evidence fan-out and three-round cross-exam. quick runs the fixed news-inclusive four-role preset, up to four masters, one parallel bull/bear round, a short PM, and a hard gl…
council_pacestringFull-council depth/time tier. fast = 15 minutes, normal = 30, slow = 60. The tier sets the total budget AND every per-stage cap together: slow gives each evidence seat 12 minutes instead of 6 and eac…
dry_runbooleanDefault false. Set true only for planning/self-tests without launching Codex subagents.
languagestringReader-facing language for subagents and final report, e.g. auto, zh-CN, en-US, ja-JP. Auto infers from prompt.
max_concurrencynumber
output_modestringFinal synthesis target shape.
promptstringUser objective or extra instructions.
seat_weightsobjectOverride the declared weight of any seat, e.g. {"master_buffett": 2, "master_soros": 0}. Weights are an editable prior, not an optimum: a return backtest of LLM judgment would be invalidated by look-…
selection_receiptstringyesOne-run receipt returned by confirm_master_selection. Required for every council run and consumed exactly once.
symbolstringyesExchange ticker. US, HK, JP, KR, CN and TW symbols all work, e.g. AAPL, 0700.HK, 7203.T, 005930.KS, 600519.SS.
synthesisbooleanRun bull, bear, and portfolio-manager synthesis after evidence collection.
synthesis_timeout_msnumber
tasksarray
timeout_msnumber
total_timeout_msnumberHard queue-to-persistence wall-clock budget. Cannot exceed the selected council_pace's total (fast 900000, normal 1800000, slow 3600000) or ten minutes for quick. Callers may lower the applicable cei…
visibility_requiredbooleanWhen true, headless MCP execution is rejected; use host-visible agents/threads and record their outputs.

No output schema declared.

No examples provided.

compare_summary_modes ~67

Compare chat, PDF, presentation, document, and specialist plugin modes for final AlphaCouncil Agent synthesis.

NameTypeReqDescription
languagestringReader-facing language for subagents and final report, e.g. auto, zh-CN, en-US, ja-JP. Auto infers from prompt.

No output schema declared.

No examples provided.

compose_research_brief ~270

Classify the instrument and assemble hard facts BEFORE analysts search. Operating companies may receive SEC Company Facts or local-market financials; ETFs and funds receive a holdings look-through contract; indices receive an aggregate-index contract. The result also carries quote, applicable filer profile, options/macro/industry context, explicit not-applicable routes, typed facts, and a prompt block. A searched number never silently overwrites a filed one. Pass the returned `grounding` object to plan_visible_run so every analyst prompt carries it.

NameTypeReqDescription
as_ofstringYYYY-MM-DD; only filings filed by this date are used.
cikstringSEC CIK; enables the filer profile and the mechanical screen.
industrystringIndustry query; adds the value-chain participants including non-US names.
languagestringReader-facing language for subagents and final report, e.g. auto, zh-CN, en-US, ja-JP. Auto infers from prompt.
macroboolean
symbolstringExchange ticker. US, HK, JP, KR, CN and TW symbols all work, e.g. AAPL, 0700.HK, 7203.T, 005930.KS, 600519.SS.

No output schema declared.

No examples provided.

confirm_master_selection ~219

Confirm the user's one-run master choice after the catalog was displayed. Choose exactly one input form: a non-empty array of stable IDs, select_all=true, or a text selection such as '1,4-6', 'master_buffett', or 'all'. Returns a one-time selection_receipt required by every council execution tool.

NameTypeReqDescription
catalog_hashstringyesThe catalog_hash returned by begin_council_selection.
council_pacestringThe depth tier the user picked from the pace_options this selection returned. Full only; omit to accept the default (normal, ~20 min expected, 30 min ceiling). Binds into the receipt, so an execution…
display_ackbooleanyesMust be true after the host displayed the catalog to the user.
select_allboolean
selected_master_idsarray
selectionstringText fallback: stable numbers/ranges/IDs, or all.
selection_idstringyes

No output schema declared.

No examples provided.

council_diagnostics ~117

Measure descriptive seat agreement, unique cited-source contribution and repeated-input behavioural differentiation across saved runs. This tool never treats seat count or agreement as independent evidence: error N_eff remains null unless the separate preregistered signed resolved-outcome protocol is satisfied.

NameTypeReqDescription
minimum_casesintegerMinimum distinct hash-identical cases, each with at least two repetitions, before a behavioural-differentiation verdict is emitted.
run_idsarrayyesSaved run IDs. Repeated-input claims require hash-identical facts, selection and pack policies.

No output schema declared.

No examples provided.

get_macro_snapshot ~113

Keyless DELAYED top-down macro context in one call: rate curve, dollar and credit, commodities, risk appetite and breadth, and cross-market indices, plus derived pairs (10Y-3M spread, copper/gold, HY/IG, equal-weight vs cap-weight). Use it to place a single name inside its macro environment. These are observations, not a regime call, and unavailable series are data gaps for open_questions.

NameTypeReqDescription
blocksarraySubset of macro blocks. Defaults to all.

No output schema declared.

No examples provided.

get_market_narrative ~230

What story the market is currently telling itself, read from keyless news feeds (Federal Reserve, SEC, WSJ, CNBC, Yahoo) and cross-checked against the macro tape. Returns ranked themes with their share of coverage, dated and linked sample headlines, and for each theme the actual market series that would corroborate it. Headline counts measure ATTENTION, never truth: where a theme leads coverage and its series has not moved, that divergence is the finding. Every item must carry a timestamp inside the window or it is reported as excluded. Themes come from a fixed lexicon, so a genuinely new narrative lands in unclassified_headlines rather than being discovered, and the output says so.

NameTypeReqDescription
as_ofstringISO date treated as now. Defaults to today.
daysnumberRecency window in days. Defaults to 7.
extra_queriesarrayUp to 4 extra Google News queries to fold in, e.g. a sector or a country.
topnumberHow many themes to return. Defaults to 6.

No output schema declared.

No examples provided.

get_news ~200

Dated headlines for one symbol, one search query, or one company's SEC filings, from keyless feeds (Yahoo Finance RSS, Google News RSS, EDGAR Atom). Every item must carry a parsable timestamp inside the window; undated and out-of-window items are counted and sampled under excluded_outside_window rather than being shown as recent. Filings are the one source here that cannot be spun, so prefer them for anything material.

NameTypeReqDescription
as_ofstringISO date treated as now. Defaults to today.
cikstringSEC CIK for the filings feed.
daysnumberRecency window in days. Defaults to 14.
formsstringFiling type for the CIK feed. Defaults to 8-K.
querystringFree-text Google News query, e.g. 'HBM supply Samsung'.
symbolstringTicker for the Yahoo per-name feed.

No output schema declared.

No examples provided.

get_options_chain ~175

Keyless DELAYED options chain digest from CBOE for one US-listed symbol: ATM implied-volatility term structure, 25-delta skew, put/call ratios on open interest and volume, the strikes holding the most open interest, and the ATM bid-ask spread as a share of mid. Contracts reporting iv = 0 (expired or deep in the money) are excluded rather than read as zero volatility. This is a snapshot with no history, so IV percentile or rank CANNOT be computed from it and must stay an open question. Non-US listings are generally absent and are reported as unavailable, never guessed.

NameTypeReqDescription
as_ofstringISO date used to compute days-to-expiry. Defaults to today.
symbolstringyesUS-listed underlying, e.g. MU or BRK.B.

No output schema declared.

No examples provided.

get_quote ~168

Keyless DELAYED market data (Yahoo/Stooq, ~15m or EOD) for indices, index futures (incl. night session), FX, rates, vol, commodities, and stocks. Accepts plain names ('KOSPI','纳指期货','VIX','美元指数','10年美债','黄金') or raw tickers (^KS11, ES=F, 7203.T). Use for real index/futures/macro numbers; on error treat as a data gap (open_questions). Not real-time, not investment advice.

NameTypeReqDescription
symbolstringSingle name/ticker (alternative to symbols[]).
symbolsarrayNames or tickers, e.g. ['KOSPI','ES=F','VIX','美元指数'].

No output schema declared.

No examples provided.

get_social_pulse ~227

Keyless retail and technical-community discussion for a name or theme, from Reddit (searched inside the equity subreddits, not site-wide), Hacker News, and any Bluesky handles supplied. IMPORTANT: X / Twitter has NO free discovery channel -- Nitter search is dead, the X API bills per post and xAI bills per call -- so this does NOT cover professional FinTwit, and Reddit is not a substitute for it. Mention volume measures attention, never correctness. Nothing here may enter a conclusion alone; it is a lead to be confirmed against a filing or recorded in open_questions.

NameTypeReqDescription
as_ofstringISO date treated as now.
daysnumberRecency window in days. Defaults to 7.
handlesarrayBluesky handles to read. Search needs auth; reading a named account does not.
querystringCompany name or theme to search for.
subredditsarrayOverride the default equity subreddits.
symbolstringUsed as the query when query is absent.

No output schema declared.

No examples provided.

industry_brief ~126

Start from an industry rather than a ticker. Returns the participant list by position in the value chain -- INCLUDING the non-US names a SEC-only pipeline would silently drop, such as Korean and Japanese makers -- plus who actually drives demand, the questions a run must answer, how the industry behaves through a cycle, and which participants this pipeline can screen mechanically versus which need their own regulator's feed. Returns a frame, never a verdict.

NameTypeReqDescription
industrystringyesFree text; ids and aliases in both languages, e.g. memory, 存储, HBM, DRAM.

No output schema declared.

No examples provided.

industry_coverage ~97

Ask what is actually known about an industry BEFORE researching it. Returns whether a curated value-chain map exists, whether SEC's SIC classification covers it, or neither -- with guidance for each case. SIC reaches every industry with a US filer; a curated map additionally carries chain position, non-US participants and demand drivers. Use this so a report never presents an uncurated participant list as if it were complete.

NameTypeReqDescription
industrystringyes

No output schema declared.

No examples provided.

industry_peers ~113

Find US filers related to a company using SEC's own SIC classification -- no curation and no model. Covers every industry with a US filer, including ones no curated map reaches. It gives no value-chain position and no non-US participants: for those prefer industry_brief where a map exists. Peer matching is by company name and is a starting universe, not an index membership list.

NameTypeReqDescription
cikstringyesAnchor company CIK. Resolve one with list_us_universe.
limitnumber

No output schema declared.

No examples provided.

list_council_options ~79

Browse the current analysts, presets, master catalog, rosters and verifiers without opening a selection session. This is informational only and cannot authorize a run. Every council run must still call begin_council_selection, display that frozen catalog, and confirm_master_selection.

NameTypeReqDescription
languagestringLanguage for the labels. Defaults to English.

No output schema declared.

No examples provided.

list_industries ~45

The industries that have a hand-maintained map. Deliberately a short list: an unmapped industry should be handled by research rather than by inventing a participant list.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

list_us_universe ~77

The full SEC list of US listed companies (~10k) as {cik, ticker, title}. Keyless. Use it to resolve a ticker to a CIK, or as the starting universe for a screen.

NameTypeReqDescription
containsstringCase-insensitive filter on ticker or company name.
limitnumber

No output schema declared.

No examples provided.

market_coverage ~88

Ask up front what this pipeline can and cannot fetch for a set of symbols, before building a report on them. Returns per-symbol whether structured financials are available, summary-only, or absent, and which environment variable would unlock a market. Names without a feed are still researchable from documents -- but every figure taken that way has to be labelled as such.

NameTypeReqDescription
symbolsarrayyes

No output schema declared.

No examples provided.

market_financials ~189

Structured financials for ANY market, degrading in a stated order: keyless regulator feed (SEC for US, TWSE for Taiwan), then a feed needing a free key (DART for Korea, EDINET for Japan) reported as not-configured rather than pretended away, then quotes plus search which always work. Never returns an empty result silently -- it says which feed is missing, why, and what to use instead.

NameTypeReqDescription
corp_codestringKorea only: DART's 8-digit corp_code, which is not the ticker. Samsung Electronics is 00126380, SK hynix 00164779.
symbolstringyesExchange symbol, e.g. 2408.TW, 000660.KS, 285A.T, 0700.HK.
yearnumberKorea only: fiscal year. Defaults to last year.

No output schema declared.

No examples provided.

plan_visible_run ~454

Create the visible-host-thread AlphaCouncil run after a confirmed master selection. Requires a one-time selection_receipt. Does NOT execute. Run every returned evidence_agent, then every returned master_agent. Physical v3 master agents explain a frozen deterministic stance and may not change it. Record all required bull/bear rounds before the portfolio_manager decision; PM rejects any returned master_agent that was not recorded.

NameTypeReqDescription
as_ofstringAnalysis date YYYY-MM-DD. Defaults to today.
council_modestringfull runs the eight-role evidence fan-out and three-round cross-exam. quick runs the fixed news-inclusive four-role preset, up to four masters, one parallel bull/bear round, a short PM, and a hard gl…
groundingobjectThe `grounding` object from compose_research_brief. Injected into every analyst prompt.
languagestringReader-facing language for subagents and final report, e.g. auto, zh-CN, en-US, ja-JP. Auto infers from prompt.
promptstringUser objective or extra instructions.
run_idstring
seat_weightsobjectOverride the declared weight of any seat, e.g. {"master_buffett": 2, "master_soros": 0}. Weights are an editable prior, not an optimum: a return backtest of LLM judgment would be invalidated by look-…
selection_receiptstringyesOne-run receipt returned by confirm_master_selection. Required for every council run and consumed exactly once.
symbolstringyesExchange ticker. US, HK, JP, KR, CN and TW symbols all work, e.g. AAPL, 0700.HK, 7203.T, 005930.KS, 600519.SS.
tasksarray
total_timeout_msnumberHard queue-to-persistence wall-clock budget. Cannot exceed the selected council_pace's total (fast 900000, normal 1800000, slow 3600000) or ten minutes for quick. Callers may lower the applicable cei…

No output schema declared.

No examples provided.

preflight_permissions ~92

MANDATORY before a visible run: check that the host actually grants the network tools the evidence agents need. Background subagents cannot raise an interactive permission prompt, so a missing allowlist entry blocks their searches SILENTLY and they answer from training knowledge while still filling in every report section. Returns status ok | blocked | unknown with a remedy.

NameTypeReqDescription
rosterstringWhich analyst roster the run will use.

No output schema declared.

No examples provided.

read_run ~29

Read a saved AlphaCouncil Agent run from the shared evidence store.

NameTypeReqDescription
run_idstringyes

No output schema declared.

No examples provided.

record_master_opinion ~200

Record one returned visible method-seat worker after evidence and before debate. For physical v3 seats, submit the method-voice schema from plan_visible_run: master, acknowledged_stance, statement, key_findings, disagreements, what_would_change_my_mind, source_ids and confidence. acknowledged_stance must equal the frozen stance; the worker cannot vote again. Legacy packets may use stance/verdict/summary. Reader-facing fields in the wrong run language are rejected without changing state. Every returned selected seat must be recorded before PM.

NameTypeReqDescription
masterstringyes
packetobjectyesCurrent physical v3 seats use acknowledged_stance + statement; acknowledged_stance MUST be one of constructive | cautious | opposed | out_of_scope and match the frozen stance returned by plan_visible…
run_idstringyes
thread_idstring

No output schema declared.

No examples provided.

record_verifier_verdict ~146

Record one Stage 2b verifier outcome against the seat that cited the claim. Verdicts that failed verification (contradicted, disagree, refuted) automatically reduce that seat's weight in the portfolio-manager synthesis; cannot_confirm and source_unreachable reduce it less. A seat is down-weighted, never silently erased.

NameTypeReqDescription
claimstring
notestring
run_idstringyes
seatstringyesThe seat whose claim was checked, e.g. bull_researcher or master_buffett.
verdictstringyesMust be one of the verifier's declared verdict_values.
verifierstringyes

No output schema declared.

No examples provided.

record_visible_decision ~220

Record exactly one visible decision step. Full visible bull_researcher and bear_researcher calls MUST supply round=1, then round=2, then round=3; both sides of the prior round are required before advancing. Round 2 asks exactly three questions; Round 3 preserves its own questions and answers the opponent's questions with exact bindings. Packets are persisted by role+round: an identical replay is idempotent and conflicting content is rejected. portfolio_manager accepts no round and is rejected until all evidence, selected masters, both three-round sides, and the exact Q&A gate are complete. Every reader-facing field must use the run language.

NameTypeReqDescription
packetobjectyes
rolestringyes
roundintegerRequired for bull_researcher and bear_researcher. Full visible runs require 1, 2, and 3 in order. Omit for portfolio_manager.
run_idstringyes
thread_idstring
thread_titlestring

No output schema declared.

No examples provided.

record_visible_packet ~102

MANDATORY sequential step (not optional): record one completed visible evidence agent packet into a planned visible run. Every reader-facing field must use the run language or the packet is rejected without changing run state. Every planned evidence task MUST be recorded before debate completion and portfolio_manager.

NameTypeReqDescription
packetobjectyes
run_idstringyes
taskstringyes
thread_idstring
thread_titlestring

No output schema declared.

No examples provided.

screen_candidates ~144

Run the mechanical elimination screen over a list of candidates and report every rejection with the metric, the measured value and the threshold. This is the 'find me stocks' path, and no language model participates in it. Capped at 40 names: SEC is one request per company and rate-limits, so narrow the funnel first with industry_brief, industry_peers or list_us_universe. A fetch failure is reported as unavailable rather than eliminated, because dropping a name because SEC timed out would bias the survivors.

NameTypeReqDescription
as_ofstringYYYY-MM-DD. Only filings filed by this date are used.
candidatesarrayyesUp to 40 companies.

No output schema declared.

No examples provided.

screen_ticker ~210

Run the mechanical elimination screen against an operating company's own SEC filings. It is not applicable to ETFs, funds or indices; use compose_research_brief so those instruments are classified and routed correctly. No language model is involved: seven hard rules (10y ROE, 5y cumulative FCF, interest cover, gross margin, OCF/NI, net margin, dilution) with three exemptions, and every rejection names the metric, value and threshold. Missing rules are skipped, never passes. Surviving is not a recommendation. US operating-company filers only.

NameTypeReqDescription
as_ofstringYYYY-MM-DD. Only filings actually filed by this date are used, which is what keeps a historical screen free of look-ahead bias.
cikstringSEC CIK. Use list_us_universe to resolve a ticker.
tickerstringUS ticker, e.g. MU. Resolved to a CIK against the SEC universe, so supplying this is enough.

No output schema declared.

No examples provided.

verify_x_post ~90

Confirm that one X post id exists and read back its text, author and date. Use it whenever a report or search result quotes a post: a decoded snowflake timestamp proves nothing, because any invented 19-digit id decodes to a plausible date, so existence has to be checked separately. This is verification only and cannot search or discover posts.

NameTypeReqDescription
idstringyesNumeric X post id.

No output schema declared.

No examples provided.