mcpField
T
TickerDB

TickerDB

远程服务
github.com/tickerdb金融数据58 周前更新
代码仓库

关于 TickerDB

TickerDB 是面向 Agent 的市场数据 MCP 服务,供股票、ETF 和加密货币交易对分析使用。它提供预计算指标状态、历史状态变化及后续表现统计,也支持价格数据查询。

主要功能

  1. 01预计算技术面与基本面状态
  2. 02历史状态变化及后续表现统计
  3. 03每日和每周 OHLCV 数据
  4. 04按状态筛选或按字段排序资产
  5. 05自选列表摘要与变化跟踪

适用场景

  1. 01筛选接近支撑位的超卖股票
  2. 02查看指标状态出现后的历史表现
  3. 03跟踪已保存自选列表的变化

MCP 相关

通过托管的 Streamable HTTP 服务或使用 stdio 的本地 npm 包,向 MCP 客户端提供市场数据工具。托管端点支持 OAuth 2.1 和 Bearer token 身份验证。

配置

远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。

服务地址https://mcp.tickerdb.com/mcp
一键复制安装命令
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。

安装包
npmtickerdb-mcp1.8.6

工具

9
参数类型必填说明
endstring否区间结束日期(YYYY-MM-DD)。历史序列查询时与 start 配合使用。
bandstring否将事件筛选为指定区间值(例如 deep_oversold、strong_uptrend、stage_2_growth)。对于 trend_distance_ma40 等 MA 距离事件字段,也支持上方和下方的分组别名。仅与 field 一起使用。
datestring否用于时间点快照的历史日期(YYYY-MM-DD)。需要 Plus 或 Pro 计划。省略则返回最新数据。
metaboolean否仅适用于快照和历史模式。设为 true 可在响应中包含同级 _meta / status_meta 稳定性对象。即使未设置此标志,fields 中明确指定的 *_meta 字段路径仍然有效。
afterstring否返回此日期之后的事件(YYYY-MM-DD)。仅与 field 一起使用。
fieldstring否事件查询的区间字段名称(例如 momentum_rsi_zone、extremes_condition、trend_direction、trend_stage、pattern_bull_flag、pattern_ascending_triangle、pattern_rising_wedge、trend_ma8_slope 至 trend_ma200_slope、trend_ma_crossover_event、trend_distance_ma40、fundamentals_valuation_zone、fundamentals_free_cash_flow、insider_zone、sector_rsi_zone、momentum_divergence_detected、fundamentals_analyst_consensus)。提供此参数时,将返回区间转换历史,而非快照。
limitinteger否事件模式:最大结果数(1–50),默认按时间从新到旧返回。sample=even 日期范围模式:请求的采样行数,受计划限制(Free 3、Plus 10、Pro 50)。
startstring否区间开始日期(YYYY-MM-DD)。历史序列查询时与 end 配合使用。
statsboolean否仅适用于事件模式。设为 true 可返回汇总统计,而非原始事件行。
beforestring否返回此日期之前的事件(YYYY-MM-DD)。仅与 field 一起使用。
fieldsarray否要返回的可选摘要字段。market_cap 和 market_cap_tier 等标识字段始终保留。可传入 ohlcv、trend、momentum、volatility、volume、patterns、extremes、support_level、resistance_level、fundamentals、sector_context 或 levels(付费级别)等部分;也可传入带点号的路径,例如 ohlcv.close、trend.direction、trend.stage、trend.ma_slopes.ma_8、trend.ma_slopes.ma_20、trend.ma_slopes.ma_40、trend.ma_slopes.ma_50、trend.ma_slopes.ma_100、trend.ma_slopes.ma_200、trend.moving_average_values.ma_8、trend.ma_crossover_event、trend.direction_meta、trend.distance_from_ma_band.ma_40、trend.volume_confirmation、momentum.rsi、momentum.rsi_zone、momentum.stochastic_k、momentum.stochastic_d、momentum.stochastic_zone、momentum.xtrm_score、momentum.divergence_detected、momentum.divergence_type、momentum.macd_state、patterns.bull_flag、patterns.bull_flag_breakout、patterns.bear_flag、patterns.bear_flag_breakdown、patterns.ascending_triangle、patterns.rising_wedge、volatility.squeeze_active、volatility.squeeze_days、volatility.regime_trend、volume.climax_detected、volume.climax_type、volume.accumulation_state、volume.price_direction_on_volume、support_level.level_price、support_level.status_meta、resistance_level.level_price、sector_context.rsi_zone、sector_context.trend、sector_context.agreement、sector_context.asset_vs_sector_rsi、sector_context.asset_vs_sector_trend、sector_context.oversold_count、sector_context.valuation_zone、fundamentals.pe_ratio、fundamentals.valuation_zone、fundamentals.growth_zone、fundamentals.free_cash_flow、fundamentals.earnings_proximity、fundamentals.earnings_proximity_basis、fundamentals.last_earnings_surprise、fundamentals.analyst_consensus、fundamentals.analyst_consensus_direction、fundamentals.valuation_percentile、fundamentals.pe_vs_historical_zone、fundamentals.pe_vs_sector_zone、fundamentals.insider_activity、fundamentals.insider_activity.zone、fundamentals.insider_activity.net_direction、levels、levels.support_levels、levels.resistance_levels。若每周快照的阶段证据充足,则会填充 trend.stage。事件字段应优先使用完整架构名称,例如 momentum_rsi_zone、extremes_condition、trend_stage、pattern_bull_flag、pattern_ascending_triangle、pattern_rising_wedge、trend_ma8_slope 至 trend_ma200_slope、trend_ma_crossover_event、trend_distance_ma40、fundamentals_valuation_zone、fundamentals_free_cash_flow、insider_zone、sector_rsi_zone、momentum_divergence_detected 和 fundamentals_analyst_consensus。
sampleenum否仅适用于日期范围模式。使用 'even' 可在整个 start/end 范围内均匀分布快照。even
tickerstring是代码,例如 AAPL、BTCUSD、SPY
timeframeenum否分析时间框架。默认值:dailydaily | weekly
context_bandstring否仅返回上下文代码处于此区间的事件(例如 downtrend)。对于 MA 距离上下文字段,也支持 above 和 below 分组别名。必须与 context_ticker 和 context_field 一起提供。
context_fieldstring否要检查 context ticker 的 Band 字段(例如 trend_direction、trend_stage 或 trend_distance_ma40)。必须与 context_ticker 和 context_band 一起提供。
context_tickerstring否跨资产相关性:用于筛选的第二个 ticker(例如 SPY)。需要同时提供 context_field 和 context_band。仅限 Plus/Pro。

详细介绍

TickerDB — 面向 Agent 的股票市场数据。

为 AI Agent 预先计算的股票市场数据。TickerDB 以命名状态的形式返回 trend_direction、support_level 和 analyst_consensus 等指标,还会说明发生了哪些变化以及接下来通常会发生什么。

10,000 多只美国股票、ETF 和加密货币交易对 · 涵盖趋势、动量、波动率、成交量、形态、支撑位/阻力位、基本面和行业背景的 182 项指标 · 7 年历史数据 · tickerdb.com

工具

工具描述
get_summary某个股票代码的技术面和基本面快照。支持历史查询、状态转换历史,以及后续通常会发生什么
get_ohlcv每日或每周的 EOD K 线,用于计算收益、绘制图表和回测
get_search按分类状态筛选资产,或按 market_cap、pe_ratio 等字段排序
get_schema查看全部 182 个字段及其有效区间值
get_watchlist获取已保存自选列表中每个股票代码的完整分析摘要
get_watchlist_changes查看自选列表的变化 — 按日或按周比较
add_to_watchlist将股票代码添加到自选列表
remove_from_watchlist从自选列表中移除股票代码
get_account账户详情、套餐等级和用量

所有套餐等级(Free、Plus、Pro)均可使用全部工具。各套餐等级在额度、历史数据深度、筛选器数量和自选列表容量上有所不同。请参阅 tickerdb.com/pricing。

快速开始

将 TickerDB 连接到 Claude、ChatGPT 或其他 MCP 客户端(请参阅下方的设置),然后试试:

“给我看看接近支撑位的超卖大盘股”

Agent 会使用 get_search,按 momentum_rsi_zone = oversold 和 market_cap_tier in [large, mega] 进行筛选,然后对单个结果调用 get_summary 进一步查询。无需处理原始数字 — Agent 读取分类状态并直接据此推理。

“AAPL 超卖时通常会发生什么?”

