News API MCP Server
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@News API MCP Serversearch for news about climate change"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
News API MCP Server
A Model Context Protocol (MCP) server that provides access to global news articles through the News API. This server implements a standardized interface for searching news articles, retrieving top headlines, and listing available news sources.
Features
Search for news articles on any topic with advanced filtering options
Retrieve top headlines by country, category, or source
Get information about available news sources with filtering by category, language, and country
Built-in error handling and rate limit management
Related MCP server: gnews-mcp-server
Installation
Using Claude Desktop
Installing via Docker
Clone the repository and build a local image to be utilized by your Claude desktop client
cd news-api-mcp
docker build -t mcp/news-api .Change your
claude_desktop_config.jsonto match the following, replacingREPLACE_API_KEYwith your actual News API key:
claude_desktop_config.jsonpath
On MacOS:
~/Library/Application\ Support/Claude/claude_desktop_config.jsonOn Windows:
%APPDATA%/Claude/claude_desktop_config.json
{
"mcpServers": {
"newsapi": {
"command": "docker",
"args": [
"run",
"-i",
"-e",
"NEWS_API_KEY",
"mcp/news-api"
],
"env": {
"NEWS_API_KEY": "REPLACE_API_KEY"
}
}
}
}Installing via Smithery
To install News API MCP Server for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @berlinbra/news-api-mcp --client claudeDevelopment Setup
Install packages
uv install -e .Running
After connecting Claude client with the MCP tool via json file and installing the packages, Claude should see the server's mcp tools.
You can run the server yourself via:
uv run src/news_api_mcp/server.pywith inspector:
npx @modelcontextprotocol/inspector uv --directory /Users/{INSERT_USER}/YOUR/PATH/TO/news-api-mcp run src/news_api_mcp/server.pyAvailable Tools
The server implements three tools:
search-news
Search for news articles on any topic.
Input Schema:
{
"query": {
"type": "string",
"description": "Keywords or phrases to search for in the article title and body"
},
"from_date": {
"type": "string",
"description": "Start date for article search (YYYY-MM-DD format)"
},
"to_date": {
"type": "string",
"description": "End date for article search (YYYY-MM-DD format)"
},
"sources": {
"type": "string",
"description": "Comma-separated list of news sources to filter by (e.g., 'bbc-news,cnn')"
},
"language": {
"type": "string",
"description": "Language of the articles",
"default": "en"
},
"sort_by": {
"type": "string",
"description": "Sort articles by relevancy, popularity, or publishedAt",
"default": "publishedAt"
},
"page_size": {
"type": "integer",
"description": "Number of results to return per page (max 100)",
"default": 20
},
"page": {
"type": "integer",
"description": "Page number for pagination",
"default": 1
}
}Example Response:
Search results for 'artificial intelligence' (Found 28156 articles):
Article 1:
Title: OpenAI announces breakthrough in artificial intelligence reasoning
Source: TechCrunch
Author: John Smith
Published: 2025-03-25 14:30 UTC
Description: The AI research lab has developed a new model that demonstrates advanced reasoning capabilities...
URL: https://techcrunch.com/2025/03/25/openai-announces-new-ai-model/
---
Article 2:
...get-top-headlines
Retrieve breaking news headlines for countries, categories, and singular publishers.
Input Schema:
{
"country": {
"type": "string",
"description": "2-letter ISO 3166-1 country code"
},
"category": {
"type": "string",
"description": "Category to get headlines for"
},
"sources": {
"type": "string",
"description": "Comma-separated list of news source IDs (e.g., 'bbc-news,cnn')"
},
"query": {
"type": "string",
"description": "Keywords or phrases to search for in headlines"
},
"page_size": {
"type": "integer",
"description": "Number of results to return per page (max 100)",
"default": 20
},
"page": {
"type": "integer",
"description": "Page number for pagination",
"default": 1
}
}Example Response:
Top headlines for country: US, category: technology (Found 20 articles):
Article 1:
Title: Apple announces new MacBook Pro with M3 chip
Source: The Verge
Author: Alice Johnson
Published: 2025-03-28 13:45 UTC
Description: Apple has unveiled its latest MacBook Pro lineup featuring the new M3 chip...
URL: https://theverge.com/2025/03/28/apple-new-macbook-pro-m3
---
Article 2:
...get-news-sources
Retrieve information about the most notable news sources available.
Input Schema:
{
"category": {
"type": "string",
"description": "Find sources that display news of this category"
},
"language": {
"type": "string",
"description": "Find sources that display news in a specific language"
},
"country": {
"type": "string",
"description": "Find sources that display news in a specific country"
}
}Example Response:
Available news sources for category: technology, language: en (Found 22 sources):
Source 1:
Name: TechCrunch
ID: techcrunch
Description: TechCrunch is a leading technology media property, dedicated to obsessively profiling startups, reviewing new Internet products, and breaking tech news.
Category: technology
Language: en
Country: US
URL: https://techcrunch.com
---
Source 2:
...Error Handling
The server includes comprehensive error handling for various scenarios:
Rate limit exceeded (News API free tier is limited to 100 requests per day)
Invalid API key
Network connectivity issues
Timeout handling
Malformed responses
Error messages are returned in a clear, human-readable format.
Prerequisites
Python 3.12 or higher
httpx
mcp
Contributors
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
License
This MCP server is licensed under the MIT License. This means you are free to use, modify, and distribute the software, subject to the terms and conditions of the MIT License. For more details, please see the LICENSE file in the project repository.
Available Tools
3 toolsget-news-sourcesC
Get available news sources
| Name | Required | Description | Default |
|---|---|---|---|
| category | No | Find sources that display news of this category | |
| language | No | Find sources that display news in a specific language | |
| country | No | Find sources that display news in a specific country |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It only states 'Get available news sources', implying a read-only operation, but does not confirm safety, rate limits, or any side effects. The lack of explicit read-only or idempotent declaration leaves room for uncertainty.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is one short sentence, achieving conciseness with no wasted words. However, it could include additional useful context (e.g., output format) without becoming verbose. It is efficient but minimal.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the three optional filter parameters and absence of output schema, the description does not inform the agent about return values (e.g., list of source objects with names, URLs). This lack of output context makes the tool less complete for an agent deciding whether to use it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Since schema coverage is 100% and all parameters have clear descriptions with enums, the description adds no extra meaning. The baseline is 3, and the description does not compensate beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Get' and resource 'available news sources', indicating the tool retrieves a list of sources. However, it does not differentiate from sibling tools like get-top-headlines or search-news, which could be clearer by specifying that it returns metadata about sources rather than articles.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It does not mention that filters (category, language, country) are available, nor does it explain that this tool is for listing sources rather than fetching headlines or articles.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get-top-headlinesC
Get top headlines by country, category, or source
| Name | Required | Description | Default |
|---|---|---|---|
| country | No | 2-letter ISO 3166-1 country code | |
| category | No | Category to get headlines for | |
| sources | No | Comma-separated list of news source IDs (e.g., 'bbc-news,cnn') | |
| query | No | Keywords or phrases to search for in headlines | |
| page_size | No | Number of results to return per page (max 100) | |
| page | No | Page number for pagination |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so the description bears full responsibility. It does not disclose pagination behavior, result limits, or output structure. The return format (articles) is implied but not stated.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Extremely concise single sentence. No wasted words, but lacks structural elements like bullet points or section breaks. Efficient but borderline terse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 6 parameters, no output schema, and no annotations, the description is insufficient. It does not explain how parameters interact (e.g., mutually exclusive constraints), pagination defaults, or the nature of results (headline objects).
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so parameters are well-described in the schema. The tool description adds no additional semantics beyond listing the filtering dimensions already captured by the schema. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves top headlines and identifies filtering dimensions (country, category, source). It distinguishes from siblings as it focuses on top headlines, while get-news-sources lists sources and search-news likely returns broader results. However, it does not explicitly contrast with search-news.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus siblings (get-news-sources, search-news). No information about prerequisites, limitations, or when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search-newsC
Search for news articles on any topic
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Keywords or phrases to search for in the article title and body | |
| from_date | No | Start date for article search (YYYY-MM-DD format) | |
| to_date | No | End date for article search (YYYY-MM-DD format) | |
| sources | No | Comma-separated list of news sources to filter by (e.g., 'bbc-news,cnn') | |
| language | No | Language of the articles | en |
| sort_by | No | Sort articles by relevancy, popularity, or publishedAt | publishedAt |
| page_size | No | Number of results to return per page (max 100) | |
| page | No | Page number for pagination |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, and the description only states the purpose without disclosing behavioral details such as rate limits, authentication requirements, or full return format. The description is insufficient for an agent to understand side effects or constraints.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that efficiently conveys the core purpose. Every word is purposeful, but it may be overly brief for the tool's complexity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 8 parameters and no output schema, the description should explain the return format and pagination behavior. It only provides a high-level purpose, leaving the agent without key operational details.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so each parameter is already documented in the schema. The description adds no additional meaning beyond the schema, meeting the baseline expectation for high-coverage scenarios.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description states 'Search for news articles on any topic', clearly indicating the tool's function as a search tool. The sibling tools 'get-news-sources' and 'get-top-headlines' are implicitly differentiated by their purposes, but no explicit contrast is made.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus its siblings (e.g., top headlines, sources). An agent would have to infer usage from the tool name and parameters alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
TDQS
Each tool has a clearly distinct purpose: retrieving sources, top headlines by criteria, and searching articles. No overlap.
All tool names follow a consistent verb_noun pattern (get-news-sources, get-top-headlines, search-news), using snake_case.
3 tools is slightly minimal but appropriate for a focused news API server. Could include more endpoints but not excessive.
Covers core news retrieval tasks (sources, headlines, search). Missing explicit article retrieval by ID, but still functional for typical use cases.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
GNews MCP — Global news search via GNews API (gnews.io)
Google News headlines, sources, and links via the Apify Google News API, hosted MCP.
The only News based AI MCP your agents will ever need — custom categories, global regions, and time-scoped results in one tool. We use multi-vector & sparse-hybrid search to search through thousands of articles across the world to find the exact news you're looking for.
NewsData.io MCP — wraps the NewsData.io global news API (newsdata.io)
Related MCP Servers
- -licenseNot gradedqualityNot gradedmaintenanceA remote MCP server that enables searching for news articles on specific topics through the Tavily API without requiring authentication.
- FlicenseNot gradedqualityFmaintenanceMCP server providing access to the GNews API for fetching news articles and headlines. Supports search and top headlines with advanced filtering by language, country, category, and date.1
- AlicenseNot gradedqualityBmaintenanceA Model Context Protocol (MCP) server that provides real-time news intelligence using NewsAPI.ai. This server enables LLMs to search articles, track events, and analyze news through natural conversation.421MIT
- FlicenseNot gradedqualityDmaintenanceA FastAPI MCP server that provides access to NewsAPI.org for fetching top headlines, searching articles, trending stories, and listing news sources.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/berlinbra/news-api-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server