金融数据查询工具

一个社区开发维护的MCP服务器,提供通过自然语言接口访问Nasdaq Data Link金融和经济数据集的能力。

  • by stefanoamorelli
  • Python
  • 本地部署
  • 68 星标
  • 更新于
在 GitHub 查看 stefanoamorelli/nasdaq-data-link-mcp

使用说明

📈 Nasdaq Data Link MCP 🤖(可翻译为)📈 纳斯达克数据链接MCP 🤖

一个由社区开发并维护的(项目/平台/系统) 模型上下文协议(MCP) 为大型语言模型提供访问权限的服务器 纳斯达克数据链接(Nasdaq Data Link)为与MCP兼容产品一起使用而设计 客户.

该项目旨在通过自然语言接口和大型语言模型(LLM),让用户能够轻松访问和探索Nasdaq Data Link提供的丰富且有价值的金融和经济数据集。

🐍(蛇) Nasdaq Data Link MCP 使用官方 纳斯达克/data-link-python SDK(软件开发工具包)。

[!重要] 这是一个开源项目 与Nasdaq, Inc.无任何关联或未得到其认可。 纳斯达克®是纳斯达克股份有限公司的注册商标。

🌐 使用方法

纳斯达克数据链接MCP - 零售交易活动 纳斯达克数据链接(Nasdaq Data Link)MCP - 世界银行数据
纳斯达克数据链接(Nasdaq Data Link)MCP - Groq + DeepSeek R1 实时分析测试(RTAT)10

一旦安装并连接到一个 MCP-兼容的客户端(例如。, Claude Desktop(中文可译为“克劳德桌面版”或根据具体语境简化为“克劳德桌面”,但通常直接保留原名以体现其品牌特性),或 Groq 桌面版(测试版)这台服务器提供了5个与(某系统/平台/等)协同工作的基本工具 任何 纳斯达克数据链接数据库。

特色数据库:

Example conversations

你: 2022年意大利的GDP是多少? 克劳德: 搜索数据集,获取世界银行/国内生产总值(GDP)数据

你: 给我看一下2024年第一季度的苹果股票数据 克劳德: 获取带有日期过滤器的WIKI/AAPL数据集

你: 有哪些关于二氧化碳排放的数据集可用? 克劳德: 在数据集中搜索“二氧化碳排放量”

你: 将特斯拉数据导出为JSON格式 克劳德: 以JSON格式导出数据集


📦 安装

1. 克隆仓库

git clone https://github.com/stefanoamorelli/nasdaq-data-link-mcp.git
cd nasdaq-data-link-mcp

2. 安装要求

您需要Python 3.13或更高版本以及 mcp CLI(Command Line Interface,命令行界面)。

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

3. 获取您的API密钥

在……上注册 https://data.nasdaq.com/ 翻译为中文是:“纳斯达克数据官网” 并复制您的API密钥。

4. 配置环境

cp .env.example .env

然后编辑 .env 并添加您的API密钥:

NASDAQ_DATA_LINK_API_KEY=your_api_key_here

并且那个 PYTHONPATH:

PYTHONPATH=/path/to/your/local/cloned/repo/nasdaq-data-link-mcp

5. 安装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

这将把服务器注册到您的MCP客户端(例如,Claude Desktop)。


🧪 测试

运行测试套件:

python -m pytest tests/ -v

测试套件包括:

  • 基本功能测试
  • 模块导入验证
  • 参数验证
  • 错误处理
  • 集成测试

测试旨在无需API密钥即可验证基本功能。


🛠️ 工具

该服务器提供了5个与任何纳斯达克数据链接(Nasdaq Data Link)数据库兼容的必备工具:

search_datasets

通过关键词搜索数据集。

示例:

# 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_dataset

从特定数据集中获取数据,并可选择应用日期过滤器。

示例:

# 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_metadata

获取数据集的元数据,而无需下载数据。

示例:

# 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_databases

列出Nasdaq Data Link上可用的数据库。

示例:

list_databases()

export_dataset

以不同格式(CSV、JSON、XML)导出数据集。

示例:

# 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")

🧪 MCP 开发与调试

在本地使用用户界面测试服务器:

mcp dev nasdaq_data_link_mcp_os/server.py --env-file .env

这开启了 MCP 开发者界面,您可以在其中手动调用工具、检查结果并进行故障排除。


📊 架构图

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]
  B -.-> N[Trade Summary NDAQ/TS]

  subgraph "Nasdaq Fund Network (NFN)"
    O1[Fund Master MFRFM]
    O2[Fund Information MFRFI]
    O3[Share Class Master MFRSM]
    O4[Share Class Info MFRSI]
    O5[Price History MFRPH/MFRPH10]
    O6[Performance MFRPS/MFRPRB/MFRPA]
    O7[Fees & Expenses MFRPM]
    O8[Monthly Flows MFRMF]
  end

  B -.-> O1
  B -.-> O2
  B -.-> O3
  B -.-> O4
  B -.-> O5
  B -.-> O6
  B -.-> O7
  B -.-> O8

  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

📚 参考文献


📖 引用

[!TIP] (注:这通常是一个提示或注释的标记,在中文中可直接保留或根据上下文翻译为“提示”等,但此处为保持原样,故直接保留。) 如果您在研究或工作中使用了这个项目,请按照以下方式引用它: `CITATION.cff` 可以翻译为“引用文件.cff”或“文献引用配置文件.cff”,具体翻译可能根据上下文有所调整,但基本意思是表示这是一个用于引用或文献管理的配置文件,文件扩展名为.cff 文件,或APA格式:

Amorelli, S. (2025). Nasdaq Data Link MCP (Model Context Protocol) Server [Computer software]. GitHub. https://github.com/stefanoamorelli/nasdaq-data-link-mcp


📄 许可证

麻省理工学院许可证 © 2025 斯特凡诺·阿莫雷利