# Socialytics: everything in one file

> Socialytics gives AI assistants and code live trend data: 53 data sets from 27 platforms (Google, Google Images, Google News, Google Shopping, YouTube, Wikipedia, TikTok, Amazon, Pinterest, npm, PyPI, Steam, Google Play, App Store, GitHub, Google Trends, IMDb, Open Library, Polymarket, Reddit, Web, Spotify, Substack, X, Instagram, Bluesky, Hacker News), through 5 tools over MCP or a REST API. About five years of weekly history where the source has it. One free API key for both.

Generated from the API catalog on 2026-11-03.

## Connect

- MCP, sign in (Claude, ChatGPT): `https://socialytics.dev/mcp`. No key to paste.
- MCP, API key (Cursor, VS Code, Claude Code, other clients): `https://api.trendsmcp.ai/mcp`
- REST: `POST https://api.trendsmcp.ai/api` with a JSON body; `mode` picks the tool
- Auth: `Authorization: Bearer YOUR_API_KEY` (the bare key works too). Free key: https://socialytics.dev/account (email and an 8-digit code, no card)

### Claude (claude.ai, Claude Desktop): sign in, no key
Settings → Connectors → Add custom connector. Name `Socialytics`, URL `https://socialytics.dev/mcp`. Or open: https://claude.ai/customize/connectors?modal=add-custom-connector&connectorName=Socialytics&connectorUrl=https%3A%2F%2Fsocialytics.dev%2Fmcp

### ChatGPT: sign in, no key
ChatGPT on the web → Plugins → + → Add custom MCP server → URL `https://socialytics.dev/mcp`, authentication OAuth → create, install and sign in.

### Claude Code
```
claude mcp add --transport http socialytics https://api.trendsmcp.ai/mcp --header "Authorization: Bearer YOUR_API_KEY"
```

### Cursor
`~/.cursor/mcp.json`, inside `mcpServers`:
```json
{
  "socialytics": {
    "url": "https://api.trendsmcp.ai/mcp",
    "headers": {
      "Authorization": "Bearer YOUR_API_KEY"
    }
  }
}
```

### VS Code (and GitHub Copilot)
`.vscode/mcp.json`, inside `servers`:
```json
{
  "socialytics": {
    "type": "http",
    "url": "https://api.trendsmcp.ai/mcp",
    "headers": {
      "Authorization": "Bearer YOUR_API_KEY"
    }
  }
}
```

### Windsurf
`~/.codeium/windsurf/mcp_config.json`, inside `mcpServers`:
```json
{
  "socialytics": {
    "serverUrl": "https://api.trendsmcp.ai/mcp",
    "headers": {
      "Authorization": "Bearer YOUR_API_KEY"
    }
  }
}
```

### Cline
MCP Servers → Remote Servers:
```json
{
  "socialytics": {
    "url": "https://api.trendsmcp.ai/mcp",
    "headers": {
      "Authorization": "Bearer YOUR_API_KEY"
    }
  }
}
```

### Claude Desktop with a key, and other stdio-only clients
```json
{
  "socialytics": {
    "command": "npx",
    "args": [
      "-y",
      "mcp-remote",
      "https://api.trendsmcp.ai/mcp",
      "--header",
      "Authorization: Bearer YOUR_API_KEY"
    ]
  }
}
```

### LangChain
```python
from langchain_mcp_adapters.client import MultiServerMCPClient
client = MultiServerMCPClient({"socialytics": {"url": "https://api.trendsmcp.ai/mcp", "transport": "streamable_http", "headers": {"Authorization": "Bearer YOUR_API_KEY"}}})
```

### n8n, Make, Zapier and any HTTP tool
`POST https://api.trendsmcp.ai/api` with header `Authorization: Bearer YOUR_API_KEY` and a JSON body such as `{"mode": "get_growth", "source": "google search", "keyword": "nike"}`.

## Tools

- `get_time_series`: Full history for one topic. About five years of weekly history for one keyword on one source, as a 0 to 100 index plus volume where the source has it. Cost: 1 request per call.
- `get_growth`: How fast something is rising. Point-to-point growth over one or more windows, on one source or several in the same call. Cost: 1 request per call, every window included.
- `get_top_trends`: What's moving right now. A live ranked board with no keyword: the current leaders, or the biggest climbers against an earlier snapshot. Cost: MCP: 1 request per 10 rows, at most 10 per call. REST: 1 request per call.
- `get_context`: What people are saying. What people are posting, reading and betting about a keyword right now: posts, videos, stories, comments and markets from each source, with engagement. Cost: MCP: 1 request per source, at most 5 per call. REST: one source per call, 1 request.
- `get_top_posts`: Top posts for one hashtag. Live top posts for one hashtag, fetched on every call. Business plan. Cost: 1 request per call.
- `get_usage`: Free. MCP only: your plan, requests used and left, reset date.

### get_time_series

Full history for one topic. About five years of weekly history for one keyword on one source, as a 0 to 100 index plus volume where the source has it.

- Cost: 1 request per call
- MCP tool `get_time_series`; REST `"mode": "get_time_series"`

| Parameter | Type | Required | Notes |
|---|---|---|---|
| `keyword` | string | yes | Format depends on the source. |
| `source` | string | yes | Exactly one keyword source. |

Options some data sets take:

| Option | Works with | Meaning |
|---|---|---|
| `country` | `Google Search`, `Google Images`, `Google News`, `Google Shopping`, `YouTube`, `TikTok`, `Pinterest` | ISO 3166-1 alpha-2 country code (US, GB, JP). Boards and TikTok default to US; Google time series and growth default to worldwide |
| `language` | `Wikipedia` | Wikipedia language edition (en, de, ja, pt); defaults to en |
| `resolution` | `Google Search`, `Google Images`, `Google News`, `Google Shopping`, `YouTube` | 'weekly' (about 5 years, default) or 'daily' (last 90 days, fetched live) |

Data sets (`source`, 14): `Google Search`, `Google Images`, `Google News`, `Google Shopping`, `YouTube`, `Wikipedia`, `TikTok`, `Amazon`, `Pinterest`, `npm`, `Python`, `Steam`, `App Downloads`, `App Rankings`. Formats and categories: https://socialytics.dev/data-catalog.md

Request:

```bash
curl -X POST https://api.trendsmcp.ai/api \
  -H "Authorization: Bearer YOUR_API_KEY" -H "Content-Type: application/json" \
  -d '{"mode": "get_time_series", "keyword": "electric vehicles", "source": "Google Search"}'
```

Response: A list of points, oldest first (weekly for most sources, daily or monthly for some). About 260 weekly points (5 years) per call.

| Field | Type | Meaning |
|---|---|---|
| `date` | string | ISO 8601 date of the point, e.g. 2026-03-21. |
| `value` | number | Interest on a 0 to 100 index. |
| `volume` | number \| null | Absolute volume where the source has it (searches, views, downloads). |
| `keyword` | string | The keyword you asked for. |
| `source` | string | The source used. |

```json
[
  {
    "date": "2026-10-17",
    "value": 47,
    "volume": 25853617,
    "keyword": "bitcoin",
    "source": "google search"
  },
  {
    "date": "2026-10-24",
    "value": 52,
    "volume": 28012440,
    "keyword": "bitcoin",
    "source": "google search"
  }
]
```

### get_growth

How fast something is rising. Point-to-point growth over one or more windows, on one source or several in the same call.

- Cost: 1 request per call, every window included
- MCP tool `get_growth`; REST `"mode": "get_growth"`

| Parameter | Type | Required | Notes |
|---|---|---|---|
| `keyword` | string | yes | Format depends on the source. |
| `source` | string | yes | One source, or several separated by commas. |
| `percent_growth` | string[] | no | Window presets such as 3M, 12M or YTD. Default 12M. |

Options some data sets take:

| Option | Works with | Meaning |
|---|---|---|
| `country` | `Google Search`, `Google Images`, `Google News`, `Google Shopping`, `YouTube`, `TikTok`, `Pinterest` | ISO 3166-1 alpha-2 country code (US, GB, JP). Boards and TikTok default to US; Google time series and growth default to worldwide |
| `language` | `Wikipedia` | Wikipedia language edition (en, de, ja, pt); defaults to en |
| `resolution` | `Google Search`, `Google Images`, `Google News`, `Google Shopping`, `YouTube` | 'weekly' (about 5 years, default) or 'daily' (last 90 days, fetched live) |

Windows: any number with D, W, M or Y up to 5 years, plus MTD, QTD and YTD. Default `12M`. Common: `7D`, `1W`, `14D`, `2W`, `30D`, `1M`, `2M`, `3M`, `6M`, `9M`, `12M`, `1Y`, `18M`, `24M`, `2Y`, `36M`, `3Y`, `48M`, `4Y`, `60M`, `5Y`, `MTD`, `QTD`, `YTD`.

A custom range (REST) is an object in `percent_growth`:

| Field | Type | Meaning |
|---|---|---|
| `name` | string | Optional label, returned as period. |
| `recent` | string | The more recent date, YYYY-MM-DD. |
| `baseline` | string | The date to compare with, YYYY-MM-DD. |

Data sets (`source`, 14): `Google Search`, `Google Images`, `Google News`, `Google Shopping`, `YouTube`, `Wikipedia`, `TikTok`, `Amazon`, `Pinterest`, `npm`, `Python`, `Steam`, `App Downloads`, `App Rankings`. Formats and categories: https://socialytics.dev/data-catalog.md

Request:

```bash
curl -X POST https://api.trendsmcp.ai/api \
  -H "Authorization: Bearer YOUR_API_KEY" -H "Content-Type: application/json" \
  -d '{"mode": "get_growth", "keyword": "electric vehicles", "source": "Google Search", "percent_growth": ["3M", "12M"]}'
```

Response: One result per window you asked for.

| Field | Type | Meaning |
|---|---|---|
| `search_term` | string | The keyword you asked for. |
| `data_source` | string | The source used. |
| `results[].period` | string | The window, e.g. 12M, or your custom name. |
| `results[].growth` | number | Change in percent, positive or negative. |
| `results[].direction` | string | increase or decrease. |
| `results[].recent_date / baseline_date` | string | The two dates compared. |
| `results[].recent_value / baseline_value` | number | The 0 to 100 index at those dates. |
| `results[].volume_growth` | number \| null | Change in absolute volume, where the source has volume. |

```json
{
  "search_term": "nike",
  "data_source": "google search",
  "results": [
    {
      "period": "12M",
      "growth": -12.31,
      "direction": "decrease",
      "recent_date": "2026-10-24",
      "baseline_date": "2025-10-25",
      "recent_value": 57,
      "baseline_value": 65,
      "volume_growth": -12.31
    }
  ]
}
```

### get_top_trends

What's moving right now. A live ranked board with no keyword: the current leaders, or the biggest climbers against an earlier snapshot.

- Cost: MCP: 1 request per 10 rows, at most 10 per call. REST: 1 request per call
- MCP tool `get_top_trends`; REST `"mode": "get_top_trends"`

| Parameter | Type | Required | Notes |
|---|---|---|---|
| `type` | string | yes | Exactly one live board. |
| `limit` | integer | no | 1 to 200. Default 25. |
| `offset` | integer | no | Rows to skip. Default 0. |
| `sort` | string | no | rank (default) or rank_change for climbers. |
| `window` | string | no | With rank_change: 1d, 3d, 7d, 14d, 30d. Default 30d. |

Options some data sets take:

| Option | Works with | Meaning |
|---|---|---|
| `country` | `Google Trends`, `Google Trends by Category`, `Pinterest Trending`, `Pinterest Trending by Category`, `TikTok Trending Hashtags`, `TikTok Trending Hashtags by Category`, `X (Twitter) Trending`, `YouTube Trending` | ISO 3166-1 alpha-2 country code (US, GB, JP). Boards and TikTok default to US; Google time series and growth default to worldwide |
| `category` | `Amazon Best Sellers by Category`, `Google Trends by Category`, `Pinterest Trending by Category`, `Top Websites`, `Substack by Category`, `TikTok Trending Hashtags by Category` | Official board name within the feed; without it the feed mixes every board |

Data sets (`type`, 27): `Amazon Best Sellers Top Rated`, `Amazon Best Sellers by Category`, `App Store Top Free`, `App Store Top Paid`, `GitHub`, `Google News Top News`, `Google Play`, `Google Trends`, `Google Trends by Category`, `IMDb MOVIEmeter`, `Open Library Trending Books`, `Pinterest Trending`, `Pinterest Trending by Category`, `Polymarket Top Markets`, `Reddit Hot Posts`, `Reddit World News`, `Top Websites`, `Spotify Top Podcasts`, `Steam Most Played`, `Substack`, `Substack by Category`, `TikTok Trending Hashtags`, `TikTok Trending Hashtags by Category`, `TikTok Trending Searches`, `Wikipedia Trending`, `X (Twitter) Trending`, `YouTube Trending`. Formats and categories: https://socialytics.dev/data-catalog.md

Request:

```bash
curl -X POST https://api.trendsmcp.ai/api \
  -H "Authorization: Bearer YOUR_API_KEY" -H "Content-Type: application/json" \
  -d '{"mode": "get_top_trends", "type": "Google Trends", "limit": 10}'
```

Response: The board as of its latest snapshot. Rows are [rank, keyword] (plus the category path on category boards); with sort rank_change they are objects with prev_rank and rank_change.

| Field | Type | Meaning |
|---|---|---|
| `type` | string | The board. |
| `as_of_ts` | string | When the snapshot was taken. |
| `count` | number | Rows returned. |
| `data` | array | [rank, keyword] rows, or {rank, keyword, prev_rank, rank_change} with sort rank_change. |
| `note` | string | Your plan's limit on this board, when it applies (e.g. top 10, delayed 24 hours). |

```json
{
  "type": "Google Trends",
  "as_of_ts": "2026-10-27T12:00:00Z",
  "count": 3,
  "data": [
    [
      1,
      "world series"
    ],
    [
      2,
      "election polls"
    ],
    [
      3,
      "halloween costumes"
    ]
  ]
}
```

### get_context

What people are saying. What people are posting, reading and betting about a keyword right now: posts, videos, stories, comments and markets from each source, with engagement.

- Cost: MCP: 1 request per source, at most 5 per call. REST: one source per call, 1 request
- MCP tool `get_context`; REST `"mode": "get_context"`

