polygon-mcp
Provides tools for accessing Polygon.io market data, including stocks, options, forex, and crypto data such as trades, quotes, aggregates, technical indicators, and reference data.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@polygon-mcp What's the current price of AAPL?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Polygon.io MCP Server
MCP server wrapping the Polygon.io Python SDK for stocks, options, forex, and crypto market data.
Installation
cd polygon_mcp
uv pip install -e .Related MCP server: Stock Trade MCP Server
Configuration
Set your Polygon.io API key as an environment variable:
export POLYGON_API_KEY="your_api_key_here"Usage
Run directly
uv run polygon-mcpMCP Configuration
Add to your MCP config (e.g., ~/.kiro/settings/mcp.json):
{
"mcpServers": {
"polygon": {
"command": "uv",
"args": ["--directory", "/path/to/polygon_mcp", "run", "polygon-mcp"],
"env": {
"POLYGON_API_KEY": "your_api_key_here"
}
}
}
}Available Tools
Stocks
stocks_get_sma- Simple Moving Averagestocks_get_ema- Exponential Moving Averagestocks_get_rsi- Relative Strength Indexstocks_get_macd- MACDstocks_get_trades- Trades for a datestocks_get_trades_v3- Trades v3 APIstocks_get_quotes- Quotes for a datestocks_get_quotes_v3- NBBO quotes v3stocks_get_last_trade- Most recent tradestocks_get_last_quote- Most recent quotestocks_get_daily_open_close- Daily OHLCVstocks_get_aggregate_bars- Candles/barsstocks_get_grouped_daily_bars- Market-wide daily barsstocks_get_previous_close- Previous day OHLCVstocks_get_snapshot- Current snapshotstocks_get_snapshot_all- All snapshotsstocks_get_current_price- Current pricestocks_get_gainers_and_losers- Top movers
Options
options_get_sma/ema/rsi/macd- Technical indicatorsoptions_get_trades- Option tradesoptions_get_quotes- Option quotesoptions_get_last_trade- Most recent tradeoptions_get_daily_open_close- Daily OHLCVoptions_get_aggregate_bars- Candles/barsoptions_get_previous_close- Previous day OHLCoptions_get_snapshot- Option snapshotoptions_build_symbol- Build option symboloptions_parse_symbol- Parse option symbol
Forex
forex_get_sma/ema/rsi/macd- Technical indicatorsforex_real_time_conversion- Currency conversionforex_get_historic_ticks- Historic ticksforex_get_quotes- NBBO quotesforex_get_last_quote- Last quoteforex_get_aggregate_bars- Candles/barsforex_get_grouped_daily_bars- Market-wide dailyforex_get_previous_close- Previous day OHLCforex_get_gainers_and_losers- Top movers
Crypto
crypto_get_sma/ema/rsi/macd- Technical indicatorscrypto_get_historic_trades- Historic tradescrypto_get_trades- Trades in time rangecrypto_get_last_trade- Last tradecrypto_get_daily_open_close- Daily open/closecrypto_get_aggregate_bars- Candles/barscrypto_get_grouped_daily_bars- Market-wide dailycrypto_get_previous_close- Previous day OHLCcrypto_get_snapshot_all- All snapshotscrypto_get_snapshot- Single snapshotcrypto_get_gainers_and_losers- Top moverscrypto_get_level2_book- Order book
Reference
reference_get_tickers- Query tickersreference_get_ticker_types- Ticker type mappingsreference_get_ticker_details- Ticker detailsreference_get_option_contract- Option contract inforeference_get_option_contracts- List option contractsreference_get_ticker_news- News articlesreference_get_stock_dividends- Dividend historyreference_get_stock_financials- SEC financialsreference_get_stock_splits- Split historyreference_get_market_holidays- Market holidaysreference_get_market_status- Market statusreference_get_conditions- Polygon conditionsreference_get_exchanges- Exchange list
Available Tools
71 toolscrypto_get_aggregate_barsB
Get aggregate bars for a crypto pair. Symbol format: X:BTCUSD.
Inputs: symbol (required), to_date (required), from_date (required), sort, +4 more.
crypto_get_daily_open_closeB
Get open/close for a crypto pair on a date (YYYY-MM-DD).
Inputs: date (required), to_symbol (required), from_symbol (required), adjusted.
crypto_get_emaC
Get Exponential Moving Average for a crypto pair.
Inputs: symbol (required), limit, order, adjusted, +4 more.
crypto_get_gainers_and_losersB
Get top 20 crypto gainers or losers.
Inputs: direction.
crypto_get_grouped_daily_barsB
Get daily OHLC for entire crypto market on a date (YYYY-MM-DD).
Inputs: date (required), adjusted.
crypto_get_historic_tradesC
Get historic trades for a crypto pair on a date (YYYY-MM-DD).
Inputs: date (required), to_symbol (required), from_symbol (required), limit.
crypto_get_last_tradeB
Get the last trade for a crypto pair.
Inputs: to_symbol (required), from_symbol (required).
crypto_get_level2_bookB
Get level 2 order book for a crypto pair.
Inputs: symbol (required).
crypto_get_macdC
Get MACD for a crypto pair.
Inputs: symbol (required), limit, order, adjusted, +6 more.
crypto_get_previous_closeB
Get previous day's OHLC for a crypto pair.
Inputs: symbol (required), adjusted.
crypto_get_rsiC
Get Relative Strength Index for a crypto pair.
Inputs: symbol (required), limit, order, adjusted, +4 more.
crypto_get_smaC
Get Simple Moving Average for a crypto pair. Symbol format: X:BTCUSD.
Inputs: symbol (required), limit, order, adjusted, +4 more.
crypto_get_snapshotB
Get snapshot for a single crypto pair.
Inputs: symbol (required).
crypto_get_snapshot_allC
Get snapshots for specified crypto symbols.
Inputs: symbols (required).
crypto_get_tradesC
Get trades for a crypto pair in a time range.
Inputs: symbol (required), sort, limit, order, +1 more.
forex_get_aggregate_barsB
Get aggregate bars for a forex pair. Symbol format: C:EURUSD.
Inputs: symbol (required), to_date (required), from_date (required), sort, +4 more.
forex_get_emaC
Get Exponential Moving Average for a forex pair.
Inputs: symbol (required), limit, order, adjusted, +4 more.
forex_get_gainers_and_losersB
Get top 20 forex gainers or losers.
Inputs: direction.
forex_get_grouped_daily_barsA
Get daily OHLC for entire forex market on a date (YYYY-MM-DD).
Inputs: date (required), adjusted.
forex_get_historic_ticksB
Get historic trade ticks for a forex pair on a date (YYYY-MM-DD).
Inputs: date (required), to_symbol (required), from_symbol (required), limit.
forex_get_last_quoteB
Get the last quote for a forex pair.
Inputs: to_symbol (required), from_symbol (required).
forex_get_macdC
Get MACD for a forex pair.
Inputs: symbol (required), limit, order, adjusted, +6 more.
forex_get_previous_closeB
Get previous day's OHLC for a forex pair.
Inputs: symbol (required), adjusted.
forex_get_quotesC
Get NBBO quotes for a forex pair.
Inputs: symbol (required), sort, limit, order, +1 more.
forex_get_rsiC
Get Relative Strength Index for a forex pair.
Inputs: symbol (required), limit, order, adjusted, +4 more.
forex_get_smaB
Get Simple Moving Average for a forex pair. Symbol format: C:EURUSD.
Inputs: symbol (required), limit, order, adjusted, +4 more.
forex_real_time_conversionA
Convert currency using latest market rates. e.g., USD to EUR.
Inputs: amount (required), to_symbol (required), from_symbol (required), precision.
options_build_symbolC
Build an option symbol. expiry: YYMMDD, call_or_put: 'c'/'call' or 'p'/'put'.
Inputs: expiry (required), call_or_put (required), strike_price (required), underlying_symbol (required). Returns: result
options_get_aggregate_barsC
Get aggregate bars for an option contract. Dates in YYYY-MM-DD format.
Inputs: symbol (required), to_date (required), from_date (required), sort, +4 more.
options_get_daily_open_closeC
Get OHLCV for an option contract on a date (YYYY-MM-DD).
Inputs: date (required), symbol (required), adjusted.
options_get_emaC
Get Exponential Moving Average for an option contract.
Inputs: symbol (required), limit, order, adjusted, +4 more.
options_get_last_tradeC
Get the most recent trade for an option contract.
Inputs: ticker (required).
options_get_macdC
Get MACD for an option contract.
Inputs: symbol (required), limit, order, adjusted, +6 more.
options_get_previous_closeB
Get previous day's OHLC for an option contract.
Inputs: ticker (required), adjusted.
options_get_quotesC
Get quotes for an option contract.
Inputs: option_symbol (required), sort, limit, order, +1 more.
options_get_rsiC
Get Relative Strength Index for an option contract.
Inputs: symbol (required), limit, order, adjusted, +4 more.
options_get_smaC
Get Simple Moving Average for an option contract.
Inputs: symbol (required), limit, order, adjusted, +4 more.
options_get_snapshotC
Get snapshot for an option contract.
Inputs: option_symbol (required), underlying_symbol (required).
options_get_tradesC
Get trades for an option contract.
Inputs: option_symbol (required), sort, limit, order, +1 more.
options_parse_symbolB
Parse an option symbol to extract underlying, expiry, type, strike.
Inputs: option_symbol (required).
reference_get_conditionsC
List all conditions that Polygon uses.
Inputs: sort, limit, data_type, asset_class, +1 more.
reference_get_exchangesC
List all exchanges that Polygon knows about.
Inputs: locale, asset_class.
reference_get_market_holidaysA
Get upcoming market holidays and their open/close times.
Inputs: no named parameters.
reference_get_market_statusB
Get current trading status of exchanges and markets.
Inputs: no named parameters.
reference_get_option_contractC
Get info about an option contract.
Inputs: ticker (required), as_of_date.
reference_get_option_contractsC
List option contracts with various filters.
Inputs: sort, limit, order, expired, +3 more.
reference_get_stock_dividendsC
Get historical cash dividends for stocks.
Inputs: sort, limit, order, ticker, +1 more.
reference_get_stock_financialsC
Get historical financial data for a stock from SEC filings.
Inputs: cik, sic, sort, limit, +7 more.
reference_get_stock_splitsC
Get historical stock splits.
Inputs: sort, limit, order, ticker, +2 more.
reference_get_ticker_detailsC
Get detailed info about a ticker and the company behind it.
Inputs: symbol (required), date.
reference_get_ticker_newsC
Get news articles for a ticker symbol.
Inputs: sort, limit, order, symbol.
reference_get_tickersB
Query all ticker symbols supported by Polygon (stocks, crypto, forex).
Inputs: sort, limit, order, active, +5 more.
reference_get_ticker_typesC
Get mapping of ticker types to their descriptive names.
Inputs: locale, asset_class.
stocks_get_aggregate_barsC
Get aggregate bars (candles) for a stock. Dates in YYYY-MM-DD format.
Inputs: symbol (required), to_date (required), from_date (required), sort, +4 more.
stocks_get_current_priceC
Get current market price for a stock.
Inputs: symbol (required). Returns: result
stocks_get_daily_open_closeB
Get OHLCV and after-hours prices for a stock on a date (YYYY-MM-DD).
Inputs: date (required), symbol (required), adjusted.
stocks_get_emaC
Get Exponential Moving Average for a stock symbol.
Inputs: symbol (required), limit, order, adjusted, +4 more.
stocks_get_gainers_and_losersA
Get top 20 gainers or losers. direction: 'gainers' or 'losers'.
Inputs: direction.
stocks_get_grouped_daily_barsA
Get daily OHLCV for entire stock market on a date (YYYY-MM-DD).
Inputs: date (required), adjusted.
stocks_get_last_quoteB
Get the most recent NBBO quote for a stock.
Inputs: symbol (required).
stocks_get_last_tradeC
Get the most recent trade for a stock.
Inputs: symbol (required).
stocks_get_macdC
Get MACD for a stock symbol.
Inputs: symbol (required), limit, order, adjusted, +6 more.
stocks_get_previous_closeC
Get previous day's OHLCV for a stock.
Inputs: symbol (required), adjusted.
stocks_get_quotesA
Get quotes for a stock on a specific date (YYYY-MM-DD).
Inputs: date (required), symbol (required), limit.
stocks_get_quotes_v3B
Get NBBO quotes for a stock in a given time range (v3 API).
Inputs: symbol (required), sort, limit, order, +1 more.
stocks_get_rsiC
Get Relative Strength Index for a stock symbol.
Inputs: symbol (required), limit, order, adjusted, +4 more.
stocks_get_smaC
Get Simple Moving Average for a stock symbol.
Inputs: symbol (required), limit, order, adjusted, +4 more.
stocks_get_snapshotB
Get current snapshot for a stock (minute, day, prev day agg, last trade/quote).
Inputs: symbol (required).
stocks_get_snapshot_allB
Get snapshots for all or specified stock symbols.
Inputs: symbols.
stocks_get_tradesC
Get trades for a stock on a specific date (YYYY-MM-DD).
Inputs: date (required), symbol (required), limit.
stocks_get_trades_v3C
Get trades for a stock in a given time range (v3 API).
Inputs: symbol (required), sort, limit, order, +1 more.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 71 tools
The asset-class prefixes (stocks_, crypto_, forex_, options_) help differentiate tools, but within each class there are overlapping functions like get_trades vs get_trades_v3 and multiple snapshot variants (stocks_get_snapshot vs stocks_get_snapshot_all). Descriptions clarify some differences, but agents could easily confuse similar endpoints.
Tool names follow a consistent asset_class_verb_noun pattern with underscores (e.g., stocks_get_ema, crypto_get_aggregate_bars). Minor deviations like options_build_symbol and forex_real_time_conversion don't break the pattern, and the v3 suffix is consistently used.
With 71 tools, this is far beyond a typical MCP server's scope. While the financial domain is broad, the repetitive per-asset-class duplication (e.g., get_rsi for four asset classes) makes the tool set feel bloated. It could be consolidated with a single parameterized endpoint.
The tool set covers core market data (quotes, trades, aggregates, indicators) and reference data for stocks, options, forex, and crypto. However, there are notable gaps: no level 2 order book for stocks/options/forex, no forex/options snapshots, and limited news coverage (only stocks). The presence of v3 variants suggests an inconsistent API surface.
Maintenance
Related MCP Connectors
Market Data App MCP — wraps the Market Data App API (marketdata.app)
33 pay-per-call market and news data tools over MCP with free discovery and x402 payments.
Financial data and research MCP for US/CN/JP equities: filings, statements, ownership, signals.
One API and MCP server for financial and economic data: markets, economics, companies and more.
1
Related MCP Servers
- FlicenseAqualityBmaintenanceEnables MCP clients to retrieve stock market and company financial data, including quotes, overviews, ratios, historical prices, income statements, and stock comparisons, via a set of tools.7-
- FlicenseNot gradedqualityAmaintenanceEnables programmatic access to Tiingo financial data—including stock prices, news, forex, fundamentals, dividends, yields, and splits—through MCP tools. It supports querying by ticker, date ranges, resampling frequencies, and other filters.-
- FlicenseNot gradedqualityAmaintenanceEnables AI agents and backend integrations to access A-share, US equity, ETF, index, and crypto market data, technical indicators, fundamentals, money flow, filings, and news through MCP tools and standardized APIs.-
- FlicenseNot gradedqualityAmaintenanceEnables AI agents and backend workflows to access standardized multi-market financial data, technical indicators, fundamentals, news, filings, money flow, and CSV/JSON exports through MCP tools and HTTP endpoints.-