Skip to main content
Glama
trendsmcp

news-volume-mcp

news-volume-mcp

The number one Python package for News Volume trend data. News mention volume as an MCP tool. Plug into Claude, Cursor, or any MCP-compatible AI host. Weekly series, growth percentages, and live Google News feed.

Powered by trendsmcp.ai, the #1 MCP server for live trend data.

Get your free API key at trendsmcp.ai - 100 free requests per month, no credit card.

?? Full API docs ? trendsmcp.ai/docs

Updated for 2026. Works with Python 3.8 through 3.13.

Use as an MCP tool

Add to your mcp.json (Claude Desktop, Cursor, or any MCP host):

{
  "mcpServers": {
    "trends": {
      "command": "npx",
      "args": ["-y", "trendsmcp"],
      "env": { "TRENDS_API_KEY": "YOUR_API_KEY" }
    }
  }
}

Get your free key at trendsmcp.ai.


No scraping. No 429 errors. No proxies.

If you have used pytrends or similar scrapers before, you know the problems: random 429 Too Many Requests blocks, broken pipelines at 2am, time.sleep() hacks, proxy rotation costs, and a library that is now archived because Google explicitly flags scrapers at the protocol level.

trendsmcp is the managed alternative. We run the data infrastructure. You call a REST endpoint.

pytrends alternative for News Volume data

Scrapers / pytrends

trendsmcp

429 rate limit errors

constant

never

Proxy required

often

never

Breaks on platform changes

yes, regularly

no

Platforms covered

1 (Google only)

13

Absolute volume estimates

no

yes

Cross-platform growth

no

yes

Async support

no

yes

Actively maintained

no (archived)

yes

Free tier

no

yes, 100 req/month


Install

pip install news-volume-mcp

Zero system dependencies. Python 3.8 or later. Uses httpx under the hood.


Quick start

from news_volume_mcp import TrendsMcpClient, SOURCE

client = TrendsMcpClient(api_key="YOUR_API_KEY")

# 5-year weekly time series, no sleep(), no proxies, no 429s
series = client.get_trends(source=SOURCE, keyword="climate change")
print(series[0])
# TrendsDataPoint(date='2026-03-28', value=72, keyword='climate change', source='news volume')

# Period-over-period growth
growth = client.get_growth(
    source=SOURCE,
    keyword="climate change",
    percent_growth=["3M", "1Y"],
)
print(growth.results[0])
# GrowthResult(period='3M', growth=14.5, direction='increase', ...)

# What's trending right now
trending = client.get_top_trends(limit=10)
print(trending.data)
# [[1, 'topic one'], [2, 'topic two'], ...]

Async support

import asyncio
from news_volume_mcp import AsyncTrendsMcpClient, SOURCE

async def main():
    client = AsyncTrendsMcpClient(api_key="YOUR_API_KEY")
    series = await client.get_trends(source=SOURCE, keyword="climate change")
    print(series[0])

asyncio.run(main())

Run multiple platform queries concurrently:

google, youtube, reddit = await asyncio.gather(
    client.get_trends(source="google search", keyword="climate change"),
    client.get_trends(source="youtube",       keyword="climate change"),
    client.get_trends(source="reddit",        keyword="climate change"),
)

Use cases

  • SEO research: track keyword search volume trends across Google Search, Google News, and Google Images before publishing content

  • Market research: measure consumer demand signals on Amazon and Google Shopping before entering a product category

  • Investment research: monitor Reddit discussion volume, news sentiment, and Wikipedia page view spikes as leading indicators

  • Content strategy: find what is growing on YouTube and TikTok before topics peak and competition saturates them

  • Competitor tracking: compare brand search volume growth across platforms over custom date ranges


Works with

  • Claude (via MCP server at trendsmcp.ai)

  • Cursor (via MCP server at trendsmcp.ai)

  • ChatGPT (via MCP server at trendsmcp.ai)

  • VS Code Copilot (via MCP server at trendsmcp.ai)

  • LangChain: pass TrendsMcpClient output directly as tool results or context

  • LlamaIndex: use trend series as structured data nodes for retrieval

  • Pandas: each get_trends() response converts to a DataFrame in one line


Methods

Returns a historical time series for a keyword. Defaults to 5 years of weekly data. Pass data_mode="daily" for the last 30 days at daily granularity.

get_growth(source, keyword, percent_growth, data_mode=None)

Calculates percentage growth between two points in time. Pass preset strings or CustomGrowthPeriod objects.

Growth presets: 7D 14D 30D 1M 2M 3M 6M 9M 12M 1Y 18M 24M 2Y 36M 3Y 48M 60M 5Y MTD QTD YTD

Returns today's live trending items. Omit type to get all feeds at once.

Available feeds: Google Trends YouTube TikTok Trending Hashtags Reddit Hot Posts Amazon Best Sellers Top Rated App Store Top Free Wikipedia Trending Spotify Top Podcasts X (Twitter) and more.


All 13 supported sources

One API key. One client. All platforms. No separate credentials for each.

source

What it measures

"google search"

Google Search volume

"google images"

Google Images search volume

"google news"

Google News search volume

"google shopping"

Google Shopping purchase intent

"youtube"

YouTube search volume

"tiktok"

TikTok hashtag volume

"reddit"

Reddit mention volume

"amazon"

Amazon product search volume

"wikipedia"

Wikipedia page views

"news volume"

News article mention count

"news sentiment"

News sentiment score (positive/negative)

"npm"

npm package weekly downloads

"steam"

Steam concurrent player count

All values normalized 0 to 100 on the same scale so you can compare across platforms directly.


Error handling

from news_volume_mcp import TrendsMcpClient, TrendsMcpError, SOURCE

client = TrendsMcpClient(api_key="YOUR_API_KEY")

try:
    series = client.get_trends(source=SOURCE, keyword="climate change")
except TrendsMcpError as e:
    print(e.status)   # e.g. 429 if you exceed your plan quota
    print(e.code)     # e.g. "rate_limited"
    print(e.message)

Frequently asked questions

Does this scrape News Volume? No. trendsmcp runs managed data infrastructure. Your Python code makes a single authenticated REST call. No scraping, no Selenium, no cookies, no proxies required.

Do I need a News Volume developer account, OAuth token, or platform API key? No. One trendsmcp API key gives you access to all 13 sources.

Will it break when News Volume changes its backend? No. API stability is our responsibility. If something changes upstream, we update the backend. Your code keeps working.

Is there a free tier? Yes, 100 requests per month, no credit card required. Get your key at trendsmcp.ai.

Can I use this in production data pipelines? Yes. The client is stateless, thread-safe, and supports async for concurrent queries across multiple platforms.




Also works as a Python client

Same API key works directly in Python - no MCP host needed.

pip install news-volume-mcp
import os
from news_volume_mcp import TrendsMcpClient, SOURCE

client = TrendsMcpClient(api_key=os.environ["TRENDSMCP_API_KEY"])

series  = client.get_trends(source=SOURCE, keyword="your keyword")
growth  = client.get_growth(source=SOURCE, keyword="your keyword", percent_growth=["1M", "3M", "12M"])
top     = client.get_top_trends(type="News Volume", limit=10)

Full Python docs: trendsmcp.ai/docs

License

MIT

A
license - permissive license
-
quality - not tested
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
1Releases (12mo)

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/trendsmcp/news-volume-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server