| Parameter | Type | Required | Notes |
|---|---|---|---|
| `keyword` | string | yes | Any name or phrase. |
| `source` | string | yes | One source, or up to 5 separated by commas. |
| `days` | integer | no | Look back 1 to 30 days. Default 7. |
| `limit` | integer | no | Items per source, 1 to 20. Default 10. |

Options some data sets take:

| Option | Works with | Meaning |
|---|---|---|
| `comments` | `YouTube`, `TikTok`, `Instagram`, `X`, `Reddit`, `Bluesky`, `Hacker News` | Top comments or replies for the first N items of each source (0 to 5, default 2) |

Data sets (`source`, 10): `News`, `YouTube`, `TikTok`, `Instagram`, `X`, `Reddit`, `Bluesky`, `Hacker News`, `Polymarket`, `GitHub`. Formats and categories: https://socialytics.dev/data-catalog.md

Request:

```bash
curl -X POST https://api.trendsmcp.ai/api \
  -H "Authorization: Bearer YOUR_API_KEY" -H "Content-Type: application/json" \
  -d '{"mode": "get_context", "keyword": "nvidia", "source": "News"}'
```

Response: Per source, the posts, videos, stories and markets about the keyword, best first.

| Field | Type | Meaning |
|---|---|---|
| `keyword` | string | The keyword you asked for. |
| `window_days` | number | How far back it looked. |
| `sources[].source` | string | The source. |
| `sources[].items[]` | array | Each item: kind, url, title, text, author, published, engagement (views, likes, comments, shares, score…), top_comments. |
| `sources[].error` | string \| null | Why a source returned nothing, when it failed. |

```json
{
  "keyword": "nintendo switch 2",
  "window_days": 7,
  "count": 1,
  "sources": [
    {
      "source": "YouTube",
      "count": 1,
      "error": null,
      "items": [
        {
          "kind": "video",
          "title": "Switch 2 review",
          "url": "https://youtube.com/watch?v=\u2026",
          "published": "2026-10-22T09:39:22Z",
          "engagement": {
            "views": 91542,
            "likes": 5997,
            "comments": 527
          }
        }
      ]
    }
  ]
}
```

### get_top_posts

Top posts for one hashtag. Live top posts for one hashtag, fetched on every call. Business plan.

- Cost: 1 request per call. Business plan and up.
- MCP tool `get_top_posts`; REST `"mode": "get_top_posts"`

| Parameter | Type | Required | Notes |
|---|---|---|---|
| `keyword` | string | yes | The hashtag, with or without #. |
| `source` | string | yes | TikTok or Instagram. |
| `limit` | integer | no | 1 to 20. Default 20. |

Data sets (`source`, 2): `TikTok`, `Instagram`. Formats and categories: https://socialytics.dev/data-catalog.md

Request:

```bash
curl -X POST https://api.trendsmcp.ai/api \
  -H "Authorization: Bearer YOUR_API_KEY" -H "Content-Type: application/json" \
  -d '{"mode": "get_top_posts", "keyword": "booktok", "source": "TikTok"}'
```

Response: The top posts for the hashtag right now, fetched live on every call.

| Field | Type | Meaning |
|---|---|---|
| `keyword` | string | The hashtag, without #. |
| `source` | string | tiktok or instagram. |
| `posts[].rank` | number | Position on the hashtag page. |
| `posts[].caption` | string | The post's text. |
| `posts[].author` | string \| null | The account, where available. |
| `posts[].plays / likes / comments` | number \| null | Engagement, where the source has it. |
| `posts[].posted` | string | When it was posted. |
| `posts[].url` | string | Link to the post. |

```json
{
  "keyword": "booktok",
  "source": "tiktok",
  "count": 1,
  "posts": [
    {
      "rank": 1,
      "caption": "5 books that wrecked me",
      "author": "readwithme",
      "plays": 1840221,
      "likes": 220114,
      "posted": "2026-10-25",
      "url": "https://www.tiktok.com/@readwithme/video/\u2026"
    }
  ]
}
```

## Requests and plans

Every plan has a monthly pool of requests. Only successful calls count.

- `get_time_series`: 1 request per call
- `get_growth`: 1 request per call, every window included
- `get_top_trends`: MCP: 1 request per 10 rows, at most 10 per call. REST: 1 request per call
- `get_context`: MCP: 1 request per source, at most 5 per call. REST: one source per call, 1 request
- `get_top_posts`: 1 request per call (Business plan)
- `get_usage`: Free. MCP only: your plan, requests used and left, reset date.

| Plan | Monthly | Billed yearly | Requests a month | Keyword alerts | Top trends rows | Top Posts |
|---|---|---|---|---|---|---|
| Free | $0 | - | 100 | - | Top 10, 24h delay | - |
| Starter | $19/mo | $16/mo ($192 a year) | 1,000 | 10 | Top 25 | - |
| Pro | $49/mo | $39/mo ($468 a year) | 5,000 | 50 | Top 100 | - |
| Business | $199/mo | $159/mo ($1,910 a year) | 25,000 | 250 | Full board | yes |

