Finance
Data source: SEC EDGAR (N-PORT-P)
MCP Protocol
Endpoint
https://context.gnist.ai/mcp/etf/
claude_desktop_config.json
{
"mcpServers": {
"gnist-etf": {
"url": "https://context.gnist.ai/mcp/etf/",
"headers": {
"Gnist-API-Key": "YOUR_API_KEY"
}
}
}
}
Shell
curl -X POST "https://context.gnist.ai/mcp/etf/" \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-H "Gnist-API-Key: YOUR_API_KEY" \
-d '{"jsonrpc": "2.0", "method": "tools/call", "id": 1, "params": {"name": "get_etf_holdings", "arguments": {"ticker_or_cik": "example"}}}'
REST API
API Root
https://context.gnist.ai/rest/etf/
3 endpoints available:
GET /rest/etf/get_etf_holdingsGET /rest/etf/get_etf_allocationGET /rest/etf/report_feedback
Shell
curl "https://context.gnist.ai/rest/etf/get_etf_holdings?ticker_or_cik=example" \ -H "Gnist-API-Key: YOUR_API_KEY"
Python
import httpx
resp = httpx.get(
"https://context.gnist.ai/rest/etf/get_etf_holdings",
headers={"Gnist-API-Key": "YOUR_API_KEY"},
params={
"ticker_or_cik": "example"
},
)
print(resp.json())
Command Line
Command
gc etf
CLI documentation will be available when the GnistAI SDK is published.
Install
pip install gnistai
Available Tools (3)
get_etf_holdingsGet top portfolio holdings for an ETF or mutual fund.
| Parameter | Type | Required | Description |
|---|---|---|---|
ticker_or_cik | string | required | ETF or mutual fund ticker (e.g. "SPY", "QQQ", "VTI") or numeric CIK. |
limit | integer | optional | Maximum holdings to return, sorted by market value (default 25). (default: 25) |
get_etf_allocationGet asset allocation breakdown for an ETF or mutual fund.
| Parameter | Type | Required | Description |
|---|---|---|---|
ticker_or_cik | string | required | ETF or mutual fund ticker (e.g. "SPY", "QQQ", "BND") or numeric CIK. |
report_feedbackReport a bug, feature request, or general feedback for this data source.
| Parameter | Type | Required | Description |
|---|---|---|---|
feedback | string | required | |
feedback_type | string | optional | (default: "general") |