npm tickerdb-mcpstreamable-httpMITupdated 29d ago
Pre-computed stock market data for AI agents. TickerDB returns indicators like trenddirection, supportlevel, and analystconsensus as named states — plus what changed and what usually happens next.
TickerDB 能做什么?
TickerDB — Stock market data for agents.
Pre-computed stock market data for AI agents. TickerDB returns indicators like trend_direction, support_level, and analyst_consensus as named states — plus what changed and what usually happens next.
10,000+ US stocks, ETFs, and crypto pairs · 182 indicators across trend, momentum, volatility, volume, patterns, support/resistance, fundamentals, and sector context · 7 years of history · tickerdb.com
Tools
| Tool | Description |
|---|---|
get_summary |
Technical + fundamental snapshot for a ticker. Historical lookups, state transition history, and what usually happens after |
get_ohlcv |
Daily or weekly EOD candles for returns, charts, and backtests |
get_search |
Screen assets by categorical state or rank by fields like market_cap or pe_ratio |
get_schema |
Discover all 182 fields and their valid band values |
get_watchlist |
Full analytical summary for every ticker on your saved watchlist |
get_watchlist_changes |
What changed on your watchlist — day-over-day or week-over-week |
add_to_watchlist |
Add tickers to your watchlist |
remove_from_watchlist |
Remove tickers from your watchlist |
get_account |
Account details, plan tier, and usage |
All tools are available on every tier (Free, Plus, Pro). Tiers differ by credit limits, history depth, number of filters, and watchlist size. See tickerdb.com/pricing.
Quick start
Connect TickerDB to Claude, ChatGPT, or another MCP client (see Setup below), then try:
"Show me oversold large-cap stocks near support"
The agent calls get_search with filters for momentum_rsi_zone = oversold and market_cap_tier in [large, mega], then follows up with get_summary on individual results. No raw number crunching — the agent reads categorical states and reasons over them directly.
"What usually happens when AAPL goes oversold?"
get_summary with field=momentum_rsi_zone, band=oversold, stats=true returns aggregate aftermath distributions: how the stock performed 5, 10, 20, 50, and 100 days after each oversold entry over 7 years of history.
"What changed on my watchlist?"
get_watchlist_changes returns only the field-level state transitions since the last pipeline run — band entries, exits, and shifts — so the agent reports what moved without pulling full summaries for every ticker.
Why not just pass raw OHLCV?
A model can compute RSI from raw bars. But ask "Does AAPL look bullish?" with raw OHLCV and it burns its context on arithmetic — computing indicators one by one — instead of doing what you actually asked: noticing that RSI just hit oversold while institutions are accumulating, that the pullback is sharp but the 200-day uptrend is intact, that insiders have been selling all quarter. That's the analysis. Raw bars bury it under computation.
With TickerDB, the model sees "oversold", "accumulation", "strong_uptrend" and connects them immediately.
State transitions go further. "What happened the last time BTC was this oversold?" means computing RSI across 7 years of daily bars, finding every oversold entry, and calculating what happened after each one. With TickerDB it's one call: get_summary with field=momentum_rsi_zone, band=oversold, stats=true.
Setup
Hosted server (recommended)
The remote server at https://mcp.tickerdb.com/mcp supports OAuth 2.1 and Bearer token auth. Use Streamable HTTP transport (not legacy SSE).
| Client | How |
|---|---|
| Claude.ai | Settings → Connectors → Add → https://mcp.tickerdb.com/mcp → Authorize |
| Claude Code | claude mcp add --transport http --scope user tickerdb https://mcp.tickerdb.com/mcp |
| ChatGPT | Plugins → + → https://mcp.tickerdb.com/mcp → Create → Authorize |
| Cursor | .cursor/mcp.json → {"tickerdb": {"url": "https://mcp.tickerdb.com/mcp"}} |
| Any MCP client | Streamable HTTP to https://mcp.tickerdb.com/mcp with Authorization: Bearer tdb_... |
npm package (local stdio)
For clients that prefer a local process (Claude Desktop, etc.):
{
"mcpServers": {
"tickerdb": {
"command": "npx",
"args": ["tickerdb-mcp"],
"env": {
"TICKERDB_KEY": "tdb_your_api_key_here"
}
}
}
}
Get an API key at tickerdb.com/dashboard.
Structure
Three-package monorepo:
shared/— Tool definitions, API client, and server factory (internal)remote/— Cloudflare Worker atmcp.tickerdb.com(Streamable HTTP + OAuth 2.1)local/— Published npm packagetickerdb-mcp(stdio)
Both transports use the same tool definitions. The MCP server is a thin proxy — access control, rate limiting, and field filtering are handled by the TickerDB API.
Authentication
- Bearer token —
Authorization: Bearer tdb_... - OAuth 2.1 — dynamic client registration, PKCE, token exchange, revocation.
/authorizeredirects to tickerdb.com for consent.
Unauthenticated initialize and tools/list are permitted for tool discovery; tools/call requires auth and returns a 401 Bearer challenge with resource_metadata for clean re-authorization.
Session strategy
The remote worker defaults to stateless transport — intentionally. All tools are request/response stateless, and Cloudflare Worker memory is isolate-local. Stateless mode avoids edge session loss that can invalidate connector-discovered namespaces. Set MCP_SESSION_MODE=stateful for explicit session debugging.
Development
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
Deployment
# 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
安装
把 TickerDB 添加到你的客户端。选择你正在使用的那个。
{
"servers": {
"tickerdb-mcp": {
"type": "http",
"url": "https://mcp.tickerdb.com/mcp"
}
}
}Add to `.vscode/mcp.json` in your workspace.
claude mcp add tickerdb-mcp -- npx -y tickerdb-mcpcodex mcp add tickerdb-mcp -- npx -y tickerdb-mcpamp mcp add tickerdb-mcp -- npx -y tickerdb-mcp{
"mcpServers": {
"tickerdb-mcp": {
"command": "npx",
"args": [
"-y",
"tickerdb-mcp"
]
}
}
}Add to `claude_desktop_config.json`, then restart Claude Desktop.
{
"mcpServers": {
"tickerdb-mcp": {
"command": "npx",
"args": [
"-y",
"tickerdb-mcp"
]
}
}
}Add to `~/.cursor/mcp.json`, or `.cursor/mcp.json` for a single project.
{
"mcpServers": {
"tickerdb-mcp": {
"command": "npx",
"args": [
"-y",
"tickerdb-mcp"
]
}
}
}Add to `~/.codeium/windsurf/mcp_config.json`.
{
"mcpServers": {
"tickerdb-mcp": {
"command": "npx",
"args": [
"-y",
"tickerdb-mcp"
]
}
}
}Add to `cline_mcp_settings.json` via the MCP Servers panel.
{
"mcpServers": {
"tickerdb-mcp": {
"command": "npx",
"args": [
"-y",
"tickerdb-mcp"
]
}
}
}Add to `~/.gemini/settings.json`.
{
"mcpServers": {
"tickerdb-mcp": {
"type": "local",
"command": "npx",
"args": [
"-y",
"tickerdb-mcp"
],
"tools": [
"*"
]
}
}
}Add to `~/.copilot/mcp-config.json`, or run `/mcp add` inside the CLI.
{
"context_servers": {
"tickerdb-mcp": {
"command": {
"path": "npx",
"args": [
"-y",
"tickerdb-mcp"
]
}
}
}
}Add to your Zed `settings.json`.
npx -y tickerdb-mcpRun `goose configure`, choose **Add Extension → Command-line Extension**, and paste this command.
9 个工具
TickerDB 向已连接的智能体提供 9 个工具。
- get_summary
- Technical + fundamental snapshot for a ticker. Historical lookups, state transition history, and what usually happens after
- get_ohlcv
- Daily or weekly EOD candles for returns, charts, and backtests
- get_search
- Screen assets by categorical state or rank by fields like `market_cap` or `pe_ratio`
- get_schema
- Discover all 182 fields and their valid band values
- get_watchlist
- Full analytical summary for every ticker on your saved watchlist
- get_watchlist_changes
- What changed on your watchlist — day-over-day or week-over-week
- add_to_watchlist
- Add tickers to your watchlist
- remove_from_watchlist
- Remove tickers from your watchlist
- get_account
- Account details, plan tier, and usage
评分
87 / 100
优秀
- 文档25/25
- 维护25/25
- 可信度16/20
- 能力6/15
- 安装体验15/15
- Documents what it does and how to connect
- Has a resolvable package or endpoint
- Exposes at least one tool, prompt or resource
- README has substantive content
- Includes a code example
- Documents its configuration
- Mentions credentials or security posture
- Last commit 22 days ago
- Has a release history
- Repository is not archived
- Licensed MIT
- Namespace verified in the official MCP registry
- Claimed by its owner
- Published under an organisation
- 9 tool(s) documented
- Provides prompt templates
- Provides resources
- 18 documented install method(s)
- Published to a package registry
- Offers a hosted endpoint — no local install
版本历史
| 版本 | 发布于 |
|---|---|
| 1.8.6最新 | 2026年7月9日 |
| 1.8.5 | 2026年7月8日 |
| 1.8.4 | 2026年7月6日 |
| 1.8.2 | 2026年6月29日 |
| 1.7.15 | 2026年4月24日 |
| 1.7.12 | 2026年4月24日 |
| 1.7.11 | 2026年4月19日 |
| 1.7.10 | 2026年4月17日 |
| 1.7.9 | 2026年4月17日 |
| 1.7.8 | 2026年4月17日 |
| 1.7.7 | 2026年4月17日 |
| 1.7.6 | 2026年4月17日 |
| 1.7.5 | 2026年4月17日 |
| 1.7.4 | 2026年4月15日 |