mcp-trendpulse

mcp-trendpulse

MCP server that integrates Google News and Google Trends, enabling AI models to fetch news, analyze search interest, calculate growth rates, and summarize articles.

Category
Visit Server

README

mcp-trendpulse

MCP Version Python Version License

A powerful, robust Model Context Protocol (MCP) server that connects AI models to Google News RSS feeds and Google Trends. Easily pull historical weekly interest curves, calculate keyword growth rates, fetch trending queries, and analyze/summarize related articles using LLMs and NLP.

Features

  • Google News Integration: Trawl feeds for articles by keyword, location, or topic, and fetch top news stories.
  • Advanced Trends Analysis: Pull 5 years of weekly interest history, calculate growth velocities over custom windows, and retrieve real-time trending keywords.
  • NLP & LLM Summarization: Summarize article payloads and extract key concepts using client-side LLM sampling or local NLP.
  • Windows-Safe & Robust: Fully handles local session state, rates limits, and includes a fallback mechanism for sites that are difficult to scrape.

Installation

Using uv/uvx (recommended)

When using uv no specific installation is needed. We will use uvx to directly run mcp-trendpulse.

Using PIP

pip install mcp-trendpulse

After installation, you can run it as a script using:

python -m mcp_trendpulse

Configuration

Configure for Claude.app

Add to your Claude settings:

<details> <summary>Using uvx</summary>

{
  "mcpServers": {
    "mcp-trendpulse": {
      "command": "uvx",
      "args": ["mcp-trendpulse@latest"]
    }
  }
}

</details>

<details> <summary>Using pip installation</summary>

{
  "mcpServers": {
    "mcp-trendpulse": {
      "command": "python",
      "args": ["-m", "mcp_trendpulse"]
    }
  }
}

</details>

Configure for VS Code

<details> <summary>Using uvx</summary>

{
  "mcp": {
    "servers": {
      "mcp-trendpulse": {
        "command": "uvx",
        "args": ["mcp-trendpulse@latest"]
      }
    }
  }
}

</details>

<details> <summary>Using pip installation</summary>

{
  "mcp": {
    "servers": {
      "mcp-trendpulse": {
        "command": "python",
        "args": ["-m", "mcp_trendpulse"]
      }
    }
  }
}

</details>

Configure for Cursor Editor

Cursor supports MCP configuration globally or per-project:

  • Global Config: Edit %USERPROFILE%\.cursor\mcp.json (Windows) or ~/.cursor/mcp.json (macOS/Linux).
  • Project Config: Create a .cursor/mcp.json file inside your project root.

Add the following to the mcpServers object:

{
  "mcpServers": {
    "mcp-trendpulse": {
      "command": "python",
      "args": ["-m", "mcp_trendpulse"]
    }
  }
}

(Alternatively, you can open Cursor Settings -> Features -> MCP, and click "Add New Global MCP Server" to set it up via the UI).

Configure for Gemini / Antigravity IDE

If you are pair programming with Gemini in Antigravity IDE, add the server to your settings file at %APPDATA%\.gemini\antigravity-ide\mcp_config.json:

{
  "mcpServers": {
    "mcp-trendpulse": {
      "command": "python",
      "args": ["-m", "mcp_trendpulse"]
    }
  }
}

Configure for ChatGPT (OpenAI)

Because ChatGPT resides in the cloud, it requires your local MCP server to be exposed via a secure HTTPS tunnel (e.g., using ngrok or similar):

  1. Expose Server via Tunnel: Start your local MCP server using an HTTP/SSE bridge or expose its stdio endpoint using a secure tunnel tool.
  2. Enable Developer Mode in ChatGPT: Open the ChatGPT desktop app, go to Settings → Apps & Connectors, and toggle on Developer Mode.
  3. Register the Connector: Click + New Server (or "Create Connector") and paste the public HTTPS URL where your tunnel is hosted.

Environment Variables and Proxies

If you experience rate limits (429 Client Error) from Google Trends, or if your server is running in an environment without direct internet access, you can configure environment variables and proxies in one of two ways:

Option A: Using a .env file (Recommended)

You can create a .env file in the workspace directory (where the server is executed) and define the variables there. The server will automatically load them at startup:

HTTP_PROXY=http://your-proxy-address:port
HTTPS_PROXY=http://your-proxy-address:port
GOOGLE_TRENDS_DELAY=2.0

Option B: Injecting via the client configuration

You can add environment variables directly to the "env" object in your Claude Desktop or VS Code JSON configuration:

      "env": {
        "HTTP_PROXY": "http://your-proxy-address:port",
        "HTTPS_PROXY": "http://your-proxy-address:port",
        "GOOGLE_TRENDS_DELAY": "2.0"
      }

On Windows, it is also recommended to pass system environment variables like PATH, USERPROFILE, LOCALAPPDATA, and APPDATA under the "env" block to ensure that internal Chromium browsers (used by Playwright) resolve and execute correctly:

      "env": {
        "PATH": "C:\\Windows\\system32;C:\\Windows;C:\\Windows\\System32\\Wbem;C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\;C:\\Users\\<Username>\\AppData\\Local\\Microsoft\\WindowsApps;C:\\Users\\<Username>\\AppData\\Local\\Programs\\uv",
        "USERPROFILE": "C:\\Users\\<Username>",
        "LOCALAPPDATA": "C:\\Users\\<Username>\\AppData\\Local",
        "APPDATA": "C:\\Users\\<Username>\\AppData\\Roaming"
      }

Tools

The following MCP tools are available:

Tool Name Description
get_news_by_keyword Search for news using specific keywords.
get_news_by_location Retrieve news relevant to a particular location.
get_news_by_topic Get news based on a chosen topic.
get_top_news Fetch the top news stories from Google News.
get_trending_terms Return trending keywords from Google Trends for a specified location.
get_trends Pull 5 years of weekly Google Search interest for a keyword to inspect growth/seasonality curves.
get_growth Measure how much search interest changed over custom periods (e.g. 3M, 1Y) and compare growth side-by-side.
get_ranked_trends Get a ranked list of the highest-volume or fastest-growing keywords on Google Search right now.
get_top_trends Discover top trending topics on Google Trends right now without requiring a keyword query.

All of the news related tools have an option to summarize the text of the article using LLM Sampling (if supported) or NLP

CLI

All tools can be accessed from the command line using uv

uv run mcp-trendpulse
Usage: mcp-trendpulse [OPTIONS] COMMAND [ARGS]...

  Find and download news articles using Google News.

Options:
  --help  Show this message and exit.

Commands:
  keyword   Find articles by keyword using Google News.
  location  Find articles by location using Google News.
  top       Get top news stories from Google News.
  topic     Find articles by topic using Google News.
  trending  Returns google trends for a specific geo location.

Debugging

npx @modelcontextprotocol/inspector uvx mcp-trendpulse

To run from within locally installed project:

cd path/to/mcp-trendpulse
npx @modelcontextprotocol/inspector uv run mcp-trendpulse

Testing

cd path/to/mcp-trendpulse
python -m pytest

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured