Nasdaq Data Link MCP
by stefanoamorelli
A community developed and maintained Model Context Protocol (MCP) server that provides access to Nasdaq Data Link. It aims to make it easy to access and explore Nasdaq Data Link’s extensive financial and economic datasets through natural language interfaces and large language models (LLMs).
Last updated: N/A
📈 Nasdaq Data Link MCP 🤖
</div> <div align="center">Python 3.10+
Build Status
Platform
AI Powered
A community developed and maintained Model Context Protocol (MCP) server that provides access to Nasdaq Data Link. Built for use with MCP-compatible clients.
This project aims at making easy to access and explore Nasdaq Data Link’s extensive and valuable financial and economic datasets through natural language interfaces and large language models (LLMs).
🐍 This project uses the official nasdaq/data-link-python SDK
Disclaimer: This is an open-source project not affiliated with or endorsed by Nasdaq, Inc. Nasdaq® is a registered trademark of Nasdaq, Inc.
🌐 Usage
| Retail Trading Activity World Bank Data
Once installed and connected to an MCP
-compatible client (e.g., Claude Desktop, this server exposes several tools that your AI assistant can use to fetch data.
In this version (0.1.0
) the project supports the following databases:
- World Bank dataset on Nasdaq Data Link (freely available for personal use)
- Nasdaq RTAT (preview available for free, full data under subscription)
- Equities 360 (company statistics and fundamental data)
You: What were the most traded stocks by retailers yesterday?
Claude: callsget_rtat(<yetserday>)
and returns relevant matches
You: What was the GDP of Italy in 2022?
Claude: Let me look that up... callsget_indicator_value
tool
Claude: The GDP of Italy in 2022 was approximately...
trillion USD.
You: List all indicators related to CO₂ emissions.
Claude: callssearch_worldbank_indicators("CO2")
and returns relevant matches
You: What's the market cap and P/E ratio of Microsoft?
Claude: callsget_stock_stats(symbol="MSFT")
and presents the key statistics
You: Show me Microsoft's profitability ratios for the most recent annual report.
Claude: callsget_fundamental_data(symbol="MSFT", dimension="MRY")
and presents profitability metrics
You: What's Microsoft's cash flow and R&D spending for the last quarter?
Claude: callsget_detailed_financials(symbol="MSFT", dimension="MRQ")
and presents cash flow and R&D data
You: What's Microsoft's asset breakdown and debt-to-equity ratio from the latest balance sheet?
Claude: callsget_balance_sheet_data(symbol="MSFT", dimension="MRQ")
and presents relevant balance sheet items
You: How has Microsoft's free cash flow and capital expenditure changed over the past year?
Claude: callsget_cash_flow_data(symbol="MSFT", dimension="MRY")
and analyzes free cash flow trends
You: Has Tesla had any stock splits in the last two years?
Claude: callsget_corporate_action_data(symbol="TSLA", action="split")
and presents the split history
</details>You: What industry and sector is AMD in, and where is the company located?
Claude: callsget_company_reference_data(symbol="AMD")
and presents industry, sector, and location information
📦 Installation
1. Clone the Repository
git clone https://github.com/stefanoamorelli/nasdaq-data-link-mcp.git
cd nasdaq-data-link-mcp
2. Install Requirements
You'll need Python 3.10+ and the mcp
CLI.
pip install mcp nasdaq-data-link pycountry
MCP SDK: https://github.com/modelcontextprotocol/python-sdk
Nasdaq Data Link SDK: https://github.com/Nasdaq/data-link-python
3. Get Your API Key
Sign up on https://data.nasdaq.com/ and copy your API key.
<details> <summary><strong>4. Download World Bank metadata CSV</strong> (optional: only if you plan to use the World Bank database)</summary>Download the World Bank metadata
from Nasdaq Data Link:
Nasdaq Data Link World Bank metadata export
And save it as metadata.csv
in the following directory:
nasdaq-data-link-mcp/nasdaq_data_link_mcp_os/resources/world_data_bank/metadata/metadata.csv
</details>
5. Configure the Environment
cp .env.example .env
Then edit .env
and add your API key:
NASDAQ_DATA_LINK_API_KEY=your_api_key_here
And the PYTHONPATH
:
PYTHONPATH=/path/to/your/local/cloned/repo/nasdaq-data-link-mcp
6. Install the MCP Server
mcp install nasdaq_data_link_mcp_os/server.py --env-file .env --name "Nasdaq Data Link MCP Server" --with nasdaq-data-link --with pycountry
This registers the server with your MCP client (e.g., Claude Desktop).
🛠️ Tools
After installation, the following tools are exposed to MCP clients:
<details> <summary><strong>📈 Retail Trading Activity Tracker</strong></summary>
get_rtat10
Retrieves Retail Trading Activity Tracker 10 (RTAT10) data for specific dates and optional tickers.
{
"action": "tool",
"name": "get_rtat10",
"params": {
"dates": "2025-03-31,2025-03-28,2025-03-27",
"tickers": "TSLA,TQQQ,SQQQ"
}
}
Returns RTAT10 data from Nasdaq Data Link for the given dates and tickers.
get_rtat
Retrieves Retail Trading Activity (RTAT) data for specific dates and optional tickers.
{
"action": "tool",
"name": "get_rtat",
"params": {
"dates": "2025-03-31,2025-03-28,2025-03-27",
"tickers": "TSLA,TQQQ,SQQQ"
}
}
Returns RTAT data from Nasdaq Data Link for the given dates and tickers.
</details><details> <summary><strong>📊 World Bank Tools</strong></summary>
get_indicator_value
Fetch the value for a specific indicator and country.
{
"action": "tool",
"name": "get_indicator_value",
"params": {
"country": "Italy",
"indicator": "NY.GDP.MKTP.CD"
}
}
Returns the latest value for that indicator.
country_code
Returns the ISO 3-letter country code (e.g., "ITA"
for Italy).
{
"action": "tool",
"name": "country_code",
"params": {
"countryName": "Italy"
}
}
list_worldbank_indicators
Returns a list of all 1500+ indicators available.
{
"action": "tool",
"name": "list_worldbank_indicators"
}
search_worldbank_indicators
Searches for indicators by keyword.
{
"action": "tool",
"name": "search_worldbank_indicators",
"params": {
"keyword": "population"
}
}
</details>
<details> <summary><strong>📈 Equities 360 Tools</strong></summary>
get_stock_stats
Retrieves comprehensive statistics for a company from the Nasdaq Equities 360 database.
{
"action": "tool",
"name": "get_stock_stats",
"params": {
"symbol": "MSFT"
}
}
Or using FIGI:
{
"action": "tool",
"name": "get_stock_stats",
"params": {
"figi": "BBG000BPH459"
}
}
Returns company statistics including market cap, PE ratio, 52-week highs/lows, dividend information, and more.
list_stock_stat_fields
Lists all available fields in the stock statistics database with descriptions.
{
"action": "tool",
"name": "list_stock_stat_fields"
}
Returns information about all available fields that can be queried through the get_stock_stats
tool.
get_fundamental_data
Retrieves fundamental financial data from the Nasdaq Equities 360 Fundamental Summary database.
{
"action": "tool",
"name": "get_fundamental_data",
"params": {
"symbol": "MSFT",
"dimension": "MRY"
}
}
Or using multiple parameters:
{
"action": "tool",
"name": "get_fundamental_data",
"params": {
"figi": "BBG000BPH459",
"calendardate": "2022-12-31",
"dimension": "MRQ"
}
}
Returns fundamental data including profitability ratios (ROA, ROE, ROS), valuation metrics (P/E, P/S), income statement items (revenue, gross profit), and financial health indicators (current ratio, debt-to-equity).
list_fundamental_fields
Lists all available fields in the fundamental summary database with descriptions.
{
"action": "tool",
"name": "list_fundamental_fields"
}
Returns information about all available fields that can be queried through the get_fundamental_data
tool.
get_detailed_financials
Retrieves detailed financial data from the Nasdaq Equities 360 Fundamental Details database.
{
"action": "tool",
"name": "get_detailed_financials",
"params": {
"symbol": "MSFT",
"dimension": "MRQ"
}
}
Or using multiple parameters:
{
"action": "tool",
"name": "get_detailed_financials",
"params": {
"figi": "BBG000BPH459",
"calendardate": "2022-12-31",
"dimension": "MRY"
}
}
Returns comprehensive financial statement data including balance sheet items (assets, liabilities, equity), income statement components (revenue, expenses, profit), cash flow details (operating, investing, financing), and detailed financial ratios.
list_detailed_financial_fields
Lists all available fields in the fundamental details database with descriptions.
{
"action": "tool",
"name": "list_detailed_financial_fields"
}
Returns information about all available fields that can be queried through the get_detailed_financials
tool.
get_balance_sheet_data
Retrieves balance sheet data from the Nasdaq Equities 360 Balance Sheet database.
{
"action": "tool",
"name": "get_balance_sheet_data",
"params": {
"symbol": "MSFT",
"dimension": "MRQ"
}
}
Or using multiple parameters:
{
"action": "tool",
"name": "get_balance_sheet_data",
"params": {
"figi": "BBG000BPH459",
"calendardate": "2022-12-31",
"dimension": "MRY"
}
}
Returns comprehensive balance sheet data including assets (current, non-current, intangible), liabilities (current, non-current, debt), stockholders' equity, and key balance sheet metrics.
list_balance_sheet_fields
Lists all available fields in the balance sheet database with descriptions.
{
"action": "tool",
"name": "list_balance_sheet_fields"
}
Returns information about all available fields that can be queried through the get_balance_sheet_data
tool.
get_cash_flow_data
Retrieves cash flow statement data from the Nasdaq Equities 360 Cash Flow database.
{
"action": "tool",
"name": "get_cash_flow_data",
"params": {
"symbol": "MSFT",
"dimension": "MRQ"
}
}
Or using multiple parameters:
{
"action": "tool",
"name": "get_cash_flow_data",
"params": {
"figi": "BBG000BPH459",
"calendardate": "2022-12-31",
"dimension": "MRY"
}
}
Returns cash flow statement data including operating activities (ncfo), investing activities (ncfi), financing activities (ncff), free cash flow (fcf), capital expenditures (capex), and more.
list_cash_flow_fields
Lists all available fields in the cash flow statement database with descriptions.
{
"action": "tool",
"name": "list_cash_flow_fields"
}
Returns information about all available fields that can be queried through the get_cash_flow_data
tool.
get_corporate_action_data
Retrieves corporate actions data from the Nasdaq Equities 360 Corporate Actions database.
{
"action": "tool",
"name": "get_corporate_action_data",
"params": {
"symbol": "TSLA",
"action": "split"
}
}
Or using other parameters:
{
"action": "tool",
"name": "get_corporate_action_data",
"params": {
"date": "2023-03-24"
}
}
Returns information about corporate events such as stock splits, mergers, acquisitions, and other significant company actions that can affect stock price and ownership.
list_corporate_action_fields
Lists all available fields in the corporate actions database with descriptions.
{
"action": "tool",
"name": "list_corporate_action_fields"
}
Returns information about all available fields that can be queried through the get_corporate_action_data
tool.
get_company_reference_data
Retrieves company reference data from the Nasdaq Equities 360 Reference Data database.
{
"action": "tool",
"name": "get_company_reference_data",
"params": {
"symbol": "AMD"
}
}
Or using FIGI:
{
"action": "tool",
"name": "get_company_reference_data",
"params": {
"figi": "BBG000BBQCY0"
}
}
Returns static information about companies including exchange, industry, sector classification, website URLs, SEC filing links, and location information.
list_reference_data_fields
Lists all available fields in the company reference database with descriptions.
{
"action": "tool",
"name": "list_reference_data_fields"
}
Returns information about all available fields that can be queried through the get_company_reference_data
tool.
🧪 MCP Dev & Debugging
To test the server locally with a UI:
mcp dev nasdaq_data_link_mcp_os/server.py --env-file .env
This opens the MCP
Dev interface where you can call tools manually, inspect results, and troubleshoot.
📊 Architecture Diagram
graph TD
subgraph "Local Machine"
A[MCP Server: Nasdaq Data Link MCP] --> C[MCP Client, ie. Claude Desktop]
end
C -->|user prompt| D[LLM ie. Claude 3.7 Sonnet]
D -->|calls tool| A
A -->|fetches data| B[Nasdaq Data Link API]
B -.-> E[Retail Trading Activity Tracker]
B -.-> F[World Bank Metadata]
subgraph " "
G[Statistics NDAQ/STAT]
H[Fundamentals NDAQ/FS]
I[Fundamental Details NDAQ/FD]
J[Balance Sheet NDAQ/BS]
K[Cash Flow NDAQ/CF]
L[Corporate Actions NDAQ/CA]
M[Reference Data NDAQ/RD]
end
B -.->|Equities 360| G
📚 References
📄 License
MIT License © 2025 Stefano Amorelli