使用 field=momentum_rsi_zone、band=oversold、stats=true 调用 get_summary,即可返回后续情况的汇总分布:在 7 年历史数据中,每次进入超卖状态后的第 5、10、20、50 和 100 天,股票的表现如何。

“我的自选列表有什么变化?”

get_watchlist_changes 只会返回上次管线运行以来字段级别的状态转换 — 进入区间、退出区间和状态变化 — 这样 Agent 就能报告发生了什么变化,无需拉取每个股票代码的完整摘要。

为什么不直接传入原始 OHLCV?

模型可以根据原始 K 线计算 RSI。但如果提供原始 OHLCV 并询问“AAPL 看起来看涨吗?”,模型就会把上下文消耗在计算上 — 逐个计算指标 — 而不是完成你真正要求的分析:注意到 RSI 刚进入超卖区间,同时机构正在增持;回调幅度很大,但 200 日上升趋势依然完好;内部人士整个季度都在卖出。这才是分析。原始 K 线会让这些信息淹没在计算之中。

使用 TickerDB,模型会看到 "oversold"、"accumulation"、"strong_uptrend",并立即将它们联系起来。

状态转换能提供更多信息。“BTC 上次达到这种超卖程度时发生了什么?”这需要根据 7 年的日线数据计算 RSI,找出每次进入超卖区间的情况,并计算此后发生了什么。使用 TickerDB,只需调用一次:使用 field=momentum_rsi_zone、band=oversold、stats=true 调用 get_summary。

设置

托管服务(推荐)

远程服务 https://mcp.tickerdb.com/mcp 支持 OAuth 2.1 和 Bearer 令牌身份验证。请使用 Streamable HTTP 传输(而非旧版 SSE)。

客户端方法
Claude.aiSettings → Connectors → Add → https://mcp.tickerdb.com/mcp → Authorize
Claude Codeclaude mcp add --transport http --scope user tickerdb https://mcp.tickerdb.com/mcp
ChatGPTPlugins → + → https://mcp.tickerdb.com/mcp → Create → Authorize
Cursor.cursor/mcp.json → {"tickerdb": {"url": "https://mcp.tickerdb.com/mcp"}}
任意 MCP 客户端使用 Authorization: Bearer tdb_...,通过 Streamable HTTP 连接 https://mcp.tickerdb.com/mcp
npm 包(本地 stdio)

适用于偏好本地进程的客户端(Claude Desktop 等):

{
  "mcpServers": {
    "tickerdb": {
      "command": "npx",
      "args": ["tickerdb-mcp"],
      "env": {
        "TICKERDB_KEY": "tdb_your_api_key_here"
      }
    }
  }
}

请在 tickerdb.com/dashboard 获取 API 密钥。

结构

由三个包组成的 monorepo:

  • shared/ — 工具定义、API 客户端和服务工厂(内部使用)
  • remote/ — 部署在 mcp.tickerdb.com 的 Cloudflare Worker(Streamable HTTP + OAuth 2.1)
  • local/ — 已发布的 npm 包 tickerdb-mcp(stdio)

两种传输方式使用相同的工具定义。MCP 服务只是一个轻量代理——访问控制、速率限制和字段筛选由 TickerDB API 处理。

身份验证
  • Bearer 令牌 — Authorization: Bearer tdb_...
  • OAuth 2.1 — 动态客户端注册、PKCE、令牌交换和撤销。/authorize 会重定向到 tickerdb.com 以征求授权。

允许未经身份验证的 initialize 和 tools/list 用于发现工具;tools/call 需要身份验证,并会返回带有 resource_metadata 的 401 Bearer 质询,以便顺利重新授权。

会话策略

远程 Worker 默认使用无状态传输——这是有意为之。所有工具均为无状态请求/响应,且 Cloudflare Worker 的内存仅限于各个 isolate。无状态模式可避免边缘会话丢失,从而防止连接器发现的命名空间失效。设置 MCP_SESSION_MODE=stateful 可进行显式会话调试。

开发

npm install                              # workspace dependencies
npm run build                            # type-check remote + shared
npx wrangler dev                         # remote dev server
cd local && npm install && npm run build  # npm package

部署

# Remote server
npx wrangler deploy

# npm + MCP Registry (recommended)
export MCP_PUBLISHER_KEY="your_saved_tickerdb_registry_private_key_hex"
./release.sh mcp patch

# npm only
cd local && npm version patch && npm run build && npm publish

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。