MCP server

Rumor.io ships a Model Context Protocol server so agents can pull attention, engagement, sentiment, and price data without scraping the REST surface themselves. Wire it into Claude Desktop, Cursor, or any other MCP-aware client.

Endpointhttps://rumor.io/api/mcp
TransportStreamable HTTP (stateless)
AuthX-API-Key — same key as the REST API

Install

The server is at https://rumor.io/api/mcp over Streamable HTTP, stateless. Sign in with your Rumor account (OAuth), or send your API key as an X-API-Key header — clients that can only send an Authorization header may send Authorization: Bearer pk_... instead.

Setup for Claude, ChatGPT, Gemini and the coding tools — with copyable snippets — is on the connect page.

Tools

Eight tools cover the surface area: a single-asset snapshot, the screener, a timeseries fetch, an aggregated summary, market-wide trends, a news feed with its publisher list, and an account-status check. Errors and rate limits follow the same envelope as the REST API — see the error reference and rate limits.

The type parameter keeps the formal names — equities, funds, and cryptocurrencies — even though the site labels them Stocks, ETFs, and Crypto.

A note on units, common to every tool: attention level fields (socialAttention*, sentimentNet*Attention*, topic*Attention*) are 0–1 fractions of a cross-entity pool, not percentages. Attention-based *Change* fields are percentage-point deltas in that same fraction unit (level_now − level_prior), not relative percent change; null means there is no prior-period data, and the prior level is level − change. Only priceChangePercentage* is a relative percent.

get_asset

Current attention, engagement, price, and metadata for a single asset.

ArgumentDescription
typeequities · funds · cryptocurrencies
tickerTicker symbol (AAPL, SPY, bitcoin)
fieldsComma-separated field names. Omit for defaults.

screen_assets

Screen, rank, and filter assets of a type — the website's Screener as a tool. Returns a columnar table (arrays per column, aligned by index, plus ids). Custom fields and filters need a Personal plan or above.

ArgumentDescription
typeequities · funds · cryptocurrencies
fieldsComma-separated column names to return. Omit for the screener's default columns.
sortColumn to rank by (numeric columns only). Omit for the type's default ranking.
orderasc · desc. Default: desc.
limitMax rows to return (1–50). Default: 25.
filtersObject keyed by column name; each value takes gt, lt (inclusive numeric bounds), contains (case-insensitive substring), include, exclude (categorical value lists).

get_timeseries

Historical price, sentiment, and attention series for a single asset. 1d, 1y, and all need a Personal plan or above; free keys can use 1w, 1m, and 3m.

ArgumentDescription
typeequities · funds · cryptocurrencies
tickerTicker symbol
period1d (hourly) · 1w · 1m · 3m (daily) · 1y · all (monthly). Default: 1d.
fieldsComma-separated field names. Omit for defaults.

get_summary

Aggregate summary metrics (volume, sentiment) for a single asset over a period.

ArgumentDescription
typeequities · funds · cryptocurrencies
tickerTicker symbol
period1w · 1m · 3m · 1y. Default: 1m.
fieldsComma-separated field names. Omit for defaults.

get_trends

Market-wide attention and sentiment trends for an asset type, broken down by sector, market cap, region, or topic.

ArgumentDescription
typeequities · funds · cryptocurrencies
sectorsComma-separated PascalCase sector keys (Technology, Healthcare). Omit for all. Narrows the sector fields only.
fieldsengagement · sentiment · sectorSentiment · capSentiment · regionSentiment · topicEngagement. Default: engagement. Topics group messages, not companies, and have no bullish/bearish split.
resolutionhour · day · month. Default: day.
periodPer resolution — hour: 1d/3d/1w · day: 1w/1m/3m/1y · month: 1y/3y/all. Defaults to the smallest range for the resolution.

get_news

News articles from our own archive, newest first — the whole market by default, or one asset class or one asset. Periods past 90 days (1y, all) need a Personal plan or above.

ArgumentDescription
typeequities · funds · cryptocurrencies. Omit for every class.
tickerTicker symbol (AAPL, SPY, bitcoin). Omit for the whole market.
period1w · 1m · 3m · 1y · all. Default: 1m.
publisherComma-separated publisher names, OR'd together. Exact, case-sensitive matches from list_news_publishers. Omit for all.
limitMax articles to return (1–50). Default: 20.

list_news_publishers

Every publisher that wrote in a period, with article counts, sorted by count — the vocabulary get_news's publisher argument filters on. Periods past 90 days (1y, all) need a Personal plan or above.

ArgumentDescription
typeequities · funds · cryptocurrencies. Omit for every class.
tickerTicker symbol (AAPL, SPY, bitcoin). Omit for the whole market.
period1w · 1m · 3m · 1y · all. Default: 1m.

get_account_status

The account behind the connection: its plan, how the call is authenticated, and today's request budget — used, remaining, and when it resets. The tool to call when a request is refused or rate-limited.

You're viewing limited data.