Skip to content
Back to search
100
MCP live MCP 2025-06-18 streamable-http

io.github.tickerbot/mcp-server

io.github.tickerbot/mcp-server

The stock market, in SQL — scan, replay, or subscribe across ~12k US tickers and top 100 cryptos.

Uptime
25.0%
4 direct probes · 30d
Response
579ms
last probe
Tools
32
callable
Resources
0
readable
Prompts
0
available

Tools · 32

tickerbot_list_tickers

Every symbol we track, active or delisted, as one identity row each. Use `/v2/tickers/{ticker}` for the full row.

tickerbot_get_ticker

The full ticker row, every signal on the schema page, for one symbol or a comma list of up to 50. Right now, or with `asof`, as of any past date. Pass a comma list of up to 50 symbols for a batch (`da…

tickerbot_subscribe_ticker

Push one ticker: we POST your endpoint whenever it matches the condition you give. Webhooks need a paid plan (Free has no webhook slots). Omit `target_url` for in-app delivery.

tickerbot_get_ticker_coverage

For one ticker, what we hold and how far back — so an empty result is never ambiguous. Ask this before treating a gap in bars or series as an outage. `minute_tier.included: false` with `on_demand: tru…

tickerbot_list_signals

Every signal you can name in a query — the built-in signals and your own custom signals, in one catalog. Use to discover the signal names and `q` vocabulary before composing a scan; custom signals app…

tickerbot_create_custom_signal

A named boolean predicate you can reference anywhere a built-in signal goes.

tickerbot_update_custom_signal

Update a custom signal you own — its expression, description, or name.

tickerbot_delete_custom_signal

Delete one of your custom signals. Refused by default if another of your signals references it.

tickerbot_get_signal

The state of a signal is the set of tickers matching it right now, or with `asof`, as of any moment. One name, the whole market, one call. Booleans need no `condition`; numerics need one like ">70". S…

tickerbot_subscribe_signal

Push one signal: we POST your endpoint whenever any ticker starts matching it. Webhooks need a paid plan (Free has no webhook slots). Omit `ticker` to watch the whole universe.

tickerbot_scan

Every ticker matching a SQL WHERE clause. Right now, or with `asof`, as of any past date. The `q` grammar is a flat SQL WHERE over signal names: AND/OR/NOT, comparisons, numeric and string literals, c…

tickerbot_subscribe_scan

Push a whole query: we POST your endpoint every time the match set changes. Webhooks need a paid plan (Free has no webhook slots). Use for "alert me when this happens" requests.

tickerbot_get_series

Any signals for any tickers on one shared time grid — up to 50 tickers by 25 columns per call. One flat row per ticker per interval step, cursor-paged backward. `transitions_only: true` with boolean s…

tickerbot_get_bars

OHLCV bars from 1-second through monthly. The prices underneath the table.

tickerbot_list_events

One timeline across every ticker: earnings, dividends, splits, insider filings, analyst actions, plus opt-in signal firings and news. Requires at least one bound: a ticker scope (ticker/tickers/univer…

tickerbot_subscribe_events

Push new events: we POST your endpoint when events of the kinds you chose land in the archives. Webhooks need a paid plan (Free has no webhook slots). `q` filters the ticker STATE; `event_q` filters t…

tickerbot_search_news

SQL query over the news archive. Article rows, or rollups when you group them. Filter to a ticker with the `ticker` param, or in `q` via the auto-unnest alias `tk = 'NVDA'`. `search` is full-text over…

tickerbot_get_etf_holdings

Returns an ETF's constituents and their weights, heaviest first. When the ticker is not an ETF, `is_etf` is false and `holdings` is empty; `is_etf: true` with zero holdings means a real ETF whose hold…

tickerbot_get_etf_sectors

Returns an ETF's sector weights, heaviest first. Always complete, since sector breakdowns are small. When the ticker is not an ETF, `is_etf` is false and `sectors` is empty.

tickerbot_list_universes

Every universe you can reference: your own named ticker lists and the built-in ones. `owner: system` lists the built-in universes (top_10, top_100); `all` lists both. Use a slug as `universe` on scan,…

tickerbot_create_universe

Create a named ticker list owned by your account.

tickerbot_get_universe

Returns the universe doc. Use `top_10`/`top_100` to fetch a system universe; any other slug must be one your account owns.

tickerbot_update_universe

Update one of your universes: its name, description, or members. `tickers` replaces the whole list; `add`/`remove` adjust it. System universes cannot be edited.

tickerbot_delete_universe

Permanently delete one of your universes. Webhooks that reference the deleted universe fail on their next eval — clean those up first.

tickerbot_list_webhooks

Every webhook subscription on this account, newest first.

tickerbot_create_webhook

Canonical create: a webhook is a trigger plus a delivery. Trigger shapes: scan {type:"scan", q, universe?}; ticker {type:"ticker", ticker, condition}; signal {type:"signal", signal, ticker?, universe?…

tickerbot_get_webhook

The current state of one webhook subscription.

tickerbot_update_webhook

Edit a webhook in place — send only the fields you want to change. The trigger and channel are immutable — delete and re-create to change what fires or where it delivers. Unknown fields are a 400.

tickerbot_delete_webhook

Delete a webhook subscription, and its delivery history with it.

tickerbot_list_webhook_deliveries

Recent deliveries for one webhook — what was sent, and what came back.

tickerbot_enable_webhook

Re-enable a disabled webhook and start it clean. Clears match-state, so the next eval treats every currently-matching ticker as new.

tickerbot_test_webhook

Send a real-shape test POST to your endpoint, instantly. One-shot: a failed test never retries and never auto-disables the webhook. 400 when the webhook has no target_url.

How to use

Add to your Claude Desktop / Cursor / Cline MCP config:

{
  "mcpServers": {
    "io.github.tickerbot/mcp-server": {
      "url": "https://api.tickerbot.io/mcp",
      "transport": "streamable-http"
    }
  }
}