Twelve Data MCP connector
OAuth 2.1/DCRAccounting & FinanceAnalyticsConnect to Twelve Data MCP for real-time and historical financial market data, including stock, forex, crypto, and ETF prices, technical indicators...
Twelve Data MCP connector
-
Install the SDK
Section titled “Install the SDK”Terminal window npm install @scalekit-sdk/nodeTerminal window pip install scalekit -
Set your credentials
Section titled “Set your credentials”Add your Scalekit credentials to your
.envfile. Find values in app.scalekit.com > Developers > API Credentials..env SCALEKIT_ENVIRONMENT_URL=<your-environment-url>SCALEKIT_CLIENT_ID=<your-client-id>SCALEKIT_CLIENT_SECRET=<your-client-secret> -
Authorize and make your first call
Section titled “Authorize and make your first call”quickstart.ts import { ScalekitClient } from '@scalekit-sdk/node'import 'dotenv/config'const scalekit = new ScalekitClient(process.env.SCALEKIT_ENV_URL,process.env.SCALEKIT_CLIENT_ID,process.env.SCALEKIT_CLIENT_SECRET,)const actions = scalekit.actionsconst connector = 'twelvedatamcp'const identifier = 'user_123'// Generate an authorization link for the userconst { link } = await actions.getAuthorizationLink({ connectionName: connector, identifier })console.log('Authorize Twelve Data MCP:', link)process.stdout.write('Press Enter after authorizing...')await new Promise(r => process.stdin.once('data', r))// Make your first callconst result = await actions.executeTool({connector,identifier,toolName: 'twelvedatamcp_get_api_usage',toolInput: {},})console.log(result)quickstart.py import osfrom scalekit.client import ScalekitClientfrom dotenv import load_dotenvload_dotenv()scalekit_client = ScalekitClient(env_url=os.getenv("SCALEKIT_ENV_URL"),client_id=os.getenv("SCALEKIT_CLIENT_ID"),client_secret=os.getenv("SCALEKIT_CLIENT_SECRET"),)actions = scalekit_client.actionsconnection_name = "twelvedatamcp"identifier = "user_123"# Generate an authorization link for the userlink_response = actions.get_authorization_link(connection_name=connection_name,identifier=identifier,)print("Authorize Twelve Data MCP:", link_response.link)input("Press Enter after authorizing...")# Make your first callresult = actions.execute_tool(tool_input={},tool_name="twelvedatamcp_get_api_usage",connection_name=connection_name,identifier=identifier,)print(result)
What you can do
Section titled “What you can do”Connect this agent connector to let your agent:
- Search symbol — Search for financial instruments by name or partial ticker, or find cross-listings
- Get time series, technical indicator, statistics — Get historical OHLCV (Open, High, Low, Close, Volume) time series data
- Conversion currency — Get exchange rate or convert an amount between currencies (fiat or crypto)
Tool list
Section titled “Tool list”Use the exact tool names from the Tool list below when you call execute_tool. If you’re not sure which name to use, list the tools available for the current user first.
twelvedatamcp_currency_conversion#Get exchange rate or convert an amount between currencies (fiat or crypto). Provide the currency pair as symbol (e.g. 'EUR/USD', 'BTC/USD', 'GBP/JPY'). Optionally provide an amount to get the converted value, or a date (YYYY-MM-DD) for a historical rate. Omit date for the real-time rate. Use for: 'EUR to USD', 'convert 1000 JPY to GBP', 'BTC price in EUR'.3 params
Get exchange rate or convert an amount between currencies (fiat or crypto). Provide the currency pair as symbol (e.g. 'EUR/USD', 'BTC/USD', 'GBP/JPY'). Optionally provide an amount to get the converted value, or a date (YYYY-MM-DD) for a historical rate. Omit date for the real-time rate. Use for: 'EUR to USD', 'convert 1000 JPY to GBP', 'BTC price in EUR'.
symbolstringrequiredCurrency pair in the format BASE/QUOTE, e.g. 'EUR/USD', 'BTC/USD', 'GBP/JPY'.amountnumberoptionalAmount to convert. If provided, the response includes the converted value for this amount.datestringoptionalDate for a historical exchange rate in YYYY-MM-DD format. Omit for the real-time rate.twelvedatamcp_get_analyst_data#Get analyst ratings, consensus price targets, and forward estimates for stocks and ETFs. data_type options: 'ratings' (buy/sell/hold counts, consensus rating, target price), 'price_target' (mean/high/low analyst price targets), 'recommendations' (historical recommendation trend over time), 'earnings_estimate' (quarterly and annual EPS estimates), 'revenue_estimate' (quarterly and annual revenue estimates), 'eps_trend' (how EPS estimates have shifted), 'eps_revisions' (upward/downward revision counts), 'growth_estimates' (next-quarter/year/5-year growth rate consensus). For mutual fund ratings use get_mutual_fund_data instead. Use for: 'analyst opinion on AAPL', 'price target for TSLA', 'EPS estimate for MSFT'.8 params
Get analyst ratings, consensus price targets, and forward estimates for stocks and ETFs. data_type options: 'ratings' (buy/sell/hold counts, consensus rating, target price), 'price_target' (mean/high/low analyst price targets), 'recommendations' (historical recommendation trend over time), 'earnings_estimate' (quarterly and annual EPS estimates), 'revenue_estimate' (quarterly and annual revenue estimates), 'eps_trend' (how EPS estimates have shifted), 'eps_revisions' (upward/downward revision counts), 'growth_estimates' (next-quarter/year/5-year growth rate consensus). For mutual fund ratings use get_mutual_fund_data instead. Use for: 'analyst opinion on AAPL', 'price target for TSLA', 'EPS estimate for MSFT'.
symbolstringrequiredTicker symbol of the stock or ETF, e.g. 'AAPL'.countrystringoptionalCountry name or ISO code to disambiguate the listing, e.g. 'United States' or 'US'.cusipstringoptionalCUSIP identifier; use as an alternative to symbol.data_typestringoptionalType of analyst data to retrieve. Defaults to 'ratings'. Options: ratings, price_target, recommendations, earnings_estimate, revenue_estimate, eps_trend, eps_revisions, growth_estimates.exchangestringoptionalExchange name to disambiguate the listing, e.g. 'NASDAQ'.figistringoptionalFIGI identifier; use as an alternative to symbol.isinstringoptionalISIN identifier; use as an alternative to symbol.mic_codestringoptionalMarket Identifier Code (MIC) to disambiguate the listing, e.g. 'XNGS'.twelvedatamcp_get_api_usage#Check Twelve Data API credit consumption and plan limits. Useful to verify authentication is working and to monitor quota.0 params
Check Twelve Data API credit consumption and plan limits. Useful to verify authentication is working and to monitor quota.
twelvedatamcp_get_company_info#Get company profile, executives, or logo. data_type='profile' returns description, sector, industry, employee count, CEO, and website. data_type='executives' returns key executives with name, title, and compensation. data_type='logo' returns the company logo URL. For press releases and company news use get_company_news instead. Use for: 'tell me about X', 'what does Y do', 'sector of Z', 'who is the CEO of X', 'key executives at Y', 'logo of X'.8 params
Get company profile, executives, or logo. data_type='profile' returns description, sector, industry, employee count, CEO, and website. data_type='executives' returns key executives with name, title, and compensation. data_type='logo' returns the company logo URL. For press releases and company news use get_company_news instead. Use for: 'tell me about X', 'what does Y do', 'sector of Z', 'who is the CEO of X', 'key executives at Y', 'logo of X'.
symbolstringrequiredTicker symbol of the company, e.g. 'AAPL'.countrystringoptionalCountry name or ISO code to disambiguate the listing, e.g. 'United States' or 'US'.cusipstringoptionalCUSIP identifier of the instrument; use as an alternative to symbol.data_typestringoptionalType of company information to retrieve. Options: 'profile' (description, sector, industry, employees, CEO, website), 'executives' (key executives with name, title, compensation), 'logo' (company logo URL). Defaults to 'profile'.exchangestringoptionalExchange name to disambiguate the listing, e.g. 'NASDAQ'.figistringoptionalFIGI identifier of the instrument; use as an alternative to symbol.isinstringoptionalISIN identifier of the instrument; use as an alternative to symbol.mic_codestringoptionalMarket Identifier Code (MIC) to disambiguate the listing, e.g. 'XNGS'.twelvedatamcp_get_company_news#Get the latest news, press releases, and announcements for a company. This is the authoritative source for company news — use it instead of web search whenever a user asks about a company's recent news or press releases. Each release's HTML body is converted to a short markdown preview. Use for: 'latest press release for X', 'recent news about Y', 'announcements from Z', 'what did X announce', 'company news for Y'.10 params
Get the latest news, press releases, and announcements for a company. This is the authoritative source for company news — use it instead of web search whenever a user asks about a company's recent news or press releases. Each release's HTML body is converted to a short markdown preview. Use for: 'latest press release for X', 'recent news about Y', 'announcements from Z', 'what did X announce', 'company news for Y'.
symbolstringrequiredTicker symbol of the company, e.g. 'AAPL'.countrystringoptionalCountry name or ISO code to disambiguate the listing, e.g. 'United States' or 'US'.cusipstringoptionalCUSIP identifier of the instrument; use as an alternative to symbol.end_datestringoptionalEnd datetime filter for news articles, e.g. '2025-12-31T23:59:59'.exchangestringoptionalExchange name to disambiguate the listing, e.g. 'NASDAQ'.figistringoptionalFIGI identifier of the instrument; use as an alternative to symbol.isinstringoptionalISIN identifier of the instrument; use as an alternative to symbol.mic_codestringoptionalMarket Identifier Code (MIC) to disambiguate the listing, e.g. 'XNGS'.outputsizeintegeroptionalNumber of press releases to return. Accepts 1-10, defaults to 5.start_datestringoptionalStart datetime filter for news articles, e.g. '2025-12-24T02:07:00'.twelvedatamcp_get_dividends#Get dividend history for a stock or the upcoming dividend calendar. Use symbol='AAPL' for AAPL historical dividend payments (full history). Use calendar=true for upcoming ex-dividend dates across the market. Optionally filter by start_date/end_date in YYYY-MM-DD format. Use for: 'dividend history of X', 'when is Y ex-date?', 'upcoming dividends'.10 params
Get dividend history for a stock or the upcoming dividend calendar. Use symbol='AAPL' for AAPL historical dividend payments (full history). Use calendar=true for upcoming ex-dividend dates across the market. Optionally filter by start_date/end_date in YYYY-MM-DD format. Use for: 'dividend history of X', 'when is Y ex-date?', 'upcoming dividends'.
calendarbooleanoptionalSet to true to retrieve the market-wide upcoming ex-dividend calendar instead of a single symbol's history. Defaults to false.countrystringoptionalCountry name or ISO code to disambiguate or filter results, e.g. 'United States' or 'US'.cusipstringoptionalCUSIP identifier of the instrument; use as an alternative to symbol.end_datestringoptionalEnd date filter in YYYY-MM-DD format to narrow dividend records.exchangestringoptionalExchange name to disambiguate the listing or filter results, e.g. 'NASDAQ'.figistringoptionalFIGI identifier of the instrument; use as an alternative to symbol.isinstringoptionalISIN identifier of the instrument; use as an alternative to symbol.mic_codestringoptionalMarket Identifier Code (MIC) to disambiguate the listing, e.g. 'XNGS'.start_datestringoptionalStart date filter in YYYY-MM-DD format to narrow dividend records.symbolstringoptionalTicker symbol to get dividend history for, e.g. 'AAPL'. Optional when calendar=true for market-wide calendar.twelvedatamcp_get_earliest_timestamp#Get the earliest available datetime for an instrument at a given interval. Returns the first date/time for which historical data exists (with its UNIX timestamp) -- i.e. how far back the history goes. This is metadata about data availability, not the price data itself. Use this to discover the valid start_date before calling get_time_series. Identify the instrument with any one of symbol, figi, isin, or cusip.7 params
Get the earliest available datetime for an instrument at a given interval. Returns the first date/time for which historical data exists (with its UNIX timestamp) -- i.e. how far back the history goes. This is metadata about data availability, not the price data itself. Use this to discover the valid start_date before calling get_time_series. Identify the instrument with any one of symbol, figi, isin, or cusip.
cusipstringoptionalCUSIP identifier of the instrument; use as an alternative to symbol.exchangestringoptionalExchange name to disambiguate the listing, e.g. 'NASDAQ'.figistringoptionalFIGI identifier of the instrument; use as an alternative to symbol.intervalstringoptionalTime interval to check data availability for. Valid values: 1min, 5min, 15min, 30min, 45min, 1h, 2h, 4h, 1day, 1week, 1month. Defaults to 1day.isinstringoptionalISIN identifier of the instrument; use as an alternative to symbol.mic_codestringoptionalMarket Identifier Code (MIC) to disambiguate the listing, e.g. 'XNGS'.symbolstringoptionalTicker symbol of the instrument, e.g. 'AAPL'. Use as the primary identifier.twelvedatamcp_get_earnings#Get earnings data or the market-wide earnings calendar. Use symbol='AAPL' for EPS history (actual vs estimate, surprise %). Use calendar=true for upcoming earnings events across the market. Combine calendar=true with start_date/end_date to filter the calendar to a date window (YYYY-MM-DD). outputsize caps rows for the market-wide calendar (default 50; ignored for single-symbol history). Use for: 'when does X report?', 'AAPL earnings history', 'upcoming earnings this week'.11 params
Get earnings data or the market-wide earnings calendar. Use symbol='AAPL' for EPS history (actual vs estimate, surprise %). Use calendar=true for upcoming earnings events across the market. Combine calendar=true with start_date/end_date to filter the calendar to a date window (YYYY-MM-DD). outputsize caps rows for the market-wide calendar (default 50; ignored for single-symbol history). Use for: 'when does X report?', 'AAPL earnings history', 'upcoming earnings this week'.
calendarbooleanoptionalSet to true to retrieve the market-wide upcoming earnings calendar instead of a single symbol's history. Defaults to false.countrystringoptionalCountry name or ISO code to filter results, e.g. 'United States' or 'US'.cusipstringoptionalCUSIP identifier of the instrument; use as an alternative to symbol.end_datestringoptionalEnd date filter for the earnings calendar in YYYY-MM-DD format.exchangestringoptionalExchange name to filter results, e.g. 'NASDAQ'.figistringoptionalFIGI identifier of the instrument; use as an alternative to symbol.isinstringoptionalISIN identifier of the instrument; use as an alternative to symbol.mic_codestringoptionalMarket Identifier Code (MIC) to disambiguate the listing, e.g. 'XNGS'.outputsizeintegeroptionalMaximum number of rows for the market-wide calendar. The calendar can have 1000+ entries per day worldwide, so defaults to 50. Pass a larger value or filter by country/exchange to narrow results. Ignored for single-symbol earnings history.start_datestringoptionalStart date filter for the earnings calendar in YYYY-MM-DD format.symbolstringoptionalTicker symbol to get EPS history for, e.g. 'AAPL'. Optional when calendar=true for market-wide calendar.twelvedatamcp_get_etf_data#Get ETF analytics. data_type controls what is returned: 'summary' (name, AUM, expense ratio, NAV, category, inception date), 'performance' (returns over 1M/3M/6M/YTD/1Y/3Y/5Y/10Y), 'risk' (Sharpe, Sortino, Treynor, standard deviation, beta, alpha), 'composition' (top holdings and sector/asset-class weights). Use for: ETF comparison, expense ratios, performance history, what's inside an ETF.6 params
Get ETF analytics. data_type controls what is returned: 'summary' (name, AUM, expense ratio, NAV, category, inception date), 'performance' (returns over 1M/3M/6M/YTD/1Y/3Y/5Y/10Y), 'risk' (Sharpe, Sortino, Treynor, standard deviation, beta, alpha), 'composition' (top holdings and sector/asset-class weights). Use for: ETF comparison, expense ratios, performance history, what's inside an ETF.
symbolstringrequiredTicker symbol of the ETF, e.g. 'SPY' or 'QQQ'.countrystringoptionalCountry name or ISO code to disambiguate the listing, e.g. 'United States' or 'US'.cusipstringoptionalCUSIP identifier of the ETF; use as an alternative to symbol.data_typestringoptionalType of ETF data to retrieve. Options: 'summary', 'performance', 'risk', 'composition'. Defaults to 'summary'.figistringoptionalFIGI identifier of the ETF; use as an alternative to symbol.isinstringoptionalISIN identifier of the ETF; use as an alternative to symbol.twelvedatamcp_get_financials#Get financial statements for a company. statement='income_statement' (or 'income') returns revenue, gross/operating/net income, and EPS. statement='balance_sheet' (or 'balance') returns assets, liabilities, equity, cash, and debt. statement='cash_flow' (or 'cf') returns operating, investing, financing cash flows and free cash flow. period can be 'annual' or 'quarterly'. Use for: 'X revenue', 'Y income statement', 'Z free cash flow', financial analysis.9 params
Get financial statements for a company. statement='income_statement' (or 'income') returns revenue, gross/operating/net income, and EPS. statement='balance_sheet' (or 'balance') returns assets, liabilities, equity, cash, and debt. statement='cash_flow' (or 'cf') returns operating, investing, financing cash flows and free cash flow. period can be 'annual' or 'quarterly'. Use for: 'X revenue', 'Y income statement', 'Z free cash flow', financial analysis.
symbolstringrequiredTicker symbol of the company, e.g. 'AAPL'.countrystringoptionalCountry name or ISO code to disambiguate the listing, e.g. 'United States' or 'US'.cusipstringoptionalCUSIP identifier of the instrument; use as an alternative to symbol.exchangestringoptionalExchange name to disambiguate the listing, e.g. 'NASDAQ'.figistringoptionalFIGI identifier of the instrument; use as an alternative to symbol.isinstringoptionalISIN identifier of the instrument; use as an alternative to symbol.mic_codestringoptionalMarket Identifier Code (MIC) to disambiguate the listing, e.g. 'XNGS'.periodstringoptionalReporting period: 'annual' for annual reports or 'quarterly' for quarterly reports. Defaults to 'annual'.statementstringoptionalFinancial statement type to retrieve. Options: 'income_statement' or 'income' for income statement, 'balance_sheet' or 'balance' for balance sheet, 'cash_flow' or 'cf' for cash flow statement. Defaults to 'income_statement'.twelvedatamcp_get_ipo_calendar#Get the IPO calendar -- upcoming and recent initial public offerings. Returns IPOs grouped by date, each with symbol, company name, exchange, price range, offer price, currency, and share count. All filters are optional. Use for: 'what IPOs are coming up?', 'IPOs on NASDAQ this month', 'recent IPOs'.5 params
Get the IPO calendar -- upcoming and recent initial public offerings. Returns IPOs grouped by date, each with symbol, company name, exchange, price range, offer price, currency, and share count. All filters are optional. Use for: 'what IPOs are coming up?', 'IPOs on NASDAQ this month', 'recent IPOs'.
countrystringoptionalCountry name or ISO code to filter IPOs, e.g. 'United States' or 'US'.end_datestringoptionalEnd of the date window in YYYY-MM-DD format.exchangestringoptionalFilter IPOs by exchange name, e.g. 'NASDAQ' or 'NYSE'.mic_codestringoptionalISO 10383 Market Identifier Code to filter by exchange, e.g. 'XNAS' for NASDAQ.start_datestringoptionalStart of the date window in YYYY-MM-DD format.twelvedatamcp_get_market_cap#Get market capitalization for a company. Without date params returns the current market cap from statistics (available on lower plans). With start_date and end_date returns a historical market cap time series. Use for: 'market cap of X', 'what is Y worth?', 'historical market cap of Z', 'how has X market cap changed over time?'10 params
Get market capitalization for a company. Without date params returns the current market cap from statistics (available on lower plans). With start_date and end_date returns a historical market cap time series. Use for: 'market cap of X', 'what is Y worth?', 'historical market cap of Z', 'how has X market cap changed over time?'
symbolstringrequiredTicker symbol of the company, e.g. 'AAPL'.countrystringoptionalCountry name or ISO code to disambiguate the listing, e.g. 'United States' or 'US'.cusipstringoptionalCUSIP identifier of the instrument; use as an alternative to symbol.end_datestringoptionalEnd date for historical market cap time series in YYYY-MM-DD format.exchangestringoptionalExchange name to disambiguate the listing, e.g. 'NASDAQ'.figistringoptionalFIGI identifier of the instrument; use as an alternative to symbol.isinstringoptionalISIN identifier of the instrument; use as an alternative to symbol.mic_codestringoptionalMarket Identifier Code (MIC) to disambiguate the listing, e.g. 'XNGS'.outputsizeintegeroptionalNumber of records per page for historical data. Defaults to 10.start_datestringoptionalStart date for historical market cap time series in YYYY-MM-DD format. When provided with end_date, returns a time series instead of the current snapshot.twelvedatamcp_get_market_movers#Get top market movers -- biggest gainers, losers, or most-active instruments. Specify the market type (stocks, etfs, mutual_funds, forex, crypto, commodities), direction (gainers, losers, or most_active -- most_active only for stocks), and optionally a country. Use for: 'top gainers today', 'biggest crypto losers', 'most active stocks'.4 params
Get top market movers -- biggest gainers, losers, or most-active instruments. Specify the market type (stocks, etfs, mutual_funds, forex, crypto, commodities), direction (gainers, losers, or most_active -- most_active only for stocks), and optionally a country. Use for: 'top gainers today', 'biggest crypto losers', 'most active stocks'.
countrystringoptionalCountry to filter results for stocks and ETFs, e.g. 'United States', 'United Kingdom', 'Germany'. Defaults to United States.directionstringoptionalWhich movers to return. Valid values: gainers, losers, most_active (most_active only available for stocks). Defaults to gainers.marketstringoptionalMarket type to query. Valid values: stocks, etfs, mutual_funds, forex, crypto, commodities. Defaults to stocks.outputsizeintegeroptionalNumber of movers to return. Defaults to 10.twelvedatamcp_get_market_state#Get current trading status and hours for exchanges. Leave all filters blank to return all major markets. Use for: 'is the market open?', 'NYSE hours', 'when does NASDAQ close?'3 params
Get current trading status and hours for exchanges. Leave all filters blank to return all major markets. Use for: 'is the market open?', 'NYSE hours', 'when does NASDAQ close?'
countrystringoptionalCountry name or ISO code to filter results, e.g. 'United States' or 'US'.exchangestringoptionalExchange name to filter results, e.g. 'NYSE', 'NASDAQ', 'LSE', 'BINANCE'.mic_codestringoptionalMarket Identifier Code (MIC) to filter results, e.g. 'XNYS'.twelvedatamcp_get_mutual_fund_data#Get mutual fund data -- summary, performance, risk, ratings, holdings, and more. data_type options: 'summary' (name, AUM, expense ratio, NAV, category, inception date), 'performance' (returns over 1M/3M/6M/YTD/1Y/3Y/5Y/10Y), 'risk' (Sharpe, Sortino, standard deviation, beta, alpha), 'ratings' (Morningstar star ratings and analyst ratings for the fund), 'composition' (top holdings and sector/asset-class weights), 'purchase_info' (minimum investment, load fees, availability), 'sustainability' (ESG scores and controversy metrics), 'full' (all of the above in one response). Note: 'ratings' here are fund quality ratings (Morningstar stars), NOT analyst buy/sell recommendations -- use get_analyst_data for those. Use for: 'expense ratio of VFIAX', 'top holdings of FXAIX', 'Morningstar rating of X'.6 params
Get mutual fund data -- summary, performance, risk, ratings, holdings, and more. data_type options: 'summary' (name, AUM, expense ratio, NAV, category, inception date), 'performance' (returns over 1M/3M/6M/YTD/1Y/3Y/5Y/10Y), 'risk' (Sharpe, Sortino, standard deviation, beta, alpha), 'ratings' (Morningstar star ratings and analyst ratings for the fund), 'composition' (top holdings and sector/asset-class weights), 'purchase_info' (minimum investment, load fees, availability), 'sustainability' (ESG scores and controversy metrics), 'full' (all of the above in one response). Note: 'ratings' here are fund quality ratings (Morningstar stars), NOT analyst buy/sell recommendations -- use get_analyst_data for those. Use for: 'expense ratio of VFIAX', 'top holdings of FXAIX', 'Morningstar rating of X'.
symbolstringrequiredTicker symbol of the mutual fund, e.g. 'VFIAX' or 'FXAIX'.countrystringoptionalCountry name or ISO code to disambiguate the listing, e.g. 'United States' or 'US'.cusipstringoptionalCUSIP identifier; use as an alternative to symbol.data_typestringoptionalType of mutual fund data to retrieve. Defaults to 'summary'. Options: summary, performance, risk, ratings, composition, purchase_info, sustainability, full.figistringoptionalFIGI identifier; use as an alternative to symbol.isinstringoptionalISIN identifier; use as an alternative to symbol.twelvedatamcp_get_price#Get the current real-time price for one or more symbols. Identify the instrument with any one of symbol, figi, isin, or cusip. For multiple symbols pass a comma-separated string such as 'AAPL,MSFT,BTC/USD'. Market indices (S&P 500, NASDAQ, Dow), options, and bonds are not supported; use an ETF proxy for an index (SPY, QQQ, DIA, IWM).8 params
Get the current real-time price for one or more symbols. Identify the instrument with any one of symbol, figi, isin, or cusip. For multiple symbols pass a comma-separated string such as 'AAPL,MSFT,BTC/USD'. Market indices (S&P 500, NASDAQ, Dow), options, and bonds are not supported; use an ETF proxy for an index (SPY, QQQ, DIA, IWM).
countrystringoptionalCountry name or ISO code to disambiguate the listing, e.g. 'United States' or 'US'.cusipstringoptionalCUSIP identifier of the instrument; use as an alternative to symbol.exchangestringoptionalExchange name to disambiguate the listing, e.g. 'NASDAQ'.figistringoptionalFIGI identifier of the instrument; use as an alternative to symbol.isinstringoptionalISIN identifier of the instrument; use as an alternative to symbol.mic_codestringoptionalMarket Identifier Code (MIC) to disambiguate the listing, e.g. 'XNGS'.prepostbooleanoptionalInclude pre-market and post-market price. Defaults to false.symbolstringoptionalTicker symbol of the instrument, e.g. 'AAPL'. For multiple symbols pass a comma-separated string such as 'AAPL,MSFT,BTC/USD'.twelvedatamcp_get_quote#Get a full real-time quote: open, high, low, close, volume, change %, 52-week range. Identify the instrument with any one of symbol, figi, isin, or cusip. Use for a detailed current market snapshot of a stock, ETF, forex pair, or crypto. Market indices (S&P 500, NASDAQ, Dow), options, and bonds are not supported -- use an ETF proxy (SPY, QQQ, DIA, IWM).8 params
Get a full real-time quote: open, high, low, close, volume, change %, 52-week range. Identify the instrument with any one of symbol, figi, isin, or cusip. Use for a detailed current market snapshot of a stock, ETF, forex pair, or crypto. Market indices (S&P 500, NASDAQ, Dow), options, and bonds are not supported -- use an ETF proxy (SPY, QQQ, DIA, IWM).
countrystringoptionalCountry name or ISO code to disambiguate the listing, e.g. 'United States' or 'US'.cusipstringoptionalCUSIP identifier of the instrument; use as an alternative to symbol.exchangestringoptionalExchange name to disambiguate the listing, e.g. 'NASDAQ'.figistringoptionalFIGI identifier of the instrument; use as an alternative to symbol.isinstringoptionalISIN identifier of the instrument; use as an alternative to symbol.mic_codestringoptionalMarket Identifier Code (MIC) to disambiguate the listing, e.g. 'XNGS'.prepostbooleanoptionalInclude pre-market and post-market data. Defaults to false.symbolstringoptionalTicker symbol of the instrument, e.g. 'AAPL'. Use as the primary identifier.twelvedatamcp_get_reference_data#Get reference and dictionary data -- exchanges, countries, instrument types, and more. data_type is required. Options: 'exchanges' (list of stock/ETF/forex exchanges with MIC codes), 'exchange_schedule' (trading hours and holiday schedule for an exchange), 'crypto_exchanges' (list of supported cryptocurrency exchanges), 'countries' (list of all supported countries with ISO codes), 'instrument_types' (list of all supported instrument types), 'etf_types' (ETF category/type classifications), 'fund_types' (mutual fund category/type classifications). Use for: 'list all exchanges', 'NYSE trading hours', 'what countries are supported?', 'ETF categories', 'is NASDAQ open on Friday?'.7 params
Get reference and dictionary data -- exchanges, countries, instrument types, and more. data_type is required. Options: 'exchanges' (list of stock/ETF/forex exchanges with MIC codes), 'exchange_schedule' (trading hours and holiday schedule for an exchange), 'crypto_exchanges' (list of supported cryptocurrency exchanges), 'countries' (list of all supported countries with ISO codes), 'instrument_types' (list of all supported instrument types), 'etf_types' (ETF category/type classifications), 'fund_types' (mutual fund category/type classifications). Use for: 'list all exchanges', 'NYSE trading hours', 'what countries are supported?', 'ETF categories', 'is NASDAQ open on Friday?'.
data_typestringrequiredType of reference data to retrieve. Required. Options: exchanges, exchange_schedule, crypto_exchanges, countries, instrument_types, etf_types, fund_types.countrystringoptionalCountry name or ISO code to filter results, e.g. 'United States' or 'US'.datestringoptionalSpecific date in YYYY-MM-DD format, used with exchange_schedule to check if the exchange is open on that date.exchangestringoptionalExchange name filter, e.g. 'NASDAQ'. Used primarily with exchange_schedule.fund_typestringoptionalFund category filter for etf_types or fund_types data, e.g. 'Large Blend'.instrument_typestringoptionalAsset class filter for exchanges lookup, e.g. 'ETF' or 'Stock'.mic_codestringoptionalISO 10383 Market Identifier Code, e.g. 'XNGS' for NASDAQ.twelvedatamcp_get_regulatory_data#Get regulatory and ownership data for a stock. data_type is required -- pick the one that matches the question. Options: 'insider_transactions' (recent insider buying/selling by officers and directors), 'institutional_holders' (top institutional shareholders with share counts), 'fund_holders' (top mutual-fund holders), 'direct_holders' (direct/registered shareholders), 'edgar_filings' (recent SEC filings: 10-K, 10-Q, 8-K, proxy, etc.), 'tax_info' (withholding rates, domicile, etc.). Use for: 'insider trades at X', 'who owns Y?', 'institutional ownership of Z', 'recent SEC filings for AAPL'.8 params
Get regulatory and ownership data for a stock. data_type is required -- pick the one that matches the question. Options: 'insider_transactions' (recent insider buying/selling by officers and directors), 'institutional_holders' (top institutional shareholders with share counts), 'fund_holders' (top mutual-fund holders), 'direct_holders' (direct/registered shareholders), 'edgar_filings' (recent SEC filings: 10-K, 10-Q, 8-K, proxy, etc.), 'tax_info' (withholding rates, domicile, etc.). Use for: 'insider trades at X', 'who owns Y?', 'institutional ownership of Z', 'recent SEC filings for AAPL'.
data_typestringrequiredType of regulatory/ownership data to retrieve. Required. Options: insider_transactions, institutional_holders, fund_holders, direct_holders, edgar_filings, tax_info.symbolstringrequiredTicker symbol of the stock, e.g. 'AAPL'.countrystringoptionalCountry name or ISO code to disambiguate the listing, e.g. 'United States' or 'US'.cusipstringoptionalCUSIP identifier; use as an alternative to symbol.exchangestringoptionalExchange name to disambiguate the listing, e.g. 'NASDAQ'.figistringoptionalFIGI identifier; use as an alternative to symbol.isinstringoptionalISIN identifier; use as an alternative to symbol.mic_codestringoptionalMarket Identifier Code (MIC) to disambiguate the listing, e.g. 'XNGS'.twelvedatamcp_get_splits#Get stock split history for a company or the upcoming splits calendar. Use symbol='AAPL' for AAPL historical split events including the ratio and date. Use calendar=true for upcoming stock splits across the market. Optionally filter by exchange, mic_code, country, or a start_date/end_date window in YYYY-MM-DD format. Use for: 'split history of X', 'upcoming stock splits', 'has AAPL ever split?'.10 params
Get stock split history for a company or the upcoming splits calendar. Use symbol='AAPL' for AAPL historical split events including the ratio and date. Use calendar=true for upcoming stock splits across the market. Optionally filter by exchange, mic_code, country, or a start_date/end_date window in YYYY-MM-DD format. Use for: 'split history of X', 'upcoming stock splits', 'has AAPL ever split?'.
calendarbooleanoptionalSet to true to retrieve the market-wide upcoming stock splits calendar instead of a single symbol's history. Defaults to false.countrystringoptionalCountry name or ISO code to disambiguate or filter results, e.g. 'United States' or 'US'.cusipstringoptionalCUSIP identifier of the instrument; use as an alternative to symbol.end_datestringoptionalEnd date filter in YYYY-MM-DD format to narrow split records.exchangestringoptionalExchange name to disambiguate the listing or filter results, e.g. 'NASDAQ'.figistringoptionalFIGI identifier of the instrument; use as an alternative to symbol.isinstringoptionalISIN identifier of the instrument; use as an alternative to symbol.mic_codestringoptionalMarket Identifier Code (MIC) to disambiguate the listing, e.g. 'XNGS'.start_datestringoptionalStart date filter in YYYY-MM-DD format to narrow split records.symbolstringoptionalTicker symbol to get split history for, e.g. 'AAPL'. Optional when calendar=true for market-wide calendar.twelvedatamcp_get_statistics#Get key fundamental statistics for a stock or ETF. Covers: market cap, enterprise value, P/E (trailing and forward), PEG, P/S, P/B, revenue, margins, ROA, ROE, EPS, beta, 52-week range, short ratio, dividend yield. Use for: 'P/E of X', 'market cap of Y', 'fundamental metrics for Z'.7 params
Get key fundamental statistics for a stock or ETF. Covers: market cap, enterprise value, P/E (trailing and forward), PEG, P/S, P/B, revenue, margins, ROA, ROE, EPS, beta, 52-week range, short ratio, dividend yield. Use for: 'P/E of X', 'market cap of Y', 'fundamental metrics for Z'.
symbolstringrequiredTicker symbol of the stock or ETF, e.g. 'AAPL'.countrystringoptionalCountry name or ISO code to disambiguate the listing, e.g. 'United States' or 'US'.cusipstringoptionalCUSIP identifier of the instrument; use as an alternative to symbol.exchangestringoptionalExchange name to disambiguate the listing, e.g. 'NASDAQ'.figistringoptionalFIGI identifier of the instrument; use as an alternative to symbol.isinstringoptionalISIN identifier of the instrument; use as an alternative to symbol.mic_codestringoptionalMarket Identifier Code (MIC) to disambiguate the listing, e.g. 'XNGS'.twelvedatamcp_get_technical_indicator#Calculate any technical indicator for a symbol. Supported indicators include: Trend/Overlap (SMA, EMA, WMA, DEMA, TEMA, TRIMA, KAMA, BBANDS, VWAP, ICHIMOKU, SAR, PIVOT_POINTS_HL, MA), Momentum (RSI, MACD, STOCH, STOCHRSI, ADX, CCI, MFI, AROON, WILLR, ROC, ULTOSC), Volume (OBV, AD, ADOSC, RVOL), Volatility (ATR, NATR, TRANGE, SUPERTREND), Statistics (CORREL, BETA, STDDEV, LINEARREG). For multiple symbols pass a comma-separated string. Use for: 'RSI for AAPL', 'MACD of MSFT', 'Bollinger Bands for BTC/USD'.20 params
Calculate any technical indicator for a symbol. Supported indicators include: Trend/Overlap (SMA, EMA, WMA, DEMA, TEMA, TRIMA, KAMA, BBANDS, VWAP, ICHIMOKU, SAR, PIVOT_POINTS_HL, MA), Momentum (RSI, MACD, STOCH, STOCHRSI, ADX, CCI, MFI, AROON, WILLR, ROC, ULTOSC), Volume (OBV, AD, ADOSC, RVOL), Volatility (ATR, NATR, TRANGE, SUPERTREND), Statistics (CORREL, BETA, STDDEV, LINEARREG). For multiple symbols pass a comma-separated string. Use for: 'RSI for AAPL', 'MACD of MSFT', 'Bollinger Bands for BTC/USD'.
indicatorstringrequiredTechnical indicator name (case-insensitive), e.g. 'RSI', 'MACD', 'SMA', 'BBANDS', 'ATR'.symbolstringrequiredTicker symbol of the instrument, e.g. 'AAPL'. For multiple symbols pass a comma-separated string such as 'AAPL,MSFT,BTC/USD'.countrystringoptionalCountry name or ISO code to disambiguate the listing, e.g. 'United States' or 'US'.cusipstringoptionalCUSIP identifier; use as an alternative to symbol.exchangestringoptionalExchange name to disambiguate the listing, e.g. 'NASDAQ'.extrastringoptionalJSON string for any additional indicator-specific parameters, e.g. '{"fast_k_period":5,"slow_k_period":3}' for STOCH.fast_periodintegeroptionalFast period for MACD and similar dual-period indicators.figistringoptionalFIGI identifier; use as an alternative to symbol.intervalstringoptionalTime interval for the indicator. Options: 1min, 5min, 15min, 30min, 45min, 1h, 2h, 4h, 1day, 1week, 1month. Defaults to '1day'.isinstringoptionalISIN identifier; use as an alternative to symbol.mic_codestringoptionalMarket Identifier Code (MIC) to disambiguate the listing, e.g. 'XNGS'.nbdevdnnumberoptionalNumber of standard deviations for the lower band in BBANDS.nbdevupnumberoptionalNumber of standard deviations for the upper band in BBANDS.outputsizeintegeroptionalNumber of data points to return. Default is 30.prepostbooleanoptionalInclude pre-market and post-market price data. Defaults to false.series_typestringoptionalPrice series to use for the calculation. Options: close, open, high, low. Defaults to close.signal_periodintegeroptionalSignal period for MACD.slow_periodintegeroptionalSlow period for MACD and similar dual-period indicators.symbol_2stringoptionalSecond symbol for CORREL or BETA calculations.time_periodintegeroptionalLookback window for the indicator, e.g. 14 for RSI, 20 for SMA or BBANDS.twelvedatamcp_get_time_series#Get historical OHLCV (Open, High, Low, Close, Volume) time series data. Identify the instrument with any one of symbol, figi, isin, or cusip. Specify an interval (1min to 1month), outputsize (number of data points, default 30, max 5000), and optional start_date/end_date in YYYY-MM-DD format. Use get_earliest_timestamp to discover how far back data goes before calling this tool. Market indices, options, and bonds are not supported -- use an ETF proxy (SPY, QQQ, DIA, IWM).12 params
Get historical OHLCV (Open, High, Low, Close, Volume) time series data. Identify the instrument with any one of symbol, figi, isin, or cusip. Specify an interval (1min to 1month), outputsize (number of data points, default 30, max 5000), and optional start_date/end_date in YYYY-MM-DD format. Use get_earliest_timestamp to discover how far back data goes before calling this tool. Market indices, options, and bonds are not supported -- use an ETF proxy (SPY, QQQ, DIA, IWM).
countrystringoptionalCountry name or ISO code to disambiguate the listing, e.g. 'United States' or 'US'.cusipstringoptionalCUSIP identifier of the instrument; use as an alternative to symbol.end_datestringoptionalEnd date for the time series in YYYY-MM-DD format. Defaults to today if omitted.exchangestringoptionalExchange name to disambiguate the listing, e.g. 'NASDAQ'.figistringoptionalFIGI identifier of the instrument; use as an alternative to symbol.intervalstringoptionalTime interval between data points. Valid values: 1min, 5min, 15min, 30min, 45min, 1h, 2h, 4h, 1day, 1week, 1month. Defaults to 1day.isinstringoptionalISIN identifier of the instrument; use as an alternative to symbol.mic_codestringoptionalMarket Identifier Code (MIC) to disambiguate the listing, e.g. 'XNGS'.outputsizeintegeroptionalNumber of data points to return. Defaults to 30, maximum 5000.prepostbooleanoptionalInclude pre-market and post-market data. Defaults to false.start_datestringoptionalStart date for the time series in YYYY-MM-DD format. When provided, overrides the outputsize window.symbolstringoptionalTicker symbol of the instrument, e.g. 'AAPL'. Use as the primary identifier.twelvedatamcp_search_symbol#Search for financial instruments by name or partial ticker, or find cross-listings. With cross_listings=false (default), search by name or partial ticker with an optional instrument_type filter (Stock, ETF, Mutual Fund, Forex, Cryptocurrency, Commodity). With cross_listings=true, find all exchanges where a symbol is listed. Indices, options, and bonds are not supported -- use an ETF proxy (e.g. SPY for S&P 500, QQQ for NASDAQ-100, DIA for the Dow).7 params
Search for financial instruments by name or partial ticker, or find cross-listings. With cross_listings=false (default), search by name or partial ticker with an optional instrument_type filter (Stock, ETF, Mutual Fund, Forex, Cryptocurrency, Commodity). With cross_listings=true, find all exchanges where a symbol is listed. Indices, options, and bonds are not supported -- use an ETF proxy (e.g. SPY for S&P 500, QQQ for NASDAQ-100, DIA for the Dow).
symbolstringrequiredTicker symbol or partial name to search for, e.g. 'AAPL' or 'Apple'.countrystringoptionalCountry name or ISO code to filter cross-listing results, e.g. 'United States' or 'US'.cross_listingsbooleanoptionalIf true, find all exchanges where the given symbol is listed. If false (default), search by name or partial ticker.exchangestringoptionalFilter by exchange name to narrow cross-listing results, e.g. 'NASDAQ'.instrument_typestringoptionalFilter by instrument type. Valid values: Stock, ETF, Mutual Fund, Forex, Cryptocurrency, Commodity. Only applies when cross_listings is false.mic_codestringoptionalMarket Identifier Code (MIC) to filter cross-listing results, e.g. 'XNGS'.outputsizeintegeroptionalMaximum number of results to return. Defaults to 10.