# SEC Fundamentals API

> SEC EDGAR financials, benchmarks, screening & Buffett value scans for agents. Pay x402 or API key.

- name: com.multyplylabs/sec-fundamentals
- version: 0.1.0
- connection class: R0 (autonomous)
- trust: 76/100 flags: no-repository
- quality: 88/100 (good)
- owner: not claimed
- descriptor: https://api.protogrid.dev/v1/servers/com.multyplylabs%2Fsec-fundamentals
- tools: https://api.protogrid.dev/v1/servers/com.multyplylabs%2Fsec-fundamentals/tools

**An agent can connect right now, no human step.** Remote endpoint, no authentication, reachable on the last probe.

## Connection (mcpServers)

```json
{
  "mcpServers": {
    "sec-fundamentals": {
      "type": "http",
      "url": "https://sec.multyplylabs.com/mcp",
      "headers": {
        "X-API-Key": "${X_API_KEY}"
      }
    }
  }
}
```

Placeholders to fill: `${X_API_KEY}`.

## Trust

- hygiene: 80
- liveness: 100
- freshness: 65
- provenance: 55
- drivers: +dns-namespace +website +reachable +uptime-100% ~updated-95d-ago -no-repository
- Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed.

## Quality 88/100 (good)

### protocol: 75 (weight 25)

- warn `protocol.modern`: newest supported version is 2025-11-25; 2026-07-28 not supported, older versions are deprecated until 2027-07-28
- n/a `protocol.stateless`: only applies to 2026-07-28 servers
- pass `protocol.transport`: streamable HTTP
- n/a `protocol.list_ttl`: only applies to 2026-07-28 servers

### authorization: n/a (weight 15)

- n/a `auth.prm`, `auth.as_metadata`, `auth.cimd`: no remote uses OAuth
- n/a `auth.secret_in_url`: no templated URL

### tool hygiene: 93 (weight 30)

- pass `tools.descriptions`: every tool has a description
- warn `tools.description_length`: 1 tools have descriptions over 1,024 characters, which crowds the context
- pass `tools.schemas`: every tool has an object input schema
- pass `tools.annotations`: 17 of 17 tools declare readOnlyHint or destructiveHint
- pass `tools.directory_hints`: every tool declares readOnlyHint, destructiveHint, idempotentHint and openWorldHint
- pass `tools.token_cost`: about 5,958 tokens to load every tool
- pass `tools.api_dump`: tools are not a one-to-one API dump

### stability: 100 (weight 15)

- pass `stability.changes`: no tool changes in 30 days
- pass `stability.rug_pull`: no tool changed its meaning under the same name

### dependencies: n/a (weight 15)

- n/a `deps.known_vulns`, `deps.mcp_sdk_version`, `deps.resolvable`: no npm or PyPI package

