Massive.com MCP Server
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., "@Massive.com MCP Server show me the latest price and volume for 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.
:test_tube: This project is experimental and could be subject to breaking changes.
Massive.com MCP Server
A Model Context Protocol (MCP) server that provides access to Massive.com financial market data API through an LLM-friendly interface.
Overview
This server exposes all Massive.com API endpoints as MCP tools, providing access to comprehensive financial market data including:
Stock, options, forex, and crypto aggregates and bars
Real-time and historical trades and quotes
Market snapshots
Ticker details and reference data
Dividends and splits data
Financial fundamentals
Market status and holidays
Related MCP server: twelvedata
Installation
Prerequisites
Python 3.10+
A Massive.com API key
For existing installs, check that you have a version that supports the
uvxcommand.
Claude Code
First, install Claude Code
npm install -g @anthropic-ai/claude-codeUse the following command to add the Massive MCP server to your local environment.
This assumes uvx is in your $PATH; if not, then you need to provide the full
path to uvx.
# Claude CLI
claude mcp add massive -e MASSIVE_API_KEY=your_api_key_here -- uvx --from git+https://github.com/massive-com/mcp_massive@v0.6.0 mcp_massiveThis command will install the MCP server in your current project.
If you want to install it globally, you can run the command with -s <scope> flag.
See claude mcp add --help for more options.
To start Claude Code, run claude in your terminal.
If this is your first time using, follow the setup prompts to authenticate
You can also run claude mcp add-from-claude-desktop if the MCP server is installed already for Claude Desktop.
Claude Desktop
Follow the Claude Desktop MCP installation instructions to complete the initial installation and find your configuration file.
Use the following example as reference to add Massive's MCP server. Make sure you complete the various fields.
Path find your path to
uvx, runwhich uvxin your terminal.Replace
<your_api_key_here>with your actual Massive.com API key.Replace
<your_home_directory>with your home directory path, e.g.,/home/username(Mac/Linux) orC:\Users\username(Windows).
{
"mcpServers": {
"massive": {
"command": "<path_to_your_uvx_install>/uvx",
"args": [
"--from",
"git+https://github.com/massive-com/mcp_massive@v0.6.0",
"mcp_massive"
],
"env": {
"MASSIVE_API_KEY": "<your_api_key_here>",
"HOME": "<your_home_directory>"
}
}
}
}Transport Configuration
By default, STDIO transport is used.
To configure SSE or Streamable HTTP, set the MCP_TRANSPORT environment variable.
Example:
MCP_TRANSPORT=streamable-http \
MASSIVE_API_KEY=<your_api_key_here> \
uv run entrypoint.pyUsage Examples
Once integrated, you can prompt Claude to access Massive.com data:
Get the latest price for AAPL stock
Show me yesterday's trading volume for MSFT
What were the biggest stock market gainers today?
Get me the latest crypto market data for BTC-USDAvailable Tools
This MCP server implements all Massive.com API endpoints as tools, including:
get_aggs- Stock aggregates (OHLC) data for a specific tickerlist_trades- Historical trade dataget_last_trade- Latest trade for a symbollist_ticker_news- Recent news articles for tickersget_snapshot_ticker- Current market snapshot for a tickerget_market_status- Current market status and trading hourslist_stock_financials- Fundamental financial dataAnd many more...
Each tool follows the Massive.com SDK parameter structure while converting responses to standard JSON that LLMs can easily process.
Development
Running Locally
Check to ensure you have the Prerequisites installed.
# Sync dependencies
uv sync
# Run the server
MASSIVE_API_KEY=your_api_key_here uv run mcp_massive
"mcpServers": {
"massive": {
"command": "/your/path/.cargo/bin/uv",
"args": [
"run",
"--with",
"/your/path/mcp_massive",
"mcp_massive"
],
"env": {
"MASSIVE_API_KEY": "your_api_key_here",
"HOME": "/Users/danny"
}
}
}Debugging
For debugging and testing, we recommend using the MCP Inspector:
npx @modelcontextprotocol/inspector uv --directory /path/to/mcp_massive run mcp_massiveThis will launch a browser interface where you can interact with your MCP server directly and see input/output for each tool.
Code Linting
This project uses just for common development tasks. To lint your code before submitting a PR:
just lintThis will run ruff format and ruff check --fix to automatically format your code and fix linting issues.
Links
Privacy Policy
This MCP server interacts with Massive.com's API to fetch market data. All data requests are subject to Massive.com's privacy policy and terms of service.
Massive.com Privacy Policy: https://massive.com/legal/privacy
Data Handling: This server does not store or cache any user data. All requests are proxied directly to Massive.com's API.
API Key: Your Massive.com API key is used only for authenticating requests to their API.
Contributing
If you found a bug or have an idea for a new feature, please first discuss it with us by submitting a new issue. We will respond to issues within at most 3 weeks. We're also open to volunteers if you want to submit a PR for any open issues but please discuss it with us beforehand. PRs that aren't linked to an existing issue or discussed with us ahead of time will generally be declined.
Available Tools
53 toolsget_aggsBRead-only
List aggregate bars for a ticker over a given date range in custom time window sizes.
Inputs: ticker (required), multiplier (required), timespan (required), from_ (required), +5 more. Returns: result
get_daily_open_close_aggBRead-only
Get daily open, close, high, and low for a specific ticker and date.
Inputs: ticker (required), date (required), adjusted, params. Returns: result
get_exchangesBRead-only
List exchanges known by Massive.com.
Inputs: asset_class, locale, params. Returns: result
get_futures_contract_detailsBRead-only
Get details for a single futures contract at a specified point in time.
Inputs: ticker (required), as_of, params. Returns: result
get_futures_product_detailsBRead-only
Get details for a single futures product as it was at a specific day.
Inputs: product_code (required), type, as_of, params. Returns: result
get_futures_snapshotCRead-only
Get snapshots for futures contracts.
Inputs: ticker, ticker_any_of, ticker_gt, ticker_gte, +11 more. Returns: result
get_grouped_daily_aggsCRead-only
Get grouped daily bars for entire market for a specific date.
Inputs: date (required), adjusted, include_otc, locale, +2 more. Returns: result
get_last_crypto_tradeBRead-only
Get the most recent trade for a crypto pair.
Inputs: from_ (required), to (required), params. Returns: result
get_last_forex_quoteCRead-only
Get the most recent forex quote.
Inputs: from_ (required), to (required), params. Returns: result
get_last_quoteBRead-only
Get the most recent quote for a ticker symbol.
Inputs: ticker (required), params. Returns: result
get_last_tradeBRead-only
Get the most recent trade for a ticker symbol.
Inputs: ticker (required). Returns: result
get_market_holidaysBRead-only
Get upcoming market holidays and their open/close times.
Inputs: params. Returns: result
get_market_statusBRead-only
Get current trading status of exchanges and financial markets.
Inputs: params. Returns: result
get_previous_close_aggBRead-only
Get previous day's open, close, high, and low for a specific ticker.
Inputs: ticker (required), adjusted, params. Returns: result
get_real_time_currency_conversionCRead-only
Get real-time currency conversion.
Inputs: from_ (required), to (required), amount, precision, +1 more. Returns: result
get_snapshot_allCRead-only
Get a snapshot of all tickers in a market.
Inputs: market_type (required), tickers, include_otc, params. Returns: result
get_snapshot_crypto_bookBRead-only
Get snapshot for a crypto ticker's order book.
Inputs: ticker (required), params. Returns: result
get_snapshot_directionCRead-only
Get gainers or losers for a market.
Inputs: market_type (required), direction (required), include_otc, params. Returns: result
get_snapshot_optionCRead-only
Get snapshot for a specific option contract.
Inputs: underlying_asset (required), option_contract (required), params. Returns: result
get_snapshot_tickerCRead-only
Get snapshot for a specific ticker.
Inputs: market_type (required), ticker (required), params. Returns: result
get_ticker_detailsCRead-only
Get detailed information about a specific ticker.
Inputs: ticker (required), date, params. Returns: result
get_ticker_typesCRead-only
List all ticker types supported by Massive.com.
Inputs: asset_class, locale, params. Returns: result
list_aggsCRead-only
Iterate through aggregate bars for a ticker over a given date range.
Inputs: ticker (required), multiplier (required), timespan (required), from_ (required), +5 more. Returns: result
list_benzinga_analyst_insightsCRead-only
List Benzinga analyst insights.
Inputs: date, date_any_of, date_gt, date_gte, +41 more. Returns: result
list_benzinga_analystsCRead-only
List Benzinga analysts.
Inputs: benzinga_id, benzinga_id_any_of, benzinga_id_gt, benzinga_id_gte, +23 more. Returns: result
list_benzinga_consensus_ratingsBRead-only
List Benzinga consensus ratings for a ticker.
Inputs: ticker (required), date, date_gt, date_gte, +4 more. Returns: result
list_benzinga_earningsDRead-only
List Benzinga earnings.
Inputs: date, date_any_of, date_gt, date_gte, +53 more. Returns: result
list_benzinga_firmsCRead-only
List Benzinga firms.
Inputs: benzinga_id, benzinga_id_any_of, benzinga_id_gt, benzinga_id_gte, +5 more. Returns: result
list_benzinga_guidanceCRead-only
List Benzinga guidance.
Inputs: date, date_any_of, date_gt, date_gte, +41 more. Returns: result
list_benzinga_newsARead-only
Retrieve real-time structured, timestamped news articles from Benzinga v2 API, including headlines, full-text content, tickers, categories, and more. Each article entry contains metadata such as author, publication time, and topic channels, as well as optional elements like teaser summaries, article body text, and images. Articles can be filtered by ticker and time, and are returned in a consistent format for easy parsing and integration. This endpoint is ideal for building alerting systems, autonomous risk analysis, and sentiment-driven trading strategies.
Args: published: The timestamp (formatted as an ISO 8601 timestamp) when the news article was originally published. Value must be an integer timestamp in seconds or formatted 'yyyy-mm-dd'. channels: Filter for arrays that contain the value (e.g., 'News', 'Price Target'). tags: Filter for arrays that contain the value. author: The name of the journalist or entity that authored the news article. stocks: Filter for arrays that contain the value. tickers: Filter for arrays that contain the value. limit: Limit the maximum number of results returned. Defaults to 100 if not specified. The maximum allowed limit is 50000. sort: A comma separated list of sort columns. For each column, append '.asc' or '.desc' to specify the sort direction. The sort column defaults to 'published' if not specified. The sort order defaults to 'desc' if not specified.
Inputs: published, channels, tags, author, +4 more. Returns: result
list_benzinga_ratingsDRead-only
List Benzinga ratings.
Inputs: date, date_any_of, date_gt, date_gte, +53 more. Returns: result
list_conditionsCRead-only
List conditions used by Massive.com.
Inputs: asset_class, data_type, id, sip, +1 more. Returns: result
list_dividendsBRead-only
Get historical cash dividends.
Inputs: ticker, ex_dividend_date, frequency, dividend_type, +2 more. Returns: result
list_futures_aggregatesBRead-only
Get aggregates for a futures contract in a given time range.
Inputs: ticker (required), resolution (required), window_start, window_start_lt, +6 more. Returns: result
list_futures_contractsBRead-only
Get a paginated list of futures contracts.
Inputs: product_code, first_trade_date, last_trade_date, as_of, +5 more. Returns: result
list_futures_market_statusesCRead-only
Get market statuses for futures products.
Inputs: product_code_any_of, product_code, limit, sort, +1 more. Returns: result
list_futures_productsCRead-only
Get a list of futures products (including combos).
Inputs: name, name_search, as_of, trading_venue, +8 more. Returns: result
list_futures_quotesBRead-only
Get quotes for a futures contract in a given time range.
Inputs: ticker (required), timestamp, timestamp_lt, timestamp_lte, +10 more. Returns: result
list_futures_schedulesBRead-only
Get trading schedules for multiple futures products on a specific date.
Inputs: session_end_date, trading_venue, limit, sort, +1 more. Returns: result
list_futures_schedules_by_product_codeBRead-only
Get schedule data for a single futures product across many trading dates.
Inputs: product_code (required), session_end_date, session_end_date_lt, session_end_date_lte, +5 more. Returns: result
list_futures_tradesCRead-only
Get trades for a futures contract in a given time range.
Inputs: ticker (required), timestamp, timestamp_lt, timestamp_lte, +10 more. Returns: result
list_inflationCRead-only
Get inflation data from the Federal Reserve.
Inputs: date, date_any_of, date_gt, date_gte, +5 more. Returns: result
list_iposCRead-only
Retrieve upcoming or historical IPOs.
Inputs: ticker, listing_date, listing_date_lt, listing_date_lte, +7 more. Returns: result
list_quotesBRead-only
Get quotes for a ticker symbol.
Inputs: ticker (required), timestamp, timestamp_lt, timestamp_lte, +6 more. Returns: result
list_short_interestBRead-only
Retrieve short interest data for stocks.
Inputs: ticker, settlement_date, settlement_date_lt, settlement_date_lte, +6 more. Returns: result
list_short_volumeCRead-only
Retrieve short volume data for stocks.
Inputs: ticker, date, date_lt, date_lte, +6 more. Returns: result
list_splitsBRead-only
Get historical stock splits.
Inputs: ticker, execution_date, reverse_split, limit, +1 more. Returns: result
list_stock_financialsCRead-only
Get fundamental financial data for companies.
Inputs: ticker, cik, company_name, company_name_search, +17 more. Returns: result
list_ticker_newsBRead-only
Get recent news articles for a stock ticker.
Inputs: ticker, published_utc, limit, sort, +2 more. Returns: result
list_tickersBRead-only
Query supported ticker symbols across stocks, indices, forex, and crypto.
Inputs: ticker, type, market, exchange, +9 more. Returns: result
list_tradesCRead-only
Get trades for a ticker symbol.
Inputs: ticker (required), timestamp, timestamp_lt, timestamp_lte, +6 more. Returns: result
list_treasury_yieldsCRead-only
Retrieve treasury yield data.
Inputs: date, date_any_of, date_lt, date_lte, +6 more. Returns: result
list_universal_snapshotsCRead-only
Get universal snapshots for multiple assets of a specific type.
Inputs: type (required), ticker_any_of, order, limit, +2 more. Returns: result
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 53 tools
The tools cover distinct financial data domains (e.g., aggregates, quotes, news, futures), but there is significant overlap in functionality. For example, 'get_aggs' and 'list_aggs' both handle aggregate bars, and multiple 'get_snapshot_*' tools target similar snapshot data for different asset types, which could cause confusion in tool selection.
Most tools follow a consistent 'verb_noun' pattern (e.g., 'get_aggs', 'list_tickers'), with verbs like 'get' and 'list' used appropriately for retrieval. However, there are minor deviations, such as 'get_real_time_currency_conversion' using a longer name and some tools like 'list_benzinga_analyst_insights' having compound nouns, but overall the naming is predictable and readable.
With 53 tools, the count is excessive for a single server, indicating poor scoping. This many tools can overwhelm agents and lead to inefficiency, as many functions could be consolidated or better organized (e.g., grouping similar snapshot or Benzinga tools). A more focused set would improve usability.
The tool set provides comprehensive coverage for financial data retrieval, including aggregates, quotes, trades, news, futures, and market statuses. It supports CRUD-like operations for data access across multiple asset classes (stocks, crypto, forex, futures) and includes auxiliary data like holidays and inflation, leaving no obvious gaps for the domain.
Maintenance
Related MCP Connectors
Live stock quotes, a stock screener, crypto prices and FX rates as agent tools.
Market data, filings, fundamentals, macro, news and research runs for AI assistants.
Financial data MCP server for Claude, ChatGPT, Cursor and Codex. Real-time stock quotes, financial statements, options flow, SEC filings, insider trades, 13F holdings, macro data and market news from gloom.sh, the open-source Bloomberg Terminal alternative.
Stocks, ETFs, crypto, commodities, forex: quotes, fundamentals, SEC filings, point-in-time history.
Related MCP Servers
- AlicenseAqualityDmaintenanceProvides AI agents with real-time financial market intelligence including stock quotes, crypto data, technical analysis, and portfolio insights. Enables natural language queries for current prices, technical indicators, asset comparisons, and portfolio analysis.179MIT
- AlicenseNot gradedqualityBmaintenanceEnables access to real-time and historical market data including stocks, ETFs, forex, and cryptocurrencies, with support for time series, quotes, dividends, splits, and earnings.325 npmMIT

AxionQuant MCP Serverofficial
AlicenseCqualityCmaintenanceEnables AI agents and LLM apps to answer natural-language financial questions using live market data, including stocks, crypto, forex, futures, indices, ETFs, economic data, news, sentiment, SEC filings, earnings, financials, insider trading, ESG, credit ratings, and web traffic.132139 npmMIT- AlicenseNot gradedqualityAmaintenanceEnables AI assistants to access and analyze financial data, stock information, company fundamentals, and market insights through 250+ tools spanning stocks, ETFs, crypto, forex, commodities, and economics. Supports dynamic, static, or full toolset loading over HTTP/SSE for Claude and other MCP clients.624 npmApache 2.0