MCP server reference
What's Moving is an MCP server over the same archive the app shows. Fourteen read-only tools: dossiers, the timestamped record, associations, price bars with indicators, fundamentals, search. Endpoint https://api.whatsmoving.app/api/mcp — set-up steps for Claude, ChatGPT, Codex and other clients are on Connect.
What you can ask
- What's behind the AI data-center power names this week?
- Which narratives has NVDA been part of since August, and which way did it move each time?
- Give me XLE's last 60 daily bars with RSI and MACD.
- What moved in semiconductors today, and what was cited for each move?
- How did the Energy sector trade this week, and which Energy news was on file?
- Which narratives gained or lost members over the last month?
- Which of my followed stocks moved this week, and which narratives were they part of?
Tools
| Tool | Returns | Arguments |
|---|---|---|
get_market | The session at a glance: up to nine stories with typed refs to their evidence, index and macro quotes, breadth, the sector heatmap, the macro narratives cited that session, biggest movers, the upcoming economic calendar | — |
get_sector | One sector or industry: its session, its movers, the narratives running through it, its fund's close-to-close once the session has closed, and the week's articles judged to be about the sector — context, never a move's explanation | category |
get_security | One stock: recent moves sized against its own history and the session, current narratives, a fundamentals digest, its sector. A no-driver move may carry its sector fund's closed session and its live narratives — co-occurrence, not attribution | security |
get_events | Timestamped archive records for a market, security or sector scope, newest first: detected moves with cited evidence and the stories selected for a session. A move_kind: sector row is a sector fund's own session, published beside the sector-tagged articles that co-occurred with it — never a cause | scope, from, to, changed_since, limit, cursor |
get_narrative_history | One narrative's recorded activity: its rows, membership with the time each was observed from, the sessions its members moved its way, the sectors it reaches | narrative, from, to, limit, cursor |
get_similar_events | Past moves matching one on recorded factual dimensions — catalyst type, category, magnitude band — with the match explained. Category is the subject's industry as classified today; the archive keeps no classification history | move, dimensions, from, to, limit, cursor |
get_news | The curated corpus for a market, security, sector or narrative scope: source, title, time, URL. Article text is never returned. A market scope returns macro items only; use a security or category scope for a stock's news | scope, from, to, limit, cursor |
get_association_summary | Which edge types one node has, a preview of each, and whether more follow | node |
get_associations | One hop from a node along one edge type; windowed types carry their ranges | node, edge_type, from, to, limit, cursor |
get_candles | OHLCV bars for any US-listed stock or ETF, or an index proxy such as ^VIX, as parallel columns; daily bars accept indicator columns | security, interval (5m/1d), from, to, indicators, limit, cursor |
get_fundamentals | Published valuation, margin, growth and earnings figures for one to five stocks. Factual metrics only — no scores, targets or comparisons | symbols |
get_series | Session-by-session aggregates: narrative membership turnover, market-wide | scope, metric, from, to, limit, cursor |
search | Name fragment → typed refs: securities (an exact ticker finds any US listing), sectors/industries, narratives | query |
get_my_follows | Published items filtered by this account's follows — a delivery filter; the items are the same for everyone | limit, cursor |
Price bars and indicators
get_candles serves daily bars over at most five years per request and 5-minute bars over at most fourteen days per request, for any US-listed stock or ETF, and for ^VIX. Daily bars are split-adjusted, not dividend-adjusted.
Indicators are computed on our side with ta-lib on daily bars only, up to six per call. You ask by name; the answer's column key carries the parameters, so rsi_14 says what was computed; the warm-up is long enough that the value does not depend on where the window starts — and for a recently listed stock with less history than that, the response says how much warm-up it actually had:
| Ask for | Indicator | Parameters | Column key |
|---|---|---|---|
sma | Simple moving average | 20 | sma_20 |
ema | Exponential moving average | 20 | ema_20 |
bbands | Bollinger Bands (upper / middle / lower) | 20, 2σ up, 2σ down | bbands_20_2_2 |
sar | Parabolic SAR | 0.02, 0.2 | sar_0.02_0.2 |
rsi | RSI | 14 | rsi_14 |
macd | MACD (macd / signal / hist) | 12, 26, 9 | macd_12_26_9 |
stoch | Stochastic (k / d) | 14, 3, 3 | stoch_14_3_3 |
adx | ADX | 14 | adx_14 |
cci | CCI | 14 | cci_14 |
mfi | Money Flow Index | 14 | mfi_14 |
willr | Williams %R | 14 | willr_14 |
roc | Rate of change | 10 | roc_10 |
aroon | Aroon (up / down) | 14 | aroon_14 |
atr | Average true range | 14 | atr_14 |
natr | Normalised ATR | 14 | natr_14 |
adosc | Chaikin A/D oscillator | 3, 10 | adosc_3_10 |
stddev | Standard deviation | 20, 1σ | stddev_20_1 |
Tiers and limits
Free: new content 15 minutes after it publishes, and the archive rails — events, news, series, associations, histories — reach back 30 days. Pro: no delay, the full archive. Price bars, fundamentals and a dossier's present state are served to both tiers (Free with the delay). Both tiers share one hourly budget per account of 600 units; most calls cost one unit, get_sector and search two, get_market and get_security four, get_candles five, get_fundamentals eight. Pages are bounded and walk by cursor.
What the server will not do
Nothing predictive, nothing personal: every attribution is editorial and dated, no tool says what happens next, and your follows shape only get_my_follows. Article text is never returned — a title, a time and a URL are, with the source's name where the feed carries one. The news we cite comes from public sources; we link to each source and judge whether it supports an attribution, but do not verify every fact it reports — judge it before you rely on it.
Privacy
One log line per call (tool, outcome, duration, size), never the question or the answer; details under Connecting an AI assistant in the privacy policy.
Clients
Claude (directory listing or custom connector, sign in), Claude Code (one command, sign in), the ChatGPT desktop app and Codex (sign in) are verified; any other client that speaks Streamable HTTP and sends a bearer header works with a personal token minted in the app. Steps: Connect.
Post-hoc analysis only — no predictions, no investment advice.