// trendzeist-mcp — free google trends mcp server
Google Trends, one tool call away from your AI assistant.
trendzeist-mcp hands Claude, Cursor or VS Code ranked breakout, rising and evergreen topics, interest curves, related searches and regional demand. Free, local, private. No API key, no account, no browser.
MIT licensed · Python 3.11+ · uvx trendzeist-mcp and you are running
// install
Three clients, one line each.
The server runs over stdio and is started by your MCP client. Nothing to host, nothing to sign up for. Python 3.11 or newer and uv are the only requirements.
- 01
Claude Desktop
Add the server under mcpServers in claude_desktop_config.json (macOS: ~/Library/Application Support/Claude/, Windows: %APPDATA%\Claude\, Linux: ~/.config/Claude/) and restart Claude Desktop.
"trendzeist": { "command": "uvx", "args": ["trendzeist-mcp"] } - 02
Claude Code
Run the add command once in your terminal. The server is registered in your local config and available in every session.
claude mcp add trendzeist -- uvx trendzeist-mcp - 03
Cursor, VS Code, Codex
Same command and args shape in the client's MCP settings. The repository ships llms-install.md, written so you can paste it to an assistant and let it do the setup.
{ "command": "uvx", "args": ["trendzeist-mcp"] }
Prefer containers? docker run -i --rm ghcr.io/phalkmin/trendzeist-mcp works as the command instead of uvx. Set TRENDZEIST_HL=pt-BR for Portuguese results.
// what you stop paying for
The typical Google Trends setup, next to this one.
Hosted Trends APIs charge monthly. Most Python scrapers are abandoned, need a headless browser, or get rate-limited within an hour. This is the comparison from the project readme.
Ranked topic ideas in one call
Typical setup: Raw primitives, you rank themtrendzeist-mcp: discover_topicsbreakout, then rising, then evergreen, deduplicatedCost and authentication
Typical setup: API key, monthly quotatrendzeist-mcp: Nonefree, runs on your machineBrowser requirement
Typical setup: Headless Chrome for some librariestrendzeist-mcp: No browserplain HTTP, plain JSONCache
Typical setup: In-memory or nonetrendzeist-mcp: JSON on disksurvives client restartsRate-limit behaviour
Typical setup: Bursts, frequent HTTP 429trendzeist-mcp: Throttled per request2 s minimum between calls to Google, configurableGuided ideation
Typical setup: You write the prompttrendzeist-mcp: blog_ideas_from_trendstopic, audience and geo as inputsSource: the comparison table in the trendzeist-mcp readme, September 2026. "Typical setup" means hosted Google Trends APIs and the commonly used Python libraries as they behave today. If your current tool already does one of these things well, keep it.
Google Trends reports a relative 0 to 100 index, never absolute search volume. Every number this server returns tells you direction and share, and nothing about how many people searched.
// why this exists now
The protocol is new. The data is twenty years old. The gap between them was the problem.
Third-party context, cited with source and date. The last item is the project's own design decision:
Anthropic released the Model Context Protocol as an open standard. It is now how Claude, Cursor, VS Code and Codex reach outside data, which makes a Trends server usable from every one of them with the same config.
Anthropic, November 2024 ↗Google announced an official Google Trends API, in alpha and by invitation. Most people still cannot get access, so the endpoints the trends.google.com frontend uses remain the practical route.
Google Search Central blog, July 2025 ↗Google Trends normalises every series to a share of peak interest in the requested window. Good for spotting a topic that is rising, useless for forecasting traffic. The server passes this through unchanged and says so in the output.
Google Trends Help ↗What Google returns when a script fires requests in bursts, and how most Trends libraries die. Trendzeist serialises every HTTP request, waits at least two seconds between them, retries with backoff and caches the result on disk.
trendzeist-mcp readme, September 2026 ↗The expensive part was always guessing.
Most content calendars start with someone's hunch about what readers want. Trends data could always check that hunch, and almost nobody did, because the website is slow to work with and the libraries kept breaking. Putting it one tool call away from your assistant removes the excuse.
// what you get
Nine tools and one prompt, all returning JSON a model can read.
Everything below is in the readme, the changelog and the source code.
Runs on your machine
A stdio server started by your MCP client. No account, no API key, no hosted service in between. The only thing that leaves your computer is the request to Google itself.
Ranked before it reaches the model
discover_topics takes one to five seed terms and returns candidates ordered breakout, then rising, then evergreen, deduplicated across seeds. The model gets a shortlist, and the ranking logic lives in code you can read.
Polite to Google on purpose
Every HTTP request, cookie, token, data or RSS, is serialised and spaced at least two seconds apart, with retries and exponential backoff. Proxies rotate if you configure them. This is why it keeps working after quick scripts get banned.
A cache that survives restarts
Results are stored as plain JSON in your OS cache directory, 15 minutes for explore queries, 5 for real-time trends, 24 hours for categories. Pickle was dropped in 0.2.0, so a tampered cache file cannot execute code.
Strict inputs, readable errors
Keyword counts, timeframes, geo codes and resolutions are validated before anything touches the network. A bad date range comes back as a clear tool error with guidance, and a 429 is reported as a rate limit, never as a silent empty result.
Built on maintained code
Google Trends requests are handled by pytrends-modern. Trendzeist adds the MCP layer, throttling, cache, validation and the ranking workflow. Everything is MIT, and a weekly live canary in CI catches Google changing the endpoints.
The nine tools, as your assistant sees them
discover_topicsRanked topics from 1 to 5 seeds: breakout, rising, evergreen, deduplicated
interest_over_time0 to 100 interest curve with mean, peak and direction
compare_keywordsHead-to-head share and winner for 2 to 5 keywords
related_queriesTop and rising related searches with breakout flags
related_topicsTop and rising Knowledge Graph topics, best-effort
interest_by_regionWhere demand lives: country, region, city or DMA
suggest_keywordsDisambiguate a term into Google entities (title, type, mid)
trending_nowWhat is trending right now, with news headlines
list_categoriesFind Google Trends category ids to narrow any query
blog_ideas_from_trendsPrompt: guided ideation from topic, audience and geo
// read this before you install
What it will not do, stated up front.
The readme has a limitations section and a disclaimer. Here is the short version, because trust in a data tool starts with what it refuses to claim.
related_topics often comes back empty from Google, while related_queries is reliable. The legacy daily trending_searches endpoint is gone, so trending_now reads the RSS feed instead. Browser automation is deliberately not used. The project is not affiliated with Google, and you are responsible for the terms of service where you live.
The MCP is free. The pipeline around it is the work.
Trend data is an input. Turning it into a calendar, drafts that sound like you, review gates a human actually uses, and posts that land in WordPress on schedule is a system. Building those systems is what I do for clients.
// work with the developer
trendzeist-mcp is free. My time is not.
I build AI and automation systems for a living. The server is what I give away, these are the engagements I take on.
Trend-to-Publish Content Pipeline
An n8n or Claude-driven pipeline that pulls Trends and Search Console data, scores opportunities, drafts in your voice and lands posts in WordPress behind a human review gate. I have shipped this for an e-commerce client; the case study is further down.
- →Opportunity scoring from Trends and Search Console
- →Draft generation with your style rules encoded
- →Human review gate before anything publishes
- →WordPress integration and scheduling
- →Runbook and full handover
Custom MCP Server for Your Data
The same engineering that went into trendzeist-mcp, pointed at your systems: CMS, analytics, product catalogue, internal docs. Strict inputs, throttling, caching, tests, and JSON your assistant can actually use.
- →Tool design and input validation
- →Authentication, rate limiting and caching
- →Offline test suite and live canary
- →Install docs for Claude, Cursor and VS Code
AI Content Operations Review
A structured look at how your team produces content with AI today: tools, prompts, review steps, publishing, measurement. You get a written report on where it leaks time or quality, and a prioritised plan.
- →Interviews and workflow mapping
- →Prompt and tooling review
- →Written report with prioritised fixes
- →One follow-up session
Fractional AI Lead for Content Teams
Ongoing senior guidance for publishers and agencies adopting AI in editorial work: tool selection, architecture review, guardrails, and someone to call when the pipeline does something strange at 2 a.m.
- →Weekly architecture reviews
- →Async availability for technical decisions
- →Vendor and tool evaluation
- →Team upskilling sessions
// faq
Common questions.
What is trendzeist-mcp?
+
Does it need a Google API key or account?
+
Which AI clients does it work with?
+
How do I install it in Claude Desktop?
+
Is the data the same as on trends.google.com?
+
Is this an official Google product? Is it allowed?
+
Does it work for Brazil and Portuguese content?
+
Why does related_topics return nothing?
+
Can you build a custom MCP server for my company?
+
Install it in a minute. Then talk to me about what comes after.
uvx trendzeist-mcp gets you the tools. A call gets you the person who wrote them looking at how your team actually produces content.
MIT licensed, free forever. No sales pitch on the call, you explain your setup, I tell you what makes sense.