Listed from the MCP registry; nobody on Odel publishes it.
Is this yours? Claim itSee if a market is heating or cooling. Trend volume and growth signals. Free key at trendsmcp.ai
One address for any MCP client. Your key stays in your Odel vault.
At most: only reads or looks up information.
Odel charges nothing per call. The publisher may charge for its own service.
Odel could not list its tools without signing in.
Live trend data for AI agents: 53 data sets from 27 platforms, including Google, TikTok, YouTube, Amazon, Reddit, Pinterest, Instagram and X. One MCP connection, one API key.
Get a free API key · Docs · Pricing · Data catalog · PyPI · Glama
You: Using TrendsMCP, compare 6-month growth for GLP-1 on Google, TikTok, and Amazon.
Agent: Google Search +84%
TikTok +212%
Amazon +61%
5 tools plus a free usage check. History, growth, live boards, and what people are saying right now. Normalized 0–100 where the source supports it. No per-platform keys. No scraping on your side.
Same four clients as the site hero. Get a free key first (100 req/mo). Claude and ChatGPT sign you in with OAuth. Cursor and VS Code: click, then put your key from /account if the deeplink used a placeholder.
| Client | After you click |
|---|---|
| Claude | Connector name and URL are prefilled (https://www.trendsmcp.ai/mcp). Confirm, then authorize. |
| Cursor | Approve the MCP install. Replace YOUR_API_KEY if prompted. |
| ChatGPT | In ChatGPT on the web: Plugins → + → Add custom MCP server. URL https://www.trendsmcp.ai/mcp, authentication OAuth, then create, install and sign in. |
| VS Code | Sign in on the account page and use the VS Code button so the key is included. |
Then ask: Using TrendsMCP, what's trending on Google right now?
Tools · Sources · Boards · REST · Install in other clients
Hosted MCP at https://api.trendsmcp.ai/mcp. Same Bearer key for POST https://api.trendsmcp.ai/api. This repo also has a stdio adapter for Glama and local hosts.
| Tool | What it does | Cost |
|---|---|---|
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. | 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. | 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. | 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. | 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. | 1 request per call |
get_usage | Your plan, requests used and left, reset date. MCP only. | Free |
get_top_posts is on the Business plan. Every other tool works on every plan, Free included.
Replace YOUR_API_KEY with the key from your account.
claude mcp add --scope user --transport http trends-mcp https://api.trendsmcp.ai/mcp \
--header "Authorization: Bearer YOUR_API_KEY"
~/.cursor/mcp.json (Windows: %USERPROFILE%\.cursor\mcp.json)
{
"mcpServers": {
"trends-mcp": {
"url": "https://api.trendsmcp.ai/mcp",
"transport": "http",
"headers": { "Authorization": "Bearer YOUR_API_KEY" }
}
}
}
.vscode/mcp.json or Command Palette → MCP: Add Server. Prefer the account-page VS Code button so the key is wired for you.
{
"servers": {
"trends-mcp": {
"type": "http",
"url": "https://api.trendsmcp.ai/mcp",
"headers": { "Authorization": "Bearer YOUR_API_KEY" }
}
}
}
Uses serverUrl, not Cursor’s url + transport. File: ~/.codeium/windsurf/mcp_config.json.
{
"mcpServers": {
"trends-mcp": {
"serverUrl": "https://api.trendsmcp.ai/mcp",
"headers": { "Authorization": "Bearer YOUR_API_KEY" }
}
}
}
Remote server, type exactly streamableHttp. See llms-install.md.
{
"mcpServers": {
"trends-mcp": {
"type": "streamableHttp",
"url": "https://api.trendsmcp.ai/mcp",
"headers": { "Authorization": "Bearer YOUR_API_KEY" },
"disabled": false
}
}
}
{
"mcpServers": {
"trends-mcp": {
"command": "npx",
"args": [
"-y", "mcp-remote",
"https://api.trendsmcp.ai/mcp",
"--header", "Authorization:${AUTH_HEADER}"
],
"env": { "AUTH_HEADER": "Bearer YOUR_API_KEY" }
}
}
}
Settings → Connectors → add https://www.trendsmcp.ai/mcp. This path uses OAuth on www.trendsmcp.ai. Do not put a Bearer key in that connector config.
Hosted HTTP is the product default and has every tool. This stdio adapter exposes get_time_series, get_growth and get_top_trends; use the hosted server for get_context, get_top_posts and get_usage. It lists tools with no key; calls need TRENDSMCP_API_KEY and bill the same quota.
pip install -e .
python -m trends_mcp_server
{
"mcpServers": {
"trends-mcp": {
"command": "python",
"args": ["-m", "trends_mcp_server"],
"env": { "TRENDSMCP_API_KEY": "YOUR_API_KEY" }
}
}
}
Say “using TrendsMCP” so the model picks these tools instead of web search. More clients: docs.
Always-current parameter lists: docs and data catalog. Same names on MCP and REST ("mode": "<tool>").
get_time_seriesAbout five years of weekly history for one source + keyword, as a 0–100 index plus volume where the source has it.
| Argument | Required | Notes |
|---|---|---|
keyword | yes | Format depends on source (table below) |
source | yes | Exactly one keyword source |
country | no | ISO code (US, GB, JP) on Google, YouTube, TikTok and Pinterest sources. Google defaults to worldwide |
resolution | no | Google and YouTube sources: weekly (about 5 years, default) or daily (last 90 days) |
language | no | Wikipedia edition (en, de, ja). Default en |
get_growthPoint-to-point percent change. Several windows in one call still count as one request.
| Argument | Required | Notes |
|---|---|---|
keyword | yes | Same formats as get_time_series |
source | yes | One source, or several separated by commas (Google Search, TikTok, Amazon) |
percent_growth | no | Default ["12M"]. Presets below, or a custom date-range object (REST) |
Any number with D, W, M or Y up to 5 years, plus MTD QTD YTD. 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.
get_top_trendsLive ranked board. No keyword. type must match the board name exactly (including capitals).
| Argument | Required | Notes |
|---|---|---|
type | yes | See live boards |
limit | no | 1 to 200. Default 25 |
offset | no | Rows to skip |
sort | no | rank (default) or rank_change for climbers |
window | no | With rank_change: 1d 3d 7d 14d 30d. Default 30d |
category | for some types | The by Category boards and Top Websites. Names in the data catalog |
country | no | Google Trends, Pinterest, TikTok hashtags, X and YouTube boards. Default US |
MCP bills 1 request per 10 rows (at most 10 per call). REST bills 1 request per call. Free plan: top 10, about 24 hours behind.
get_contextWhat people are posting, reading and betting about a keyword right now: posts, videos, stories, comments and markets, with engagement.
| Argument | Required | Notes |
|---|---|---|
keyword | yes | Any name or phrase |
source | yes | One source, or up to 5 separated by commas (MCP). REST: one per call |
days | no | Look back 1 to 30 days. Default 7 |
limit | no | Items per source, 1 to 20. Default 10 |
comments | no | Top comments for the first N items (0 to 5, default 2) |
Sources: News, YouTube, TikTok, Instagram, X, Reddit, Bluesky, Hacker News, Polymarket, GitHub. MCP bills 1 request per source.
get_top_postsLive top posts for one hashtag, fetched on every call. Business plan. 1 request per call.
| Argument | Required | Notes |
|---|---|---|
keyword | yes | The hashtag, with or without # |
source | yes | TikTok or Instagram |
limit | no | 1 to 20. Default 20 |
get_usageFree, MCP only. Your plan, requests used and left this month, and the reset date.
Using TrendsMCP, what's trending on Google right now?
Using TrendsMCP, why is Clayface trending? Show me the posts and stories behind it.
Using TrendsMCP, compare 6-month growth for creatine gummies on Google, TikTok, and Amazon.
Using TrendsMCP, show Google Search history for protein soda.
Via TrendsMCP, pull npm download history for langchain.
Using TrendsMCP, what are people saying about the Nintendo Switch 2 on Reddit and YouTube?
Via TrendsMCP, Android downloads for com.openai.chatgpt.
Using TrendsMCP, fastest-climbing Amazon best sellers in Toys Games this week.
source on get_time_series and get_growth (14).
source | Pass as keyword | Extra options |
|---|---|---|
Google Search | Any name or phrase, e.g. electric vehicles | country, resolution |
Google Images | Any name or phrase, e.g. electric vehicles | country, resolution |
Google News | Any name or phrase, e.g. electric vehicles | country, resolution |
Google Shopping | Any name or phrase, e.g. running shoes | country, resolution |
YouTube | Any name or phrase, e.g. stanley cup | country, resolution |
Wikipedia | Any name or phrase, e.g. Bitcoin | language |
TikTok | Any name or phrase, e.g. booktok | country |
Amazon | Any name or phrase, e.g. air fryer | - |
Pinterest | Any name or phrase, e.g. matcha | country |
npm | Exact npmjs.com package name, case-sensitive, e.g. langchain | - |
Python | Exact PyPI project name, e.g. pandas | - |
Steam | Game display name in plain English, not a Steam App ID, e.g. Elden Ring | - |
App Downloads | Android bundle ID only (the id= value on Google Play), e.g. com.openai.chatgpt | - |
App Rankings | Android bundle ID only (the id= value on Google Play), e.g. com.openai.chatgpt | - |
source: "Google Trends" is invalid. Use Google Search for history and type: "Google Trends" for the live board.
type on get_top_trends (27). Copy the name exactly.
Amazon Best Sellers Top Rated, Amazon Best Sellers by CategoryApp Store Top Free, App Store Top PaidGitHubGoogle News Top NewsGoogle PlayGoogle Trends, Google Trends by CategoryIMDb MOVIEmeterOpen Library Trending BooksPinterest Trending, Pinterest Trending by CategoryPolymarket Top MarketsReddit Hot Posts, Reddit World NewsTop WebsitesSpotify Top PodcastsSteam Most PlayedSubstack, Substack by CategoryTikTok Trending Hashtags, TikTok Trending Hashtags by Category, TikTok Trending SearchesWikipedia TrendingX (Twitter) TrendingYouTube TrendingCategory names per board: data catalog.
curl -sS -X POST https://api.trendsmcp.ai/api \
-H "Authorization: Bearer $TRENDSMCP_API_KEY" \
-H "Content-Type: application/json" \
-d '{"mode":"get_top_trends","type":"Google Trends","limit":5}'
import os, requests
r = requests.post(
"https://api.trendsmcp.ai/api",
headers={"Authorization": f"Bearer {os.environ['TRENDSMCP_API_KEY']}"},
json={"mode": "get_growth", "source": "google search", "keyword": "bitcoin", "percent_growth": ["3M", "12M"]},
)
print(r.json())
Python client: pip install trendsmcp.
| Plan | Requests / month | Top trends rows | Price / month |
|---|---|---|---|
| Free | 100 | Top 10, 24h delay | $0 |
| Starter | 1,000 | Top 25 | $19 |
| Pro | 5,000 | Top 100 | $49 |
| Business | 25,000 | Full board | $199 |
Yearly billing: Starter $16/mo, Pro $39/mo, Business $159/mo. Every plan reads every data set; Top Posts is on Business. Failed calls are free.
Pay as you go: one-time credit packs, no subscription ($15 for 600, $49 for 2,500, $199 for 12,000 credits). 1 credit = 1 request. Credits never expire and are used after a plan's monthly requests run out. Pricing.
What one request is:
get_time_series: one source + keywordget_growth: one keyword, every window in the call includedget_top_trends: MCP 1 per 10 rows (max 10 per call); REST 1 per callget_context: MCP 1 per source (max 5 per call); REST one source per callget_top_posts: 1 per callget_usage: free| Status | Meaning |
|---|---|
| 400 | Bad or missing source / type / field, or no growth window could be calculated |
| 401 | Missing key (HTTP) |
| 403 | Invalid key (HTTP), or the tool needs a higher plan (plan_required) |
| 404 | No data for that keyword + source |
| 502 | Upstream source did not answer (source_unavailable) |
| 500 | Internal error (body has a request_id) |
When the monthly requests are used up and no credits are left, calls are refused with monthly_limit_reached and a link to buy credits or upgrade. Over MCP, get_usage shows what is left.
Full error codes: docs. Do not commit keys. Claude.ai and ChatGPT connectors use OAuth; other clients use Authorization: Bearer ….
get_time_series across several sources in one call (use get_growth with a comma-separated source list, or several get_time_series calls)type must match the tablepip install -e .
python -m trends_mcp_server
CI: .github/workflows/ci.yml. Security: SECURITY.md. Issues: github.com/trendsmcp-ai/Trends-MCP/issues.
MIT © Trends MCP