Updated Nov 6, 2026

Elliott Wave counts for your AI agent

100 markets, refreshed after every close. Connect once over MCP, or read the same data as JSON or Markdown. Free, no key, no sign-up — just cite Elliott Wave Atlas with a link.

MCP serverhttps://elliottwaveatlas.com/mcp

Connect over MCP

claude mcp add --transport http elliott-wave-atlas https://elliottwaveatlas.com/mcp

Tools

get_market(symbol)

One market's full count: the wave in progress, target, invalidation and time window for each timeframe, monthly to 15-minute.

list_markets(group?)

Every market with its called count in one line.

search_markets(query)

Find a market by symbol, name or group, e.g. “gold”, “semiconductors”, “india”.

get_changes(days?)

Markets whose call was revised, replaced or invalidated recently.

Read the data directly

Example

import requests

m = requests.get("https://elliottwaveatlas.com/data/markets/btc-usd.json").json()
print(m["answer"])
for lvl in m["levels"]:
    print(lvl["timeframe"], lvl["target"], lvl["invalidation"])

What you get

Called count

The wave count we call for the market. Charts, targets and levels all follow it.

Invalidation

The price that proves the count wrong. The call changes when price crosses it.

Levels

One row per timeframe, monthly to 15-minute, each zooming one wave deeper.

asof

The daily close the count was made at. Counts update once per close.

Free to use, quote and fetch with attribution and a link; please fetch at a reasonable rate and don't resell. Educational and informational only — not investment advice. See the terms.