DEV Community

Mehdad Sharifi
Mehdad Sharifi

Posted on

How to Automate Monthly ETF & Mutual Fund Portfolio Holdings (SEC Form N-PORT) in Python, n8n & Claude MCP (Nov 07, 2026)

Extracting and normalizing Monthly ETF & Mutual Fund Portfolio Holdings (SEC Form N-PORT) is one of the highest-leverage data pipelines for quantitative researchers, B2B growth engineers, and AI agent builders—especially for parsing Vanguard, BlackRock iShares, and Fidelity ETF holdings XML tables with ISINs, CUSIPs, and exact net asset weights.

Instead of maintaining fragile local scrapers, XSLT parsers, or expensive proxy networks, you can pull clean, structured JSON, CSV, or Excel datasets in under 5 seconds using the SEC Form N-PORT Mutual Fund & ETF Portfolio Holdings API by Mehdad DataLabs.


Live Market & Regulatory Snapshot (Nov 07, 2026)

Here is a live sample of recent SEC EDGAR activity across tracked benchmark tickers (NVDA, AAPL, MSFT, AMZN):

Ticker Company Name Industry / SIC Latest SEC Form Filing Date Verified Link
NVDA NVIDIA CORP Semiconductors & Related Devices 4 2026-11-06 View Filing
AAPL Apple Inc. Electronic Computers 4 2026-11-05 View Filing
MSFT MICROSOFT CORP Services-Prepackaged Software 144 2026-11-05 View Filing
AMZN AMAZON COM INC Retail-Catalog & Mail-Order Houses 4 2026-11-04 View Filing

Quickstart: Run This API in Python (apify-client)

Install the official client:

pip install apify-client pandas
Enter fullscreen mode Exit fullscreen mode

Call the SEC Form N-PORT Mutual Fund & ETF Portfolio Holdings API endpoint directly from Python:

from apify_client import ApifyClient
import pandas as pd

client = ApifyClient("YOUR_APIFY_API_TOKEN")

# Run the Actor and wait for results
run = client.actor("mehdad-datalabs/sec-nport-etf-mutual-fund-holdings-xml-scraper").call()

# Load clean JSON records into a Pandas DataFrame
items = client.dataset(run["defaultDatasetId"]).list_items().items
df = pd.DataFrame(items)
print(df.head())
Enter fullscreen mode Exit fullscreen mode

Connect Directly to Claude Desktop, Cursor (MCP) & n8n

This Actor is natively compatible with Apify's Model Context Protocol (MCP) server (@apify/actors-mcp-server). You can also trigger it on a daily schedule inside n8n, Make, Clay, or Zapier to route real-time alerts into Slack, Telegram, HubSpot, or Google Sheets.


Explore the Full 20-API Financial, Biotech & B2B Intelligence Suite

Top comments (0)