- tools: 17, about 5,958 tokens to load them all
- tool set hash: eb996002ec36eb4764a9b71f1e985197
- badge: [![protogrid quality](https://protogrid.dev/badge/com.multyplylabs/sec-fundamentals.svg)](https://protogrid.dev/servers/com.multyplylabs/sec-fundamentals)
- Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed.

### Tool changes

_No tool definition changes recorded._

## Remotes

- https://sec.multyplylabs.com/mcp (streamable-http, auth none, reachable true, uptime30d 1)

## Packages

_none_

## Tools (17)

- `buffett_scan`: Rank US public companies by Quality Score (0-100) over a 10-year
window from five components: return on invested capital (30 points,
blended 60/40 with the company's industry percentile), durability
through the cycle (20), cash conversion (20), balance-sheet strength (15)
and capital discipline (15). Every component is explainable from the
returned row (roic_median, fcf_conversion, net_debt_to_ebit, ...); a
component with no usable data is dropped and the rest renormalized.
Companies that stopped filing (4,313), have fewer than five fiscal years
on file (1,702), lack the tags to measure returns on capital in enough of
those years -- missing EBIT tags, or an unclassified balance sheet,
common among homebuilders and industrials with captive finance arms
(1,612) -- or are balance-sheet financials (banks, insurers, REITs;
1,539) are not scored and do not appear: 2,885 of 12,051 companies
(roughly a quarter of all filers, ~37% of active ones) are scored today.
Use it for price-independent quality; use buffett_value to add
valuation. Methodology v3; heuristic screen, not investment advice.
Cost: $0.25 per call; unpaid calls return a payment-required error.
- `buffett_value`: Find high-quality US public companies trading below intrinsic value:
the Quality Score (see buffett_scan) combined with a value score from the
previous close (FCF yield, 10-year owner-earnings DCF margin of safety,
P/E), ranked by combined_score, the mean of the two (0-100 each). Rows
also carry market cap, owner-earnings yield and intrinsic value. Use
buffett_scan for quality alone; it needs no price data. Foreign private
issuers (20-F filers, e.g. Chinese ADRs) are excluded by default: they
screen cheap for structural reasons fundamentals cannot see. Methodology
v3; heuristic screen, not investment advice.
Cost: $0.25 per call; unpaid calls return a payment-required error.
- `company_facts`: Raw normalized XBRL facts for one company as reported in its SEC
filings, newest first: concept, value, unit, period_start and period_end,
fiscal_year, fiscal_period, form, filed date and data-quality flags. Use
it for individual reported values, quarterly figures or filing
provenance; use company_financials for clean annual statements and
ratios. Cost: $0.01 per call; unpaid calls return a payment-required error.
- `company_filings`: SEC filing index for one company, newest first: form, filing date,
report period, accession number, 8-K item codes and a direct sec.gov
document_url. Use it to find or cite a specific 10-K, 10-Q, 8-K or Form 4;
use company_facts or company_financials for the numbers in the filings.
Cost: $0.005 per call; unpaid calls return a payment-required error.
- `company_financials`: Annual financial statements for one company, one row per fiscal year:
income statement, balance sheet and cash flow lines plus ratios
(gross_margin, operating_margin, roe, roa, fcf, debt_to_equity, ...).
Use it for a known company's history; use company_facts for individual
reported values and quarterly periods, compare_to_peers to benchmark it
against its industry, and screen_companies to find companies by criteria.
Cost: $0.02 per call; unpaid calls return a payment-required error.
- `company_signal`: Composite factor scorecard for one company: quality (Piotroski,
Altman, accruals), value (owner-earnings DCF), insider conviction (Form 4
buying as bps of market cap), institutional positioning (13F) and short
sentiment, each 0-100, plus a renormalized composite_score and coverage
(the share of factors present). Also returns institutional ownership %,
insider buy intensity, short-to-ADV and governance flags (Form 4 latency,
Item 4.02 restatements, stale fundamentals). Use top_signals to rank
every company by the same composite. RESEARCH SIGNAL, NOT INVESTMENT
ADVICE. Cost: $0.05 per call; unpaid calls return a payment-required error.
- `compare_to_peers`: One company's metrics for a fiscal year next to its industry cohort:
the percentiles of every metric for each revenue size bucket in its
2-digit SIC group. Use it to judge whether a company's margins, returns
or leverage are above or below sector norms; use industry_aggregate for
a cohort without a specific company.
Cost: $0.05 per call; unpaid calls return a payment-required error.
- `industry_aggregate`: Benchmark percentiles (p10, p25, median, p75, p90, plus mean and
company count n) for one financial metric, per fiscal year, 2-digit SIC
industry group and revenue size bucket. Use it for questions like "what
is the median gross margin of large software companies?"; use
compare_to_peers to place one company in its cohort and market_insight
(sector_landscape) for margin medians across every industry.
Cost: $0.05 per call; unpaid calls return a payment-required error.
- `insider_activity`: Insider (Form 4) transactions for one company over the trailing
months, plus a summary: open-market buys vs sales, distinct buyers and
net dollar value, with 10b5-1 plan flags. Cluster buying by officers and
directors is a studied positive signal. Use company_signal for insider
conviction scored alongside other factors. Not investment advice.
Cost: $0.02 per call; unpaid calls return a payment-required error.
- `institutional_ownership`: 13F institutional ownership snapshot for one company: number of
holders, aggregate shares and value, and quarter-over-quarter change
(accumulating vs trimming). 13F filings lag the quarter by up to 45 days
and show long positions only. Use company_signal for institutional
positioning scored alongside other factors. Not investment advice.
Cost: $0.02 per call; unpaid calls return a payment-required error.
- `list_insights`: Catalog of the curated market-wide analyses: each one's name, path,
description, parameters with defaults, and price. Call it before
market_insight or standard_score to choose an analysis and its
parameters. Free: no API key or payment needed.
- `lookup_company`: Find a company's SEC CIK from its ticker, CIK or name. Every company
tool takes a cik, so call this first when you only have a ticker (AAPL)
or a name (apple). Returns up to limit matches, best first (exact ticker,
exact CIK, name prefix, name contains; within each, companies with
tickers before other filers such as individuals), each with cik, name,
tickers, sic and sic_description; no match is an empty list, not an
error. Free: no API key or payment needed.
- `market_insight`: Curated analysis computed live across all US public companies, chosen
by name: top_companies (rank by a metric, optionally within an
industry), movers (largest change in a metric between fy_from and fy_to),
sector_landscape (margin medians per industry), metric_trend (yearly sum,
median or mean of a metric), capital_returns (buybacks vs dividends by
size bucket) or filing_velocity (monthly filing counts for a form type).
Each parameter's description says which analyses read it; the response
reports the fiscal year(s) used. Use screen_companies for your own
criteria and standard_score for F-Score, Z-Score and similar scores.
Cost: $0.15 per call; unpaid calls return a payment-required error.
- `screen_companies`: Screen US public companies for one fiscal year by financial criteria
and return the matches with their name, tickers, industry and metrics,
largest revenue first. Use it to discover companies; use
company_financials for one known company's history and
industry_aggregate for cohort benchmarks.
Cost: $0.10 per call; unpaid calls return a payment-required error.
- `short_pressure`: Short-selling pressure for one company: the FINRA daily short-volume
ratio (short volume / total volume) over about 20 trading days, a
bearish-sentiment proxy. This is daily short-sale volume, not bi-monthly
short interest. Use company_signal for short sentiment scored alongside
other factors. Not investment advice.
Cost: $0.02 per call; unpaid calls return a payment-required error.
- `standard_score`: Academic fundamental scores across US public companies, chosen by
name: piotroski (F-Score 0-9, financial strength), altman_z
(bankruptcy-risk zones), beneish_m (elevated M-Score: an
accounting-quality screen, not evidence of manipulation), magic_formula
(Greenblatt rank on earnings yield and return on capital) or accruals
(Sloan earnings quality). Each company is scored on its own latest fiscal
year (fiscal_year per row); fy selects the cohort whose latest scored
year is fy -- it does not re-score companies on an earlier year. Use
company_signal for one company's quality, value and sentiment factors
together. Peer-reviewed formulas; not investment advice.
Cost: $0.15 per call; unpaid calls return a payment-required error.
- `top_signals`: Rank US public companies by composite factor score (quality, value,
insider, institutional and short-sentiment factors, each 0-100), highest
first, with each company's factor scores, coverage, and restatement and
stale-fundamentals flags. Use company_signal for one company's full
scorecard. RESEARCH SIGNAL, NOT INVESTMENT ADVICE.
Cost: $0.25 per call; unpaid calls return a payment-required error.
