Quotes & Charts
get_quote
Get current quote and company data (price, market cap, PE ratio, 52-week range, etc.) for one or more stock symbols (comma-separated). A single symbol returns one quote object; multiple symbols return a paginated batch of quotes plus per-symbol errors.
| Parameter | Type | Description |
|---|---|---|
cursoroptional | ['string', 'null'] | Opaque continuation token from a previous response's `pageInfo.endCursor`; omitted = first page |
fieldsoptional | ['string', 'null'] | Comma-separated list of GraphQL field names to include; omitted = curated default set |
langoptional | ['string', 'null'] | Target language for translated text fields (BCP 47, e.g. "ja", "zh-Hant"); English or omitted = no translation |
limitoptional | ['integer', 'null'] | Maximum symbols per page; omitted = curated default (25) |
symbolsrequired | string | Comma-separated list of ticker symbols (e.g., "AAPL,MSFT,GOOG") |
get_chart
Get historical OHLCV candlestick chart data for one or more stock symbols (comma-separated). A single symbol supports start/end absolute timestamps and returns one chart; multiple symbols return a batch of charts plus per-symbol errors (interval/range only, no start/end).
| Parameter | Type | Description |
|---|---|---|
cursoroptional | ['string', 'null'] | Opaque continuation token from a previous response's `pageInfo.endCursor`; omitted = first page |
endoptional | ['integer', 'null'] | End date as Unix timestamp (seconds). Defaults to now when `start` is set. |
fieldsoptional | ['string', 'null'] | Comma-separated list of GraphQL field names to include; omitted = curated default set |
intervaloptional | ['string', 'null'] | Candle interval: 1m|5m|15m|30m|1h|1d|1wk|1mo|3mo (default: 1d) |
limitoptional | ['integer', 'null'] | Maximum candles per page; omitted = curated default (25) |
rangeoptional | ['string', 'null'] | Time range: 1d|5d|1mo|3mo|6mo|1y|2y|5y|10y|ytd|max (default: 1mo). Ignored when `start` is set. |
startoptional | ['integer', 'null'] | Start date as Unix timestamp (seconds). When provided, overrides `range`. |
symbolsrequired | string | One or more comma-separated ticker symbols (e.g., "AAPL" or "AAPL,MSFT,GOOG") |
get_spark
Get lightweight close-price sparklines for multiple symbols. Faster and smaller than get_charts — use when you only need price direction/trend across many symbols.
| Parameter | Type | Description |
|---|---|---|
fieldsoptional | ['string', 'null'] | Comma-separated list of GraphQL field names to include; omitted = curated default set |
intervaloptional | ['string', 'null'] | Candle interval: 1m|5m|15m|30m|1h|1d|1wk|1mo|3mo (default: 1d) |
rangeoptional | ['string', 'null'] | Time range: 1d|5d|1mo|3mo|6mo|1y|2y|5y|10y|ytd|max (default: 1mo) |
symbolsrequired | string | Comma-separated list of ticker symbols (e.g., "AAPL,MSFT,GOOG") |
get_calendar
Get a time-sorted calendar of upcoming financial events (earnings with estimates, ex-dividend and dividend-payment dates, options expirations, and — when FRED is configured — market-wide economic releases) across multiple symbols. Answers 'what's coming up for my portfolio?' in one call.
| Parameter | Type | Description |
|---|---|---|
fieldsoptional | ['string', 'null'] | Comma-separated list of GraphQL field names to include; omitted = all fields |
rangeoptional | ['string', 'null'] | Forward time window: 1d|5d|1mo|3mo|6mo|1y|2y|5y|10y|ytd|max (default: 1mo) |
symbolsrequired | string | Comma-separated list of ticker symbols (e.g., "AAPL,MSFT,TSLA") |
get_recommendations
Get similar stock recommendations and analyst ratings for a symbol.
| Parameter | Type | Description |
|---|---|---|
fieldsoptional | ['string', 'null'] | Comma-separated list of GraphQL field names to include; omitted = all fields |
limitoptional | ['integer', 'null'] | Maximum number of recommendations to return (default: 5) |
symbolrequired | string | Stock ticker symbol |
get_splits
Get historical stock split history for a symbol.
| Parameter | Type | Description |
|---|---|---|
fieldsoptional | ['string', 'null'] | Comma-separated list of GraphQL field names to include; omitted = curated default set |
rangeoptional | ['string', 'null'] | Time range: 1y|2y|5y|10y|max (default: max) |
symbolrequired | string | Stock ticker symbol |
Financials
get_financials
Get income statement, balance sheet, or cash flow statement for one or more stock symbols (comma-separated). A single symbol returns one statement; multiple symbols return a batch plus per-symbol errors.
| Parameter | Type | Description |
|---|---|---|
fieldsoptional | ['string', 'null'] | Comma-separated list of GraphQL field names to include; omitted = curated default set |
frequencyoptional | ['string', 'null'] | Reporting frequency: annual | quarterly (default: annual) |
metricsoptional | ['string', 'null'] | Comma-separated list of line-item metrics to filter to; omitted = all reported metrics |
statementrequired | string | Statement type: income | balance | cashflow |
symbolsrequired | string | One or more comma-separated ticker symbols (e.g., "AAPL" or "AAPL,MSFT,GOOGL") |
Indicators
get_indicators
Get all 42 technical analysis indicators (SMA, EMA, RSI, MACD, Bollinger Bands, Ichimoku, etc.) for one or more stock symbols (comma-separated). A single symbol returns one indicators object; multiple symbols return a paginated batch plus per-symbol errors.
| Parameter | Type | Description |
|---|---|---|
cursoroptional | ['string', 'null'] | Opaque continuation token from a previous response's `pageInfo.endCursor`; omitted = first page |
fieldsoptional | ['string', 'null'] | Comma-separated list of GraphQL field names to include; omitted = curated default set |
intervaloptional | ['string', 'null'] | Candle interval: 1d|1wk|1mo (default: 1d) |
limitoptional | ['integer', 'null'] | Maximum symbols per page (only applies when multiple symbols given); omitted = curated default (25) |
rangeoptional | ['string', 'null'] | Time range: 1mo|3mo|6mo|1y|2y|5y (default: 1y) |
symbolsrequired | string | One or more comma-separated ticker symbols (e.g., "AAPL" or "AAPL,MSFT,GOOG") |
Dividends
get_dividends
Get dividend history for one or more dividend-paying stocks (comma-separated symbols). A single symbol returns paginated dividend history plus analytics (CAGR, average payment, payout count); multiple symbols return a batch of dividend histories plus per-symbol errors (no analytics for batch).
| Parameter | Type | Description |
|---|---|---|
cursoroptional | ['string', 'null'] | Opaque continuation token from a previous response's `pageInfo.endCursor`; omitted = first page |
fieldsoptional | ['string', 'null'] | Comma-separated list of GraphQL field names to include; omitted = curated default set |
limitoptional | ['integer', 'null'] | Maximum dividend payments per page; omitted = curated default (25) |
rangeoptional | ['string', 'null'] | Time range: 1y|2y|5y|10y|max (default: max) |
symbolsrequired | string | One or more comma-separated ticker symbols (e.g., "AAPL" or "AAPL,KO,JNJ") |
Options
get_options
Get the options chain for a symbol. Provide an expiration timestamp to get a specific expiry, or omit for the nearest expiration.
| Parameter | Type | Description |
|---|---|---|
cursoroptional | ['string', 'null'] | Opaque continuation token from a previous response's `pageInfo.endCursor` (applied to both calls and puts); omitted = first page |
expirationoptional | ['integer', 'null'] | Expiration date as Unix timestamp in seconds (optional; defaults to nearest expiration) |
fieldsoptional | ['string', 'null'] | Comma-separated list of GraphQL field names to include; omitted = curated default set |
limitoptional | ['integer', 'null'] | Maximum contracts per side (calls/puts) per page; omitted = curated default (25) |
symbolrequired | string | Stock ticker symbol |
Market
get_market_summary
Get market overview with major indices and currencies for a region.
| Parameter | Type | Description |
|---|---|---|
fieldsoptional | ['string', 'null'] | Comma-separated list of GraphQL field names to include; omitted = curated default set |
langoptional | ['string', 'null'] | Target language for translated text fields (BCP 47, e.g. "ja", "zh-Hant"); English or omitted = no translation |
regionoptional | ['string', 'null'] | Region code: US|GB|DE|CA|AU|FR|IN|CN|HK|BR|TW|SG (default: US) |
get_fear_and_greed
Get the CNN Fear & Greed Index — market sentiment from extreme fear (0) to extreme greed (100).
| Parameter | Type | Description |
|---|---|---|
fieldsoptional | ['string', 'null'] | Comma-separated list of GraphQL field names to include; omitted = curated default set |
get_trending
Get currently trending stock tickers for a region.
| Parameter | Type | Description |
|---|---|---|
fieldsoptional | ['string', 'null'] | Comma-separated list of GraphQL field names to include; omitted = curated default set |
regionoptional | ['string', 'null'] | Region code: US|GB|DE|CA|AU|FR|IN|CN|HK|BR|TW|SG (default: US) |
get_indices
Get world market indices (S&P 500, DAX, Nikkei, etc.), optionally filtered by region.
| Parameter | Type | Description |
|---|---|---|
fieldsoptional | ['string', 'null'] | Comma-separated list of GraphQL field names to include; omitted = curated default set |
regionoptional | ['string', 'null'] | Region: americas|europe|asia-pacific|middle-east-africa|currencies (default: all) |
get_market_hours
Get current market hours and open/closed status for a region.
| Parameter | Type | Description |
|---|---|---|
fieldsoptional | ['string', 'null'] | Comma-separated list of GraphQL field names to include; omitted = all fields |
regionoptional | ['string', 'null'] | Region code: US|GB|DE|CA|AU|FR|IN|CN|HK|BR|TW|SG (default: US) |
get_sector
Get comprehensive sector data (overview, performance, top companies, ETFs) for one of the 11 GICS sectors.
| Parameter | Type | Description |
|---|---|---|
fieldsoptional | ['string', 'null'] | Comma-separated list of GraphQL field names to include; omitted = curated default set |
langoptional | ['string', 'null'] | Target language for translated text fields (BCP 47, e.g. "ja", "zh-Hant"); English or omitted = no translation |
sectorrequired | string | Sector slug: technology|financial-services|consumer-cyclical|communication-services| healthcare|industrials|consumer-defensive|energy|basic-materials|real-estate|utilities |
get_industry
Get comprehensive industry data (overview, performance, top companies) for a specific industry slug.
| Parameter | Type | Description |
|---|---|---|
fieldsoptional | ['string', 'null'] | Comma-separated list of GraphQL field names to include; omitted = curated default set |
industryrequired | string | Industry slug (e.g., semiconductors, biotechnology, banks-diversified) |
langoptional | ['string', 'null'] | Target language for translated text fields (BCP 47, e.g. "ja", "zh-Hant"); English or omitted = no translation |
Discovery
search
Search for stocks, ETFs, and companies by name or ticker symbol.
| Parameter | Type | Description |
|---|---|---|
cursoroptional | ['string', 'null'] | Opaque continuation token from a previous response's `pageInfo.endCursor`; omitted = first page |
fieldsoptional | ['string', 'null'] | Comma-separated list of GraphQL field names to include; omitted = curated default set |
langoptional | ['string', 'null'] | Target language for translated text fields (BCP 47, e.g. "ja", "zh-Hant"); English or omitted = no translation |
limitoptional | ['integer', 'null'] | Maximum quotes per page; omitted = curated default (25) |
queryrequired | string | Search query string (company name or ticker symbol) |
lookup
Discover tickers filtered by type (equity, ETF, mutual fund, index, future, currency, cryptocurrency).
| Parameter | Type | Description |
|---|---|---|
fieldsoptional | ['string', 'null'] | Comma-separated list of GraphQL field names to include; omitted = curated default set |
langoptional | ['string', 'null'] | Target language for translated text fields (BCP 47, e.g. "ja", "zh-Hant"); English or omitted = no translation |
logooptional | ['boolean', 'null'] | Include logo URLs (requires an additional upstream API call); default: false |
queryrequired | string | Search query (company name or ticker symbol) |
query_typeoptional | ['string', 'null'] | Filter by type: equity|etf|mutualfund|index|future|currency|cryptocurrency (default: all) |
screener
Get results from a predefined stock screener (e.g., most-actives, day-gainers, undervalued-growth-stocks).
| Parameter | Type | Description |
|---|---|---|
countoptional | ['integer', 'null'] | Number of results to return (default: 25, max: 250) |
fieldsoptional | ['string', 'null'] | Comma-separated list of GraphQL field names to include; omitted = curated default set |
screener_typerequired | string | Screener type: most-actives | day-gainers | day-losers | growth-technology-stocks | undervalued-growth-stocks | undervalued-large-caps | aggressive-small-caps | small-cap-gainers | most-shorted-stocks | high-yield-bond | top-mutual-funds | conservative-foreign-funds | portfolio-anchors | solid-large-growth-funds | solid-midcap-growth-funds |
News & Feeds
get_news
Get recent news. If a symbol is provided, returns news for that stock; otherwise returns general market news.
| Parameter | Type | Description |
|---|---|---|
cursoroptional | ['string', 'null'] | Opaque continuation token from a previous response's `pageInfo.endCursor`; omitted = first page |
fieldsoptional | ['string', 'null'] | Comma-separated list of GraphQL field names to include; omitted = curated default set |
langoptional | ['string', 'null'] | Target language for translated text fields (BCP 47, e.g. "ja", "zh-Hant"); English or omitted = no translation |
limitoptional | ['integer', 'null'] | Maximum articles per page; omitted = curated default (25) |
symboloptional | ['string', 'null'] | Stock ticker symbol (optional; omit for general market news) |
get_feeds
Fetch RSS/Atom news from financial publishers (Bloomberg, WSJ, MarketWatch, FT, SEC, etc.).
| Parameter | Type | Description |
|---|---|---|
cursoroptional | ['string', 'null'] | Opaque continuation token from a previous response's `pageInfo.endCursor`; omitted = first page |
fieldsoptional | ['string', 'null'] | Comma-separated list of GraphQL field names to include; omitted = curated default set |
limitoptional | ['integer', 'null'] | Maximum entries per page; omitted = curated default (25) |
sourcesoptional | ['string', 'null'] | Comma-separated feed sources: federal-reserve|sec|marketwatch|cnbc|bloomberg|ft|nyt| guardian|investing|bea|ecb|cfpb|wsj|fortune|businesswire|coindesk|cointelegraph| techcrunch|hackernews|oilprice|calculatedrisk|scmp|nikkei|boe|venturebeat|yc| economist|financialpost|ftlex|ritholtz (default: marketwatch, bloomberg, wsj, fortune) |
Analysis
get_holders
Get ownership data for a stock: major holders, institutional/fund ownership, or insider activity.
| Parameter | Type | Description |
|---|---|---|
cursoroptional | ['string', 'null'] | Opaque continuation token from a previous response's `pageInfo.endCursor`; omitted = first page |
fieldsoptional | ['string', 'null'] | Comma-separated list of GraphQL field names to include; omitted = curated default set |
holder_typerequired | string | Holder type: major | institutional | mutualfund | insider-transactions | insider-purchases | insider-roster |
limitoptional | ['integer', 'null'] | Maximum entries per page for holder types with a list (institutional, mutualfund, insider-transactions, insider-roster); omitted = curated default (25). No-op for major/insider-purchases (no list). |
symbolrequired | string | Stock ticker symbol |
get_analysis
Get analyst data for a stock: recommendation trends, upgrades/downgrades, earnings estimates, or earnings history.
| Parameter | Type | Description |
|---|---|---|
analysis_typerequired | string | Analysis type: recommendations | upgrades-downgrades | earnings-estimate | earnings-history |
fieldsoptional | ['string', 'null'] | Comma-separated list of GraphQL field names to include; omitted = curated default set |
symbolrequired | string | Stock ticker symbol |
Risk
get_risk
Get risk analytics: VaR (95/99%), Sharpe/Sortino/Calmar ratios, beta, and maximum drawdown for a symbol.
| Parameter | Type | Description |
|---|---|---|
benchmarkoptional | ['string', 'null'] | Benchmark symbol for beta calculation (e.g., "SPY") |
fieldsoptional | ['string', 'null'] | Comma-separated list of GraphQL field names to include; omitted = curated default set |
intervaloptional | ['string', 'null'] | Candle interval: 1d|1wk (default: 1d) |
rangeoptional | ['string', 'null'] | Time range: 1y|2y|5y (default: 1y) |
symbolrequired | string | Stock ticker symbol |
FRED & Treasury
get_fred_series
Get FRED macroeconomic time series data (e.g., FEDFUNDS, CPIAUCSL, GDP, UNRATE). Requires FRED_API_KEY env var.
| Parameter | Type | Description |
|---|---|---|
cursoroptional | ['string', 'null'] | Opaque continuation token from a previous response's `pageInfo.endCursor`; omitted = first page |
fieldsoptional | ['string', 'null'] | Comma-separated list of GraphQL field names to include; omitted = all fields |
idrequired | string | FRED series ID (e.g., "FEDFUNDS", "CPIAUCSL", "GDP", "UNRATE") |
limitoptional | ['integer', 'null'] | Maximum observations per page; omitted = curated default (25) |
get_treasury_yields
Get US Treasury yield curve data (1m through 30y) for a given year. No API key required.
| Parameter | Type | Description |
|---|---|---|
cursoroptional | ['string', 'null'] | Opaque continuation token from a previous response's `pageInfo.endCursor`; omitted = first page |
fieldsoptional | ['string', 'null'] | Comma-separated list of GraphQL field names to include; omitted = all fields |
limitoptional | ['integer', 'null'] | Maximum rows per page; omitted = curated default (25) |
yearoptional | ['integer', 'null'] | Year to fetch yield curve data for (default: current year) |
EDGAR
get_edgar_facts
Get SEC EDGAR XBRL structured financial data (all reported accounting concepts) for a company. Requires EDGAR_EMAIL env var.
| Parameter | Type | Description |
|---|---|---|
conceptsoptional | ['string', 'null'] | Comma-separated XBRL concept names to filter to (e.g. "Revenues,Assets"); omitted = curated defaults (headline financials) |
cursoroptional | ['string', 'null'] | Opaque continuation token from a previous response's `pageInfo.endCursor`; omitted = first page |
fieldsoptional | ['string', 'null'] | Comma-separated GraphQL sub-fields to include per concept (e.g. "concept,dataPoints"); omitted = curated default set |
limitoptional | ['integer', 'null'] | Maximum data points per concept per page; omitted = curated default (25). Applied uniformly across every returned concept. |
symbolrequired | string | Stock ticker symbol (e.g., "AAPL", "MSFT", "TSLA") |
taxonomyoptional | ['string', 'null'] | XBRL taxonomy (default: "us-gaap"); also try "ifrs-full" or "dei" |
get_edgar_submissions
Get SEC filing history and company metadata from EDGAR (up to 1000 most recent filings). Requires EDGAR_EMAIL env var.
| Parameter | Type | Description |
|---|---|---|
cursoroptional | ['string', 'null'] | Opaque continuation token from a previous response's `pageInfo.endCursor`; omitted = first page |
fieldsoptional | ['string', 'null'] | Comma-separated list of GraphQL field names to include; omitted = all fields |
limitoptional | ['integer', 'null'] | Maximum filings per page; omitted = curated default (25) |
symbolrequired | string | Stock ticker symbol (e.g., "AAPL", "MSFT", "TSLA") |
get_edgar_search
Full-text search across SEC EDGAR filings with optional form type and date filters. Requires EDGAR_EMAIL env var.
| Parameter | Type | Description |
|---|---|---|
end_dateoptional | ['string', 'null'] | End date filter in YYYY-MM-DD format |
formsoptional | ['string', 'null'] | Comma-separated form types to filter (e.g., "10-K,10-Q,8-K") |
fromoptional | ['integer', 'null'] | Pagination offset; omitted = 0 (first page) |
queryrequired | string | Search query (keywords in filing text) |
sizeoptional | ['integer', 'null'] | Page size; omitted = 100, max 100 |
start_dateoptional | ['string', 'null'] | Start date filter in YYYY-MM-DD format |
Transcripts
get_transcripts
Get earnings call transcripts for a company. Returns paragraph-by-paragraph text (speaker, timestamp, text), paginated via paragraph_limit/paragraph_cursor since a full call can be tens of thousands of tokens.
| Parameter | Type | Description |
|---|---|---|
fieldsoptional | ['string', 'null'] | Comma-separated list of GraphQL field names to include; omitted = curated default set |
langoptional | ['string', 'null'] | Target language for translated text fields (BCP 47, e.g. "ja", "zh-Hant"); English or omitted = no translation |
limitoptional | ['integer', 'null'] | Maximum number of transcripts to return (default: all) |
paragraph_cursoroptional | ['string', 'null'] | Opaque continuation token from a previous response's paragraphs `pageInfo.endCursor`; omitted = first page |
paragraph_limitoptional | ['integer', 'null'] | Maximum transcript paragraphs per page; omitted = curated default (25). A full call's `text` is returned as paginated paragraphs, not one giant blob |
symbolrequired | string | Stock ticker symbol |