by stefanoamorelli
Provides LLM‑friendly, Model Context Protocol tools to retrieve and explore Nasdaq Data Link’s extensive financial, economic, and fund datasets directly from large language models.
Nasdaq Data Link MCP exposes a collection of MCP tools that let AI assistants fetch real‑time and historical financial data—from retail trading activity and equity fundamentals to World Bank indicators and mutual‑fund details—through simple JSON‑based tool calls.
.env file from the example and insert your Nasdaq Data Link API key (NASDAQ_DATA_LINK_API_KEY).uv run mcp install nasdaq_data_link_mcp_os/server.py --env-file .env --name "Nasdaq Data Link MCP Server" --with nasdaq-data-link --with pycountry
get_stock_stats, get_rtat, get_indicator_value) by passing the required parameters in the tool JSON payload.list_*_fields) return available columns for each dataset, enabling dynamic queries.country_code tool simplifies ISO‑3 conversions for World Bank queries.Q: Do I need a paid Nasdaq Data Link subscription? A: An API key is required; free tier access is available for many datasets, but premium data may need a paid subscription.
Q: Can I use this server without an MCP client? A: The server is designed to be called via MCP tool specifications; direct HTTP calls are not provided out‑of‑the‑box.
Q: Which Python version is required? A: Python 3.13 or newer.
Q: Are there rate limits? A: Rate limits are enforced by the Nasdaq Data Link API, not by the MCP server itself.
Q: How do I discover what fields I can request?
A: Use the list_*_fields tools (e.g., list_stock_stat_fields) to retrieve field names and descriptions.
A community developed and maintained Model Context Protocol (MCP) server that provides access for large language models to the 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).
🐍 Nasdaq Data Link MCP uses the official Nasdaq/data-link-python SDK.
[!IMPORTANT] This is an open-source project not affiliated with or endorsed by Nasdaq, Inc. Nasdaq® is a registered trademark of Nasdaq, Inc.
| Nasdaq Data Link MCP - Retail Trading Activity | Nasdaq Data Link MCP - World Bank Data |
| Nasdaq Data Link MCP - Groq + DeepSeek R1 RTAT 10 |
Once installed and connected to an MCP-compatible client (e.g., Claude Desktop, or Groq Desktop (beta), this server provides 5 essential tools that work with any Nasdaq Data Link database.
Featured databases:
You: What was the GDP of Italy in 2022? Claude: searches datasets, gets WORLDBANK/GDP data
You: Show me Apple stock data for Q1 2024 Claude: gets WIKI/AAPL dataset with date filters
You: What datasets are available for CO₂ emissions? Claude: searches datasets for "CO2 emissions"
You: Export Tesla data as JSON Claude: exports dataset in JSON format
git clone https://github.com/stefanoamorelli/nasdaq-data-link-mcp.git
cd nasdaq-data-link-mcp
You'll need Python 3.13+ and the mcp CLI.
uv init mcp
uv add "mcp[cli]"
MCP SDK: https://github.com/modelcontextprotocol/python-sdk Nasdaq Data Link SDK: https://github.com/Nasdaq/data-link-python
Sign up on https://data.nasdaq.com/ and copy your API key.
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
uv run 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).
Run the test suite:
python -m pytest tests/ -v
The test suite includes:
Tests are designed to work without requiring an API key for basic functionality verification.
The server exposes 5 essential tools that work with any Nasdaq Data Link database:
search_datasetsSearch for datasets by keyword.
Examples:
# Find GDP datasets
search_datasets(query="GDP")
# Search for oil prices
search_datasets(query="oil prices")
# Find retail trading data
search_datasets(query="retail trading")
# Search for fund data
search_datasets(query="mutual funds")
get_datasetGet data from a specific dataset with optional date filters.
Examples:
# Get Apple stock data for Q1 2024
get_dataset(dataset_code="WIKI/AAPL", start_date="2024-01-01", end_date="2024-03-31")
# Get World Bank GDP data
get_dataset(dataset_code="WORLDBANK/GDP_MKTP_CD")
# Get retail trading activity
get_dataset(dataset_code="NDAQ/RTAT", start_date="2024-03-01")
# Get company fundamentals
get_dataset(dataset_code="QOR/STATS_MSFT")
# Get fund price history
get_dataset(dataset_code="NFN/MFRPH_ABCDX", start_date="2024-01-01", end_date="2024-12-31")
get_dataset_metadataGet metadata about a dataset without downloading data.
Examples:
# Check GDP dataset structure
get_dataset_metadata(dataset_code="WORLDBANK/GDP_MKTP_CD")
# View available columns for Apple stock
get_dataset_metadata(dataset_code="WIKI/AAPL")
# Inspect fund data structure
get_dataset_metadata(dataset_code="NFN/MFRFM")
list_databasesList available databases on Nasdaq Data Link.
Example:
list_databases()
export_datasetExport dataset in different formats (CSV, JSON, XML).
Examples:
# Export Apple data as JSON
export_dataset(dataset_code="WIKI/AAPL", output_format="json", start_date="2024-01-01")
# Export to CSV with date range
export_dataset(dataset_code="WORLDBANK/GDP_MKTP_CD", output_format="csv", start_date="2020-01-01", end_date="2023-12-31")
# Export as XML
export_dataset(dataset_code="NDAQ/RTAT", output_format="xml")
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.
[!TIP] If you use this project in your research or work, please cite it using the CITATION.cff file, or the APA format:
Amorelli, S. (2025). Nasdaq Data Link MCP (Model Context Protocol) Server [Computer software]. GitHub. https://github.com/stefanoamorelli/nasdaq-data-link-mcp
MIT License © 2025 Stefano Amorelli
Please log in to share your review and rating for this MCP.
Explore related MCPs that share similar capabilities and solve comparable challenges
by stripe
Provides SDKs and tools to integrate Stripe's billing and API services with large language models, agent frameworks, and token‑metering for AI‑powered products and businesses.
by goat-sdk
Enables AI agents to send and receive payments, purchase goods and services, execute investment strategies, tokenize assets, and obtain financial insights by leveraging blockchains, stablecoins, and wallets.
by financial-datasets
Provides access to income statements, balance sheets, cash flow statements, stock prices, market news, and cryptocurrency data through MCP tools for AI assistants.
by alpacahq
Enables large language models to trade stocks and options, retrieve real‑time and historical market data, and manage portfolios using plain English commands through a local or remote MCP server.
by stefanoamorelli
Provides an MCP server that connects AI models to SEC EDGAR filings, enabling real‑time retrieval of company filings, financial statements, and insider‑trading data with exact XBRL precision and verifiable filing references.
by ariadng
Enables AI LLMs to execute trades on the MetaTrader 5 platform through the Model Context Protocol.
by XeroAPI
Provides a bridge between the Model Context Protocol and Xero's API, enabling standardized access to Xero accounting and business features.
by kukapay
Provides a comprehensive set of cryptocurrency technical analysis indicators and ready‑to‑use trading strategies through an MCP interface, enabling AI agents and applications to generate buy, hold, or sell signals.
by kukapay
Integrates the Freqtrade cryptocurrency trading bot with MCP, exposing its REST API as tools for AI agents to perform automated trading operations.