Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, get in touch and we’ll put it right.

StockDrifts

REMOTE · MCP.STOCKDRIFTS.IO

Rated 13F funds with average buy prices, company KPIs, Japan investor ratings, Korea insider buys.

+4 this week 74 Trust /100

Last scanned (5 hours ago)

Scores higher than 62% of remote servers

Reachable. Last reached 5 Nov 2026.

Category Finance and Payments

Trust breakdown (7 categories)

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score → Why this is hard to score →

Endpoint Security57
Transport & Reachability100
Schema Quality & AI Usability63
  • AI-judged instruction clarity (good).Pass
  • Context-footprint check failed: tool/resource definitions use about 4058 tokens (~126/item across 32 items; 32 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 Management100
  • No destabilizing schema changes in the last 30 days.Pass
Tool Coverage86
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 57% of tool parameters carry a description.Partial
Tool Safety75
  • No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
  • We read all 32 captured tool definition(s), and no name or description among them implies an irreversible operation.Pass
  • Manipulation not yet verified: none of the 32 captured unit(s) of tool text has been judged yet, so we will not certify text no model has read as clean.Unverified
Capabilities100
  • Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
What we tested

Checks we ran (11)

  • TLS certificate
  • HTTPS
  • HSTS header
  • DNSSEC
  • Transport
  • Schema quality
  • Stability
  • Tool coverage
  • Injection markers
  • Destructive annotations
  • MCP protocol

Checks we could not complete (2)

These are gaps on our side, not findings about this hosted endpoint. We only credit what we can confirm, so a category made up entirely of them scores 0.

  • Authorization in Endpoint SecurityAuthorisation not fully verified: no authorisation is required to call this server, and 32 tool(s) never declared a destructiveHint. The MCP spec treats an absent hint as destructive by default, so we cannot call this surface safe.
  • Judged manipulation in Tool SafetyManipulation not yet verified: none of the 32 captured unit(s) of tool text has been judged yet, so we will not certify text no model has read as clean.

Does not apply to this hosted endpoint (2)

  • Supply Chain SecurityScored on package channels only. This is a hosted endpoint, so there is nothing to install or inspect.
  • Provenance & TransparencyScored on package channels only. This is a hosted endpoint, so there is nothing to install or inspect.

The score does not measure everything. What the score does not measure →

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.

  • 5 Nov 26 +1
    • Stability: 0.97 → pass security
  • 3 Nov 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 90 to 93. That category is still filling its 30-day observation window: 27 days of observed history at the previous scan, 28 at this one. The score rises as the window fills, whether or not the server changes.

  • 1 Nov 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 83 to 87. That category is still filling its 30-day observation window: 25 days of observed history at the previous scan, 26 at this one. The score rises as the window fills, whether or not the server changes.

  • 30 Oct 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 77 to 80. That category is still filling its 30-day observation window: 23 days of observed history at the previous scan, 24 at this one. The score rises as the window fills, whether or not the server changes.

  • 28 Oct 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 70 to 73. That category is still filling its 30-day observation window: 21 days of observed history at the previous scan, 22 at this one. The score rises as the window fills, whether or not the server changes.

  • 26 Oct 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 63 to 67. That category is still filling its 30-day observation window: 19 days of observed history at the previous scan, 20 at this one. The score rises as the window fills, whether or not the server changes.

  • 23 Oct 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 53 to 57. That category is still filling its 30-day observation window: 16 days of observed history at the previous scan, 17 at this one. The score rises as the window fills, whether or not the server changes.

  • 21 Oct 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 47 to 50. That category is still filling its 30-day observation window: 14 days of observed history at the previous scan, 15 at this one. The score rises as the window fills, whether or not the server changes.

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 5 Nov 2026 · Probed https://mcp.stockdrifts.io/mcp/

TLS valid

Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .

Subject Issuer Valid from Valid until Key Signature Serial
CN=mcp.stockdrifts.io CN=YR1,O=Let's Encrypt,C=US 4 Nov 2026 2 Feb 2027 RSA 4096 SHA256-RSA 66b4019c1bcd18e7129cdf41b3ef20ae997
SANs: mcp.stockdrifts.io
CN=YR1,O=Let's Encrypt,C=US (CA) CN=Root YR,O=ISRG,C=US 3 Sept 2025 2 Sept 2028 RSA 2048 SHA256-RSA a20253f15f2691c05dc1ce13b9bcca4e
CN=Root YR,O=ISRG,C=US (CA) CN=ISRG Root X1,O=Internet Security Research Group,C=US 13 May 2026 2 Sept 2032 RSA 4096 SHA256-RSA f24b6d17f9d9ad7cb1c9fea78782699f

Background: What to check on a remote MCP endpoint →

DNSSEC insecure

Validation of mcp.stockdrifts.io. — Not signed

Zone DS Keys Algorithms Outcome
. Trust anchor 20326, 38696 8, 8 Verified
io. DS published 38690 8 Verified
stockdrifts.io. No DS Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation
Authentication No authorisation required

The endpoint answered without asking for a token. Anyone who knows the URL can reach it.

Result No authorisation required
HTTP status 200

Background: How OAuth 2.1 works in the 2026 MCP spec →

Transports 2 probes
Transport URL Outcome Status Location
streamable-http https://mcp.stockdrifts.io/mcp/ Verified 200
http (plaintext) http://mcp.stockdrifts.io/mcp/ HTTPS enforced 301 https://mcp.stockdrifts.io/mcp/
MCP tools · 32 exposed · ~4,058 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. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →

Tool Tokens
get_insider_summary_jp ~32

Pre-aggregated shareholding summary for one JP ticker

NameTypeReqDescription
stock_codestringyes–

No output schema declared.

No examples provided.

get_insider_summary_kr ~31

Pre-aggregated insider summary for one KR ticker

NameTypeReqDescription
stock_codestringyes–

No output schema declared.

No examples provided.

get_investor_catalyst_record_us ~156

One fund's binary-event track record per sector, with best/worst calls The fund's record of holding names through binary events (price-defined single-day moves — readouts/FDA/buyouts in biotech, earnings/M&A elsewhere; not verified cause labels): one row per sector bucket, the 'all' rollup first, each with hits, blowups, hit rate, dollar-weighted impact, and the five best and worst resolved calls. 404 means the fund had no scored events in the window, not that it is a bad fund.

NameTypeReqDescription
cikstringyes–
sectorstring–Only this sector bucket (e.g. 'biotech'); default all buckets.

No output schema declared.

No examples provided.

get_investor_changes_us ~88

QoQ position diff for one investor between two periods

NameTypeReqDescription
cikstringyes–
period_fromstring–Older period ('2026-Q1' or '2026-03-31'); defaults to the prior period on file.
period_tostringyesNewer period: '2026-Q2' or '2026-06-30'.

No output schema declared.

No examples provided.

get_investor_holdings_us ~122

Latest 13F holdings for one investor (or for a specific period)

NameTypeReqDescription
cikstringyes–
min_position_value_usdnumber–Drop positions worth less than this many USD.
periodstring–Reporting period: '2026-Q2' or '2026-06-30'.
tickersarray–Only return positions matching these tickers; overrides top_n.
top_ninteger–Return only the top-N positions by USD value (slims a 50-position payload).

No output schema declared.

No examples provided.

get_investor_sector_exposure_us ~135

Sector-exposure history for one investor (newest quarter first) Per-quarter portfolio composition by sector for one 13F filer, including the biotech tier and top biotech positions. Use it to see whether a fund was already a sector specialist in earlier quarters, or how its sector mix is shifting. `unclassified_pct` reports how much top-50 value had no sector tag.

NameTypeReqDescription
cikstringyes–
limitinteger––
periodstring–One reporting period: '2026-06-30' or '2026-Q2'. Default: all on file.

No output schema declared.

No examples provided.

get_kpi ~24

Latest normalized KPI snapshot for one ticker

NameTypeReqDescription
tickerstringyes–

No output schema declared.

No examples provided.

get_plan_executions_kr ~33

Cross-reference one D005 plan against its actual executions

NameTypeReqDescription
rcept_nostringyes–

No output schema declared.

No examples provided.

list_convergence_jp ~46

JP tickers with multiple distinct investors filing on the same name

NameTypeReqDescription
limitinteger––
min_investorsinteger–Minimum distinct investors per ticker.

No output schema declared.

No examples provided.

list_insider_filings_jp ~120

Shareholding-report filings for one JP ticker

NameTypeReqDescription
daysinteger––
limitinteger––
min_value_jpynumber–Drop filings worth less than this many JPY.
pageinteger–0-indexed page number.
purpose_categorystring–Filter to one purpose_category (e.g. 'activist', 'passive').
stock_codestringyes–
transaction_typesarray–Filter to specific transaction types (e.g. ['BUY']).

No output schema declared.

No examples provided.

list_insider_trades_kr ~173

Insider trades for one KR ticker

NameTypeReqDescription
acquisition_methodstring–Filter to one acquisition_method (e.g. '장내매수' for open-market buys). Useful for excluding stock-dividend (주식배당) bookings.
daysinteger––
limitinteger––
min_value_krwnumber–Drop trades worth less than this many KRW.
pageinteger–0-indexed page number.
position_categorystring–Filter to a position bucket. One of: CEO, CFO, COO, CTO, Chairman, Co-CEO, President, Vice Chairman.
stock_codestringyes–
transaction_typesarray–Filter to BUY only, SELL only, or both. Defaults to both.

No output schema declared.

No examples provided.

list_investor_filings_jp ~43

All JP filings made by one investor (EDINET code)

NameTypeReqDescription
filer_edinet_codestringyes–
limitinteger––

No output schema declared.

No examples provided.

list_investor_periods_us ~60

All 13F periods on file for one investor

NameTypeReqDescription
cikstringyes–
limitinteger––
top_ninteger–Return only the top-N positions per period (defaults to all 50).

No output schema declared.

No examples provided.

list_leaderboard_jp ~45

Top JP investors by star rating + avg return

NameTypeReqDescription
limitinteger––
min_buysinteger–Minimum lifetime purchase count to appear.

No output schema declared.

No examples provided.

list_leaderboard_kr ~72

Top KR insiders by historical avg return on their buys

NameTypeReqDescription
exclude_asset_mgrsboolean–Drop institutional rows (자산운용/투자신탁/연금).
limitinteger––
min_buysinteger–Minimum lifetime purchase count to appear.

No output schema declared.

No examples provided.

list_opportunities_jp ~103

Recent JP BUY/INITIAL filings whose price hasn't moved much yet

NameTypeReqDescription
exclude_passiveboolean–Drop filings with purpose_category='passive'.
limitinteger––
max_return_pctnumber–Drop filings whose price has already moved more than this many percent (positive or negative) since the filing.
min_value_jpynumber–Drop filings smaller than this many JPY.
period_daysinteger––

No output schema declared.

No examples provided.

list_opportunities_kr ~113

Recent KR open-market BUYs whose price hasn't moved much yet

NameTypeReqDescription
exclude_asset_mgrsboolean–Drop institutional rows (자산운용/투자신탁/연금).
limitinteger––
max_return_pctnumber–Drop trades whose price has already moved more than this many percent (positive or negative) since the filing.
min_value_krwnumber–Drop trades smaller than this many KRW.
period_daysinteger––

No output schema declared.

No examples provided.

list_plans_kr ~102

KR pre-disclosure (D005) plans — announced but not yet executed trades

NameTypeReqDescription
daysinteger––
is_amendmentboolean–Filter to amendment (or original) filings.
is_withdrawalboolean–Filter to withdrawn (or non-withdrawn) plans.
limitinteger––
pageinteger–0-indexed page number.
stock_codestring––

No output schema declared.

No examples provided.

list_recent_filings_jp ~118

Recent JP filings across all tickers

NameTypeReqDescription
daysinteger––
limitinteger––
market_capstring–Market-cap bucket. One of: mega, large, mid, small, micro.
min_value_jpynumber–Drop filings worth less than this many JPY.
pageinteger–0-indexed page number.
purpose_categorystring––
transaction_typesarray–Filter to specific transaction types (e.g. ['BUY']).

No output schema declared.

No examples provided.

list_recent_trades_kr ~207

Recent KR insider trades across all tickers

NameTypeReqDescription
acquisition_methodstring–Filter to one acquisition_method (e.g. '장내매수' for open-market buys). Useful for excluding stock-dividend (주식배당) bookings.
daysinteger––
limitinteger––
market_capstring–Market-cap bucket. One of: mega, large, mid, small, micro.
min_value_krwnumber–Drop trades worth less than this many KRW.
pageinteger–0-indexed page number.
position_categorystring–Filter to a position bucket. One of: CEO, CFO, COO, CTO, Chairman, Co-CEO, President, Vice Chairman.
sectorstring–Industry sector (e.g. 'Semiconductors').
transaction_typesarray–Filter to BUY only, SELL only, or both. Defaults to both.

No output schema declared.

No examples provided.

list_ticker_holders_us ~215

Investors with `ticker` in their top-50 positions, sorted by position size Returns 13F filers that hold `ticker` **as one of their 50 largest positions**, scoped to the most recent reporting period by default. Only top-50 positions per investor are surfaced — smaller positions are not included. Pass an explicit `period` to query a different quarter.

NameTypeReqDescription
limitinteger––
min_position_value_usdnumber–Only funds whose position in this ticker is ≥ this many USD.
min_total_value_usdnumber–Only funds with total AUM ≥ this many USD.
periodstring–Reporting period: '2026-Q2' or '2026-06-30'.
ratingsarray–Filter to specific fund ratings (e.g. ['3','4','5'] for 3-star and above). Use this to avoid pulling 200 funds when you only want a rating slice.
tickerstringyes–

No output schema declared.

No examples provided.

list_top_buys_jp ~147

Top JP tickers by aggregated insider buying over a window

NameTypeReqDescription
daysinteger––
high_signal_onlyboolean–Default true — drop correction/amendment filings (paperwork).
limitinteger––
market_capstring–Market-cap bucket. One of: mega, large, mid, small, micro.
min_investor_countinteger–Drop tickers with fewer than this many distinct investors.
min_value_jpynumber–Drop source filings worth less than this many JPY.
purpose_categorystring–Filter source filings to one purpose_category (e.g. 'activist').

No output schema declared.

No examples provided.

list_top_buys_kr ~234

Top KR tickers by aggregated insider buying over a window

NameTypeReqDescription
acquisition_methodstring–Override the high-signal filter with a specific acquisition_method (e.g. '장내매수', '주식배당').
daysinteger––
high_signal_onlyboolean–Default true — restrict to Tier-1 open-market buys (장내매수) and drop program trades, matching the dashboard's High Signal view. Pass false to include stock-dividend bookings, option exercises, etc.
limitinteger––
market_capstring–Market-cap bucket. One of: mega, large, mid, small, micro.
min_insider_countinteger–Drop tickers with fewer than this many distinct insiders.
min_value_krwnumber–Drop source trades worth less than this many KRW.
position_categorystring–Filter to a position bucket. One of: CEO, CFO, COO, CTO, Chairman, Co-CEO, President, Vice Chairman.
sectorstring–Industry sector.

No output schema declared.

No examples provided.

list_top_sells_jp ~139

Top JP tickers by aggregated insider selling over a window

NameTypeReqDescription
daysinteger––
high_signal_onlyboolean–Default true — drop correction/amendment filings (paperwork).
limitinteger––
market_capstring–Market-cap bucket. One of: mega, large, mid, small, micro.
min_investor_countinteger–Drop tickers with fewer than this many distinct investors.
min_value_jpynumber–Drop source filings worth less than this many JPY.
purpose_categorystring–Filter source filings to one purpose_category.

No output schema declared.

No examples provided.

list_top_sells_kr ~204

Top KR tickers by aggregated insider selling over a window

NameTypeReqDescription
acquisition_methodstring–Override the high-signal filter with a specific acquisition_method.
daysinteger––
high_signal_onlyboolean–Default true — restrict to Tier-1 open-market sells (장내매도) and drop program trades. Pass false to include all sell types.
limitinteger––
market_capstring–Market-cap bucket. One of: mega, large, mid, small, micro.
min_insider_countinteger–Drop tickers with fewer than this many distinct insiders.
min_value_krwnumber–Drop source trades worth less than this many KRW.
position_categorystring–Filter to a position bucket. One of: CEO, CFO, COO, CTO, Chairman, Co-CEO, President, Vice Chairman.
sectorstring–Industry sector.

No output schema declared.

No examples provided.

screen_holdings_us ~204

Screen 13F holdings by period, ticker, value, and rating; returns each matched fund with only the position(s) that matched Results are wrapped in an envelope: `results` holds up to `limit` funds (max 500), `total_count` is the full server-side match count, and `truncated` says whether paging with `offset` would surface more. `period` accepts '2026-Q2' or an ISO date like '2026-06-30'.

NameTypeReqDescription
limitinteger––
max_value_usdnumber––
min_value_usdnumber––
offsetinteger–Rows to skip, for paging past `limit` (see `truncated`).
periodstring–Reporting period: '2026-Q2' or an ISO date like '2026-06-30'.
ratingsarray––
tickersarray––

No output schema declared.

No examples provided.

screen_insiders ~183

Screen insider activity by country, date, value, role, and ticker Screens one market per call, selected by `country`: 'KR' returns individual insider transactions, 'JP' returns 5%+ shareholding reports. The response echoes `country` — switch on it before reading `results`, since the two markets return different record shapes. There is no US coverage; use the 13F screen for US institutional flows.

NameTypeReqDescription
actor_rolestring––
countrystringyesMarket to screen: 'KR' (Korea) or 'JP' (Japan).
date_fromstring––
date_tostring––
limitinteger––
max_valuenumber––
min_valuenumber––
stock_codesarray––
transaction_typesarray––

No output schema declared.

No examples provided.

screen_investor_catalyst_record_us ~332

Screen funds by their track record on binary events (any sector) Ranks 13F filers by how their positions resolved through binary events — single-day moves >= ~25%, price-defined, NOT verified cause labels. In biotech these are trial readouts / FDA decisions / buyouts; elsewhere earnings blowups, guidance cuts, M&A. `sector='all'` (default) ranks across everything; `'biotech'` and lowercased sector names ('technology', 'energy', ...) scope the record. `hit_rate` = pops held / events decided; `impact_usd` is dollar-weighted (position value x event return). Always pass `min_events` (>= 5) — a perfect rate on 2 events is noise. Chain with `get_investor_holdings_us` to see what a proven event-caller is buying now, or `screen_investor_sector_exposure_us` to intersect with sector specialists.

NameTypeReqDescription
limitinteger––
min_eventsinteger–Only funds exposed to at least this many events (use >= 5).
min_hit_ratenumber–Only funds with hit_rate >= this percent.
min_impact_usdnumber–Only funds with dollar-weighted impact >= this many USD.
order_bystring–Ranking column: impact_usd (default) | hit_rate | events.
sectorstring–Sector bucket: 'all' (rollup), 'biotech', or a lowercased sector name like 'technology' or 'energy'.

No output schema declared.

No examples provided.

screen_investor_sector_exposure_us ~303

Screen investors by sector concentration (e.g. top biotech specialists) Ranks 13F filers by the share of their portfolio in one sector, computed from sector-tagged top-50 holdings. `tier` buckets: specialist (>=60%), heavy (30-60%), tilted (10-30%), minimal (<10%). Interpretation caveats: corporate venture arms (Gilead, Pfizer, GSK) and single-stock endowments (e.g. Lilly Endowment holds only LLY) rank as specialists — pass `min_positions` (e.g. 5) to screen for genuinely diversified sector pickers. Chain with `get_investor_holdings_us` / `get_investor_changes_us` to see what a specialist is buying now.

NameTypeReqDescription
limitinteger––
min_positionsinteger–Only funds with at least this many positions in the sector.
min_total_value_usdnumber–Only funds with total portfolio value ≥ this many USD.
periodstring–Reporting period: '2026-06-30' or '2026-Q2'. Defaults to latest.
sectorstring–Sector to rank by: 'biotech' (biotech + pharma industries, the fast path) or a sector name like 'Healthcare', 'Technology', 'Energy'.
tierstring–Only funds in this tier: specialist | heavy | tilted | minimal.

No output schema declared.

No examples provided.

search_companies_jp ~76

Search JP companies by stock_code, Japanese name, or English name

NameTypeReqDescription
limitinteger––
offsetinteger––
qstring–Search term — matches stock_code prefix, company_name (Japanese) substring, or company_name_en substring. Omit to list all companies by filing volume.

No output schema declared.

No examples provided.

search_companies_kr ~77

Search KR companies by stock_code, Korean name, or English name

NameTypeReqDescription
limitinteger––
offsetinteger––
qstring–Search term — matches stock_code prefix, company_name (Korean) substring, or company_name_en substring. Omit to list all companies by trade volume.

No output schema declared.

No examples provided.

search_investors_us ~121

Fuzzy-search investors by name; resolves to CIKs ordered by AUM Case-insensitive partial-name match against the latest-holdings view. Returns the largest funds first so the most likely match is at the top. Use this to resolve a manager name to a CIK before calling investor-axis tools (`get_investor_holdings_us`, `list_investor_periods_us`, `get_investor_changes_us`).

NameTypeReqDescription
limitinteger––
querystringyesPartial manager name (case-insensitive)

No output schema declared.

No examples provided.

Install

How do I install the StockDrifts MCP server?

StockDrifts is a hosted endpoint at https://mcp.stockdrifts.io/mcp/, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

remote · mcp.stockdrifts.io

# add to Claude Code
claude mcp add --transport http io-stockdrifts-mcp 'https://mcp.stockdrifts.io/mcp/'
Common questions

What is the StockDrifts MCP server?

StockDrifts is an MCP server listed in the public MCP registry as io.stockdrifts/mcp. Rated 13F funds with average buy prices, company KPIs, Japan investor ratings, Korea insider buys. This page covers its hosted endpoint (https://mcp.stockdrifts.io/mcp/).

Is the StockDrifts MCP server safe to use?

StockDrifts scores 74 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

What tools does the StockDrifts MCP server expose?

StockDrifts exposes 32 tools: list_insider_trades_kr, get_insider_summary_kr, list_recent_trades_kr, list_top_buys_kr, list_top_sells_kr, and 27 more. Their descriptions and schemas cost roughly 4,058 tokens of context every time the server is loaded.

Does the StockDrifts MCP server require authentication?

No. We connected to StockDrifts without credentials and it answered, so anything it exposes is reachable by anyone who knows the address.

Is the StockDrifts MCP server still maintained?

StockDrifts is still listed as active in the MCP registry. We last reached this channel on 5 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

What did VerifyMCP test on the StockDrifts MCP server?

VerifyMCP ran 11 checks on StockDrifts, covering TLS certificate, HTTPS, HSTS header, DNSSEC and 7 more. 2 items could not be completed, a gap on our side rather than a finding about StockDrifts: Authorization and Judged manipulation. Supply Chain Security and Provenance & Transparency do not apply to a hosted endpoint, so they were not tested. The score does not measure everything, and the scoring documentation lists what it leaves out.