About Mediastack News Server
Mediastack News Server is an MCP server in the Content category: provide up-to-date news retrieval and source listing capabilities by integrating the Mediastack News API as MCP tools. Enable agents to fetch the latest news stories with flexible filtering and access comprehensive news source information. Simplify news data access for MCP-compatible platforms with easy deployment and configuration.
Install
git clone https://github.com/rftsngl/newsmcp_with_mediastackapiThis server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.
Ask AI
Ask AI about Mediastack News Server
Powered by Claude · Grounded in docs
Security checks
- ✓README presentThe repository ships documentation.
5 checks have not been run yet.
README
Mediastack News MCP Server
A FastMCP server that exposes the Mediastack News API as MCP (Model Context Protocol) tools. This server can be used as a plug-and-play backend for Smithery.ai or any other MCP-compatible agent platform.
✨ Features
get_latest_news: Fetches the most recent news stories with various filtering options.get_sources: Lists available news sources with filtering capabilities.
🚀 Installation
-
Clone this repository:
git clone <repository-url> cd NewsMCP_with_MediastackAPI -
Install the required Python packages:
pip install -r requirements.txt
⚙️ Configuration
This server requires a Mediastack API key to function.
- Get a free API key from mediastack.com.
- Create a file named
.envin the project's root directory. - Add your API key to this file in the following format:
MEDIASTACK_API_KEY=your_api_key_here
The server will automatically load this environment variable when a tool is called.
💻 Running Locally
To start the MCP server, run the following command:
python server.py
By default, the server will start on http://0.0.0.0:8080.
🛠️ Available Tools
1. get_latest_news
Fetches the most recent news stories from Mediastack.
Parameters:
keywords(Optional): Search terms to filter news.sources(Optional): News sources, comma-separated (e.g., "cnn,bbc").countries(Optional): Country codes, comma-separated (e.g., "us,gb").languages(Optional): Language codes, comma-separated (e.g., "en,fr").categories(Optional): News categories, comma-separated.date(Optional): A specific date or date range (YYYY-MM-DD).sort(Optional): Sort order (published_desc,published_asc,popularity).limit(Optional): Maximum number of results to return (default: 25, max: 100).offset(Optional): Pagination offset.
2. get_sources
Lists available news sources from Mediastack.
Parameters:
search(Optional): A search term to filter sources.sources(Optional): Specific sources, comma-separated.countries(Optional): Country codes, comma-separated.languages(Optional): Language codes, comma-separated.categories(Optional): News categories, comma-separated.limit(Optional): Maximum number of results to return (default: 25, max: 100).offset(Optional): Pagination offset.
☁️ Deployment on Smithery.ai
- Push this repository to GitHub.
- Connect your GitHub repository to Smithery.ai.
- Smithery will automatically detect the
smithery.yamlconfiguration. - Set your
MEDIASTACK_API_KEYin Smithery's environment variables. - Deploy and start using the MCP tools.
For more information, visit the Smithery.ai Documentation.
📂 Project Structure
.
├── app.py # MCP tool definitions
├── server.py # FastMCP server setup
├── requirements.txt # Python dependencies
├── smithery.yaml # Smithery deployment configuration
├── Dockerfile # Instructions for building a Docker image
├── LICENSE # Project license
├── .env # (Local) Environment variables
└── README.md # This file
📄 License
This project is licensed under the MIT License.
README copy captured when this server was indexed; it may lag the repository. The original is authoritative.