@pipeworx/index-constituents
Connect: https://pipeworx.io/mcp — every tool in the catalog, including @pipeworx/index-constituents’s. Install: one-click buttons
Connect to just the @pipeworx/index-constituents pack
https://gateway.pipeworx.io/index-constituents/mcp — only @pipeworx/index-constituents’s own tools, nothing else in the catalog.
No MCP client? Skip the connection: POST https://gateway.pipeworx.io/v1/tools/search_packs {"query":"..."} to find a tool below, GET /v1/tools/<name> for its schema, POST the same URL with arguments for the data — see For AI agents.
Tools: 3
Current constituents, weights and sectors of six major US and developed-markets equity indexes, plus a dated history of S&P 500 additions and removals — point-in-time index membership built from a live ETF proxy, not a licensed index feed.
Tools
index_constituents(index, limit?, offset?, sector?)— current equity constituents of one index (sp500,sp400,sp600,russell1000,russell2000,eafe): ticker, name, GICS sector, weight, and the fund’s “as of” date. Sorted by weight descending. Cash/collateral/futures the tracking ETF also holds are excluded here (seeishares_etf_holdings). Defaultlimitis 50; passlimit: 600(the max) to get the whole index in one call — a ~503-row S&P 500 answer is available on request, not by default.ishares_etf_holdings(ticker, limit?, offset?, asset_class?)— every reported position of one of the six tracking ETFs (IVV,IJH,IJR,IWB,IWM,EFA), including cash, collateral and futures, each labeled with its ownasset_classso they are never silently folded in with equities.constituent_changes(index, from?, to?, limit?)— dated S&P 500 adds and removes (indexmust besp500; the other five indexes have no public, dated changes table).from/toaccept a bare year (“2024”) or an ISO date.
Auth
Keyless. Both upstreams are public, unauthenticated pages.
Data sources
- iShares (BlackRock) — the daily holdings file each fund publishes for its own index-tracking ETF (IVV/S&P 500, IJH/S&P MidCap 400, IJR/S&P SmallCap 600, IWB/Russell 1000, IWM/Russell 2000, EFA/MSCI EAFE). This is a PROXY for official index membership, not the index provider’s own data: S&P and Russell do not publish their constituent files for free, so the fund’s actual reported portfolio — which tracks its index closely — is the nearest public point-in-time stand-in. Weights are the ETF’s own portfolio weights, not S&P/Russell’s published index weights, and can differ slightly (cash drag, sampling, corporate-action timing).
- Wikipedia — “List of S&P 500 companies” and “Historical components of the
S&P 500” (the latter is this pack’s source for
constituent_changes: a community-maintained, citation-backed table of every S&P-announced S&P 500 swap since 1963, with its effective date and stated reason).
Reuse note (checked 2026-10-12). BlackRock’s site terms
(blackrock.com/corporate/compliance/terms-and-conditions) say website content
is “solely for your personal, non-commercial use” and may not be “distribute[d],
modif[ied], transmit[ted], reuse[d], repost[ed]… for public or commercial
purposes… without BlackRock’s written permission.” This pack does not store,
mirror or redistribute the holdings file: every call fetches the fund’s current
file live (cached at the edge for a day, the same way a normal browser would
cache it) and returns the parsed rows for that one call. Per the proxy-vs-mirror
rule (CLAUDE.md, fleet #1389 — “a live upstream call per request needs no
explicit grant; only bulk-copying/mirroring does”), that is proxying, not
redistribution; no dataset is baked into this pack or into Pipeworx’s own
storage. Wikipedia’s content is CC BY-SA 4.0, which permits reuse including
attribution-carrying commercial reuse — source on every response names
Wikipedia and the page.
Notes
- The iShares holdings file’s column layout is not identical across funds: IJH and IJR add a “Type” column and call the weight field “Market Weight” instead of “Weight (%)”. This pack reads the header by NAME, not by position, so a reordered column does not silently misalign the data.
data_as_ofon every response is the fund’s own “Fund Holdings as of” date from the file, not the time Pipeworx fetched it — use it to judge freshness.- The S&P 500 holdings file carries a handful of non-equity rows (cash,
collateral, a futures contract used to stay fully invested between
rebalances) even though the fund is “all-equity” by mandate; these are
excluded from
index_constituentsand labeled plainly inishares_etf_holdings. constituent_changesonly coverssp500today. The other five indexes have no equivalent free, dated, citation-backed changes table — adding one would mean a different, likely paid, source.
Tools
- index_constituents — Current constituents of a major US or developed-markets equity index — ticker, name, GICS sector, and weight — sourced from the matching iShares index-tracking ETF’s daily holdings file (the closest f
- ishares_etf_holdings — Full reported holdings of one of six iShares index-tracking ETFs (IVV, IJH, IJR, IWB, IWM, EFA) as of the fund’s own “as of” date — every position including cash, collateral and futures, each labeled
- constituent_changes — Dated additions and removals from the S&P 500, sourced from Wikipedia’s maintained “Historical components of the S&P 500” table (every S&P-announced swap since 1963, each with its effective date, the
Tools
constituent_changes— Dated additions and removals from the S&P 500, sourced from Wikipedia's maintained Historical components of the S&P 500 table (every S&P-announced swap since 1963, each with its effective date, the tiindex_constituents— Current constituents of a major US or developed-markets equity index — ticker, name, GICS sector, and weight — sourced from the matching iShares index-tracking ETF's daily holdings file (the closest fishares_etf_holdings— Full reported holdings of one of six iShares index-tracking ETFs (IVV, IJH, IJR, IWB, IWM, EFA) as of the fund's own as of date — every position including cash, collateral and futures, each labeled wi