Google News search capabilities with automatic topic categorization and multi-language support via SerpAPI integration.
A Model Context Protocol (MCP) server implementation that provides Google News search capabilities via SerpAPI integration. Automatically categorizes news results and supports multiple languages and regions.
https://github.com/user-attachments/assets/1cc71c27-f840-4c94-9ab5-460d84ba4779
Comprehensive search capabilities including query-based search, topic search, publication filtering and story coverage.
Supports multiple languages and regions through configurable language and country codes.
Automatically categorizes news results into topics like AI & Technology, Business, Science & Research, and Healthcare.
Handles various news result types including headlines, stories, related topics and menu links.
Comprehensive error handling for API failures and invalid inputs, with helpful error messages.
Automatic fallback to English for unsupported language codes with appropriate user notifications.
Before getting started, you'll need to obtain a SERP API key. Here's how:
Visit SERP API website and create an account
After registration, go to your Dashboard:
API Usage Details:
Usage Limits:
Click to view my configuration solution 👉 https://github.com/modelcontextprotocol/servers/issues/76
npm install
npm run build
claude_desktop_config.json
with the following content (adjust paths according to your system): "google-news": {
"command": "D:\\Program\\nvm\\node.exe",
"args": [
"D:\\github_repository\\path_to\\dist\\index.js"
],
"env": {
"SERP_API_KEY": "your-api-key"
}
}
npm start
claude_desktop_config.json
The evals package loads an mcp client that then runs the index.ts file, so there is no need to rebuild between tests. You can load environment variables by prefixing the npx command. Full documentation can be found here.
OPENAI_API_KEY=your-key npx mcp-eval src/evals/evals.ts src/index.ts
To install Google News for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @chanmeng666/google-news-server --client claude
npx @michaellatman/mcp-get@latest install @chanmeng666/google-news-server
If you are using an old version of Windows PowerShell, you may need to run
Set-ExecutionPolicy Bypass -Scope Process
before this command.
@chanmeng666/google-news-server
# Using npm
npm i @chanmeng666/google-news-server
# or
npm install @chanmeng666/google-news-server
# Using yarn
yarn add @chanmeng666/google-news-server
# Using pnpm
pnpm add @chanmeng666/google-news-server
The server implements the Model Context Protocol and exposes a Google News search tool with the following parameters:
q
: Search query stringgl
: Country code (e.g., 'us', 'uk')hl
: Language code (e.g., 'en', 'es')topic_token
: Token for specific news topicspublication_token
: Token for specific publishersstory_token
: Token for full coverage of a storysection_token
: Token for specific sections# Run in development mode with hot reload
npm run dev
# Run linting
npm run lint
# Run tests
npm run test
This project is MIT licensed.
Created and maintained by Chan Meng.
Web and local search using Brave's Search API
Search Engine made for AIs by Exa
Search the web using Kagi's search API
One API for Search, Crawling, and Sitemaps
Search engine for AI agents (search + extract) powered by Tavily
Fast Windows file search using Everything SDK
Exa AI Search API
Kagi search API integration
Search and crawl in one API
A Model Context Protocol Server for SearXNG