Prices and billing: https://socialytics.dev/pricing

## Errors

REST answers HTTP 200 with an envelope: `{"statusCode": 400, "body": "…"}`. Read `statusCode`, then parse `body`. A missing or wrong key is the exception: HTTP 401 (`missing_api_key`) or 403 (`invalid_api_key`), with the error object as the body. Errors carry an `error` code and a `message`. Over MCP, a failed call sets `isError` on the tool result. Failed calls are free.

| Code | Meaning |
|---|---|
| `missing_parameter` | A required field is missing, e.g. type on get_top_trends. |
| `invalid_source` | The source or type is not one we serve; the message lists the allowed values. |
| `invalid_mode` | The mode is not one of the tools. |
| `invalid_request` | The body is malformed or a parameter value is not allowed. |
| `no_data` | Nothing matched this keyword on this source. |
| `plan_required` | The tool needs a higher plan (Top Posts: Business). |
| `source_unavailable` | The upstream source did not answer; try again later. |
| `growth_calculation_failed` | Growth could not be computed for that window (e.g. not enough history). |
| `internal_error` | Unexpected error. The body has a request_id; send it to support. |
| `missing_api_key` | No key was sent. Send it in the Authorization header as Bearer <key>. REST answers HTTP 401. |
| `invalid_api_key` | The key is mistyped or was regenerated. Get or copy your key on /account. REST answers HTTP 403. |
| `monthly_limit_reached` | The plan's monthly requests are used and there are no credits left. The message has links to buy credits (they never expire) or pick a plan. Over MCP the tool result has isError with the same text. get_usage shows what is left. |

```json
{"statusCode": 400, "body": "{\"error\": \"missing_parameter\", \"message\": \"The 'type' parameter is required\"}"}
```

## Example prompts

Say "using Socialytics" so the assistant calls the tools instead of searching the web.

- `get_time_series`: "Using Socialytics, show me the Google Search trend for nvidia over the past 5 years"
- `get_time_series`: "Using Socialytics, show me Steam player counts for Elden Ring"
- `get_growth`: "Using Socialytics, how has Google Search interest in GLP-1 grown over the past 12 months?"
- `get_growth`: "Using Socialytics, compare 6-month growth for air fryers on Google, TikTok and Amazon"
- `get_top_trends`: "Using Socialytics, what's trending on Google right now?"
- `get_top_trends`: "Using Socialytics, which Amazon best sellers in Toys climbed most this week?"
- `get_context`: "Using Socialytics, why is Clayface trending? Show me the posts and stories behind it"
- `get_context`: "Using Socialytics, what are people saying about the Nintendo Switch 2 on Reddit and YouTube?"
- `get_top_posts`: "Using Socialytics, show me the top TikTok posts for #booktok right now"

## Data catalog

53 data sets from 27 platforms, read with 5 tools. Generated from the live API catalog.

### get_time_series

About five years of weekly history for one keyword on one source, as a 0 to 100 index plus volume where the source has it.

Cost: 1 request per call.

| Parameter | Type | Required | Notes |
|---|---|---|---|
| `keyword` | string | yes | Format depends on the source. |
| `source` | string | yes | Exactly one keyword source. |

| source | Platform | Returns | Keyword | Options |
|---|---|---|---|---|
| `Google Search` | Google | Search interest as a 0–100 index, about 5 years | Any name or phrase | country, resolution |
| `Google Images` | Google Images | Image search interest as a 0–100 index, about 5 years | Any name or phrase | country, resolution |
| `Google News` | Google News | News search interest as a 0–100 index, about 5 years | Any name or phrase | country, resolution |
| `Google Shopping` | Google Shopping | Shopping search interest as a 0–100 index, about 5 years | Any name or phrase | country, resolution |
| `YouTube` | YouTube | YouTube search interest as a 0–100 index, about 5 years | Any name or phrase | country, resolution |
| `Wikipedia` | Wikipedia | Article page views as a 0–100 index, plus raw views | Any name or phrase | language |
| `TikTok` | TikTok | Hashtag views as a 0–100 index, plus raw views | Any name or phrase | country |
| `Amazon` | Amazon | Product search volume as a 0–100 index, plus raw volume | Any name or phrase | - |
| `Pinterest` | Pinterest | Pinterest search interest as a 0–100 index, about 2 years | Any name or phrase | country |
| `npm` | npm | Package downloads as a 0–100 index, plus raw downloads | Exact npmjs.com package name, case-sensitive. Right: 'react', '@babel/core'. Wrong: 'React', 'React.js'. | - |
| `Python` | PyPI | Package downloads as a 0–100 index, plus raw downloads | Exact PyPI project name. Right: 'pandas', 'requests'. Wrong: 'Pandas'. | - |
| `Steam` | Steam | Concurrent players as a 0–100 index, plus raw players | Game display name in plain English, not a Steam App ID. Right: 'Elden Ring', 'CS2'. First Steam store search result wins, so use an unambiguous name. | - |
| `App Downloads` | Google Play | Android app downloads as a 0–100 index, plus raw downloads | Android bundle ID only (the id= value on Google Play). Right: 'com.openai.chatgpt', 'com.whatsapp'. Wrong: 'ChatGPT', 'WhatsApp', an iOS App Store ID, or a bundle ID that is not Android. Find it at play.google.com/store/apps/details?id=THIS_PART. | - |
| `App Rankings` | Google Play | Android chart rank as a 0–100 index, plus raw rank | Android bundle ID only (the id= value on Google Play). Right: 'com.openai.chatgpt', 'com.whatsapp'. Wrong: 'ChatGPT', 'WhatsApp', an iOS App Store ID, or a bundle ID that is not Android. Find it at play.google.com/store/apps/details?id=THIS_PART. | - |

### get_growth

Point-to-point growth over one or more windows, on one source or several in the same call.

Cost: 1 request per call, every window included.

| Parameter | Type | Required | Notes |
|---|---|---|---|
| `keyword` | string | yes | Format depends on the source. |
| `source` | string | yes | One source, or several separated by commas. |
| `percent_growth` | string[] | no | Window presets such as 3M, 12M or YTD. Default 12M. |

| source | Platform | Returns | Keyword | Options |
|---|---|---|---|---|
| `Google Search` | Google | Search interest as a 0–100 index, about 5 years | Any name or phrase | country, resolution |
| `Google Images` | Google Images | Image search interest as a 0–100 index, about 5 years | Any name or phrase | country, resolution |
| `Google News` | Google News | News search interest as a 0–100 index, about 5 years | Any name or phrase | country, resolution |
| `Google Shopping` | Google Shopping | Shopping search interest as a 0–100 index, about 5 years | Any name or phrase | country, resolution |
| `YouTube` | YouTube | YouTube search interest as a 0–100 index, about 5 years | Any name or phrase | country, resolution |
| `Wikipedia` | Wikipedia | Article page views as a 0–100 index, plus raw views | Any name or phrase | language |
| `TikTok` | TikTok | Hashtag views as a 0–100 index, plus raw views | Any name or phrase | country |
| `Amazon` | Amazon | Product search volume as a 0–100 index, plus raw volume | Any name or phrase | - |
| `Pinterest` | Pinterest | Pinterest search interest as a 0–100 index, about 2 years | Any name or phrase | country |
| `npm` | npm | Package downloads as a 0–100 index, plus raw downloads | Exact npmjs.com package name, case-sensitive. Right: 'react', '@babel/core'. Wrong: 'React', 'React.js'. | - |
| `Python` | PyPI | Package downloads as a 0–100 index, plus raw downloads | Exact PyPI project name. Right: 'pandas', 'requests'. Wrong: 'Pandas'. | - |
| `Steam` | Steam | Concurrent players as a 0–100 index, plus raw players | Game display name in plain English, not a Steam App ID. Right: 'Elden Ring', 'CS2'. First Steam store search result wins, so use an unambiguous name. | - |
| `App Downloads` | Google Play | Android app downloads as a 0–100 index, plus raw downloads | Android bundle ID only (the id= value on Google Play). Right: 'com.openai.chatgpt', 'com.whatsapp'. Wrong: 'ChatGPT', 'WhatsApp', an iOS App Store ID, or a bundle ID that is not Android. Find it at play.google.com/store/apps/details?id=THIS_PART. | - |
| `App Rankings` | Google Play | Android chart rank as a 0–100 index, plus raw rank | Android bundle ID only (the id= value on Google Play). Right: 'com.openai.chatgpt', 'com.whatsapp'. Wrong: 'ChatGPT', 'WhatsApp', an iOS App Store ID, or a bundle ID that is not Android. Find it at play.google.com/store/apps/details?id=THIS_PART. | - |

### get_top_trends

A live ranked board with no keyword: the current leaders, or the biggest climbers against an earlier snapshot.

Cost: MCP: 1 request per 10 rows, at most 10 per call. REST: 1 request per call.

| Parameter | Type | Required | Notes |
|---|---|---|---|
| `type` | string | yes | Exactly one live board. |
| `limit` | integer | no | 1 to 200. Default 25. |
| `offset` | integer | no | Rows to skip. Default 0. |
| `sort` | string | no | rank (default) or rank_change for climbers. |
| `window` | string | no | With rank_change: 1d, 3d, 7d, 14d, 30d. Default 30d. |

| type | Platform | Returns | Updated | Options |
|---|---|---|---|---|
| `Amazon Best Sellers Top Rated` | Amazon | Top-rated best sellers across all categories | Daily | - |
| `Amazon Best Sellers by Category` | Amazon | Best sellers per product category | Daily | category (26) |
| `App Store Top Free` | App Store | Top free iOS apps | Daily | - |
| `App Store Top Paid` | App Store | Top paid iOS apps | Daily | - |
| `GitHub` | GitHub | Daily trending repositories | Daily | - |
| `Google News Top News` | Google News | Top news stories | Live | - |
| `Google Play` | Google Play | Top Android apps | Daily | - |
| `Google Trends` | Google Trends | Trending searches right now | Live | country |
| `Google Trends by Category` | Google Trends | Trending searches per topic board | Live | category (19), country |
| `IMDb MOVIEmeter` | IMDb | Most popular movies by user activity | Daily | - |
| `Open Library Trending Books` | Open Library | Daily trending books | Daily | - |
| `Pinterest Trending` | Pinterest | Top Pinterest searches this month | Live | country |
| `Pinterest Trending by Category` | Pinterest | Top Pinterest searches this month per category | Live | category (21), country |
| `Polymarket Top Markets` | Polymarket | Prediction markets with the most money traded in the last 24 hours | Live | - |
| `Reddit Hot Posts` | Reddit | Hottest posts on the front page | Live | - |
| `Reddit World News` | Reddit | Top posts in r/worldnews | Live | - |
| `Top Websites` | Web | Most-visited websites by traffic rank | Monthly | category (24) |
| `Spotify Top Podcasts` | Spotify | Top podcasts | Daily | - |
| `Steam Most Played` | Steam | Games by concurrent live players | Live | - |
| `Substack` | Substack | Top newsletters overall | Daily | - |
| `Substack by Category` | Substack | Top newsletters per category | Daily | category (31) |
| `TikTok Trending Hashtags` | TikTok | Trending hashtags | Daily | country |
| `TikTok Trending Hashtags by Category` | TikTok | Trending hashtags per industry board | Daily | category (79), country |
| `TikTok Trending Searches` | TikTok | Trending search terms | Daily | - |
| `Wikipedia Trending` | Wikipedia | Most-viewed articles today | Daily | - |
| `X (Twitter) Trending` | X | Trending topics | Live | country |
| `YouTube Trending` | YouTube | Trending videos | Daily | country |

### get_context

What people are posting, reading and betting about a keyword right now: posts, videos, stories, comments and markets from each source, with engagement.

Cost: MCP: 1 request per source, at most 5 per call. REST: one source per call, 1 request.

| Parameter | Type | Required | Notes |
|---|---|---|---|
| `keyword` | string | yes | Any name or phrase. |
| `source` | string | yes | One source, or up to 5 separated by commas. |
| `days` | integer | no | Look back 1 to 30 days. Default 7. |
| `limit` | integer | no | Items per source, 1 to 20. Default 10. |

| source | Platform | Returns | Keyword | Options |
|---|---|---|---|---|
| `News` | Google News | Stories grouped by event: headline, outlet, date, outlet count |  | - |
| `YouTube` | YouTube | Videos: title, channel, views, likes, top comments |  | - |
| `TikTok` | TikTok | Videos: text, views, likes, shares, top comments |  | - |
| `Instagram` | Instagram | Reels: caption, plays, likes, top comments |  | - |
| `X` | X | Posts: text, views, likes, reposts, top replies |  | - |
| `Reddit` | Reddit | Posts: title, subreddit, score, top comments |  | - |
| `Bluesky` | Bluesky | Posts: text, likes, reposts, top replies |  | - |
| `Hacker News` | Hacker News | Stories: title, points, top comments |  | - |
| `Polymarket` | Polymarket | Open prediction markets: question, odds, volume |  | - |
| `GitHub` | GitHub | Active repositories: stars, forks, language |  | - |

### get_top_posts

Live top posts for one hashtag, fetched on every call. Business plan.

Cost: 1 request per call.

| Parameter | Type | Required | Notes |
|---|---|---|---|
| `keyword` | string | yes | The hashtag, with or without #. |
| `source` | string | yes | TikTok or Instagram. |
| `limit` | integer | no | 1 to 20. Default 20. |

| source | Platform | Returns | Keyword | Options |
|---|---|---|---|---|
| `TikTok` | TikTok | Top videos on a hashtag | Hashtag, with or without # | - |
| `Instagram` | Instagram | Top posts on a hashtag | Hashtag, with or without # | - |

### Options

| Option | Works with | Meaning |
|---|---|---|
| `country` | Google Search, Google Images, Google News, Google Shopping, YouTube, TikTok, Pinterest, Google Trends, Google Trends by Category, Pinterest Trending, Pinterest Trending by Category, TikTok Trending Hashtags, TikTok Trending Hashtags by Category, X (Twitter) Trending, YouTube Trending | ISO 3166-1 alpha-2 country code (US, GB, JP). Boards and TikTok default to US; Google time series and growth default to worldwide |
| `language` | Wikipedia | Wikipedia language edition (en, de, ja, pt); defaults to en |
| `resolution` | Google Search, Google Images, Google News, Google Shopping, YouTube | 'weekly' (about 5 years, default) or 'daily' (last 90 days, fetched live) |
| `category` | Amazon Best Sellers by Category, Google Trends by Category, Pinterest Trending by Category, Top Websites, Substack by Category, TikTok Trending Hashtags by Category | Official board name within the feed; without it the feed mixes every board |
| `comments` | YouTube, TikTok, Instagram, X, Reddit, Bluesky, Hacker News | Top comments or replies for the first N items of each source (0 to 5, default 2) |

### Amazon Best Sellers by Category categories

`Appliances`, `Apps Games`, `Arts Crafts Sewing`, `Automotive`, `Baby`, `Beauty Personal Care`, `Books`, `Camera Photo`, `Clothing Shoes Jewelry`, `Computers Accessories`, `Electronics`, `Grocery Gourmet Food`, `Handmade Products`, `Health Household`, `Home Kitchen`, `Industrial Scientific`, `Kitchen Dining`, `Musical Instruments`, `Office Products`, `Patio Lawn Garden`, `Pet Supplies`, `Software`, `Sports Outdoors`, `Tools Home Improvement`, `Toys Games`, `Video Games`

### Google Trends by Category categories

`Autos and Vehicles`, `Beauty and Fashion`, `Business and Finance`, `Climate`, `Entertainment`, `Food and Drink`, `Games`, `Health`, `Hobbies and Leisure`, `Jobs and Education`, `Law and Government`, `Other`, `Pets and Animals`, `Politics`, `Science`, `Shopping`, `Sports`, `Technology`, `Travel and Transportation`

### Pinterest Trending by Category categories

`Animals`, `Architecture`, `Art`, `Beauty`, `DIY and Crafts`, `Design`, `Education`, `Electronics`, `Entertainment`, `Event Planning`, `Finance`, `Food and Drink`, `Health`, `Home Decor`, `Lawn and Garden`, `Parenting`, `Quotes`, `Sports`, `Travel`, `Vehicles`, `Weddings`

### Top Websites categories

`adult`, `arts-and-entertainment`, `business-and-consumer-services`, `community-and-society`, `computers-electronics-and-technology`, `e-commerce-and-shopping`, `finance`, `food-and-drink`, `gambling`, `games`, `health`, `heavy-industry-and-engineering`, `hobbies-and-leisure`, `home-and-garden`, `jobs-and-career`, `law-and-government`, `lifestyle`, `news-and-media`, `pets-and-animals`, `reference-materials`, `science-and-education`, `sports`, `travel-and-tourism`, `vehicles`

### Substack by Category categories

`Art & Illustration`, `Business`, `Climate & Environment`, `Comics`, `Crypto`, `Culture`, `Design`, `Education`, `Faith & Spirituality`, `Fashion & Beauty`, `Fiction`, `Film & TV`, `Finance`, `Food & Drink`, `Health & Wellness`, `Health Politics`, `History`, `Home & Garden`, `Humor`, `International`, `Literature`, `Music`, `News`, `Parenting`, `Philosophy`, `Science`, `Sports`, `Technology`, `Travel`, `U.S. Politics`, `World Politics`

### TikTok Trending Hashtags by Category categories

`Academic Resources`, `Animation and Comics`, `Apparel and Accessories`, `Art`, `Automotive`, `Baby Care`, `Baby Kids and Maternity`, `Beauty`, `Beauty and Personal Care`, `Beauty Services`, `Business and Finance`, `Business Services`, `Card and Board Games`, `Career and Professional Growth`, `College`, `Comedy`, `Community Updates and Issues`, `Conventional and Mainstream Sports`, `Cooking`, `Crafting and Creations`, `Culture`, `Dance`, `Diary and Vlog`, `Drinks`, `Eating Experiences`, `Education`, `Entertainment and Sports News`, `Environment`, `Exercise and Fitness`, `Extreme and Adventure Sports`, `Family`, `Financial Services`, `Food`, `Food and Beverage`, `Food Recommendations`, `Gadgets and Innovation`, `Games`, `General Travel`, `Hair Care`, `Health`, `Health and Wellness`, `History and Literature`, `Home and Garden`, `Home Improvement`, `Household Products`, `Learning and Development`, `Leisure and Recreation Facilities`, `Life Services`, `Livestock and Farming`, `Miscellaneous Performances`, `Movies and TV`, `Music`, `News and Entertainment`, `Other Beauty`, `Other Fashion`, `Other Transportation`, `Outdoor Recreation`, `Outfits`, `Performing Arts`, `Personal Photography`, `Pet Care and Accessories`, `Pets`, `Photography`, `Productivity and Efficiency`, `Romance`, `Science`, `Sensory Experiences`, `Shows Festivals and Exhibitions`, `Software and Apps`, `Special Effects`, `Sports`, `Sports and Outdoor`, `Supernatural and Horror`, `Technology`, `Toys Collectibles and Memorabilia`, `Travel`, `Vehicle and Transportation`, `Video Games`, `Wildlife and Exotic Pets`
