News Fact-Checker
Automated fact-checking of news headlines using web search and Google Gemini AI.
News Fact-Checker MCP Server
A modern Model Context Protocol (MCP) server for fact-checking news headlines using AI analysis and web search.
Features
- 🔍 Fact-Check Headlines: Verify news claims using Google Gemini AI and web search
- 📈 Trending Topics: Get current trending news from RSS feeds
- 🤖 AI-Powered Analysis: Uses Google Gemini 2.0 Flash for intelligent fact-checking
- 🌐 Multi-Source Verification: Searches multiple sources for comprehensive analysis
- ⚡ Modern MCP: Built with latest MCP conventions using
@mcp.tooldecorators
Quick Start
Prerequisites
- Python 3.11 or higher
- Google Gemini API key
Installation
- Clone the repository:
git clone <repository-url>
cd FactChecker
- Install dependencies:
pip install -r requirements.txt
- Set up your API key:
export GEMINI_API_KEY="your_gemini_api_key_here"
- Run the server:
python -m factchck.news_factcheck
Usage
Fact-Check a Headline
# Example MCP tool call
{
"tool": "fact_check_headline",
"arguments": {
"headline": "NASA announces discovery of water on Mars"
}
}
Get Trending Topics
# Example MCP tool call
{
"tool": "get_trending_topics",
"arguments": {
"location": "international" # or "local", "india"
}
}
Available Tools
fact_check_headline
Verifies news headlines using AI analysis and web search.
Parameters:
headline(string): The news headline to fact-check
Returns:
- Verdict (TRUE/FALSE/PARTIALLY_TRUE/UNVERIFIED/MISLEADING)
- Confidence score
- Truthfulness percentage
- Supporting and contradicting evidence
- Recommendations
get_trending_topics
Retrieves current trending news topics.
Parameters:
location(string, optional): "international", "local", or "india" (default: "international")
Returns:
- List of trending topics with titles, sources, and URLs
Configuration
Environment Variables
GEMINI_API_KEY: Required Google Gemini API keyNEWS_API_KEY: Optional NewsAPI key for enhanced searchSEARCH_API_KEY: Optional additional search API key
API Keys
- Google Gemini: Get your API key from Google AI Studio
- NewsAPI (optional): Get from NewsAPI
- Search API (optional): Additional search service API key
Development
Project Structure
FactChecker/
├── src/
│ └── factchck/
│ └── news_factcheck.py # Main MCP server
├── requirements.txt # Python dependencies
├── pyproject.toml # Project configuration
└── README.md # This file
Building
# Install in development mode
pip install -e .
# Run tests (if available)
python -m pytest
MCP Integration
This server is compatible with:
- Claude Desktop
- MCP CLI
- Any MCP-compatible client
Server Configuration
{
"mcpServers": {
"news-factcheck": {
"command": "python",
"args": ["-m", "factchck.news_factcheck"],
"env": {
"GEMINI_API_KEY": "your_api_key_here"
}
}
}
}
Error Handling
The server includes comprehensive error handling for:
- Missing API keys
- Network connectivity issues
- Invalid input validation
- Service unavailability
Limitations
- Requires internet connection for web search
- Depends on Google Gemini API availability
- RSS feed parsing is simplified (consider using proper XML parser for production)
- Rate limits may apply to API services
Contributing
- Fork the repository
- Create a feature branch
- Make your changes
- Add tests if applicable
- Submit a pull request
License
MIT License - see LICENSE file for details.
Version History
- v3.0.0: Modernized with latest MCP conventions, simplified codebase
- v2.1.0: Previous version with complex multi-source search
- v0.1.0: Initial release
Support
For issues and questions:
- Check the error logs
- Verify API key configuration
- Ensure network connectivity
- Open an issue on GitHub
İlgili Sunucular
regmd-mcp
Medical device regulatory intelligence. Classify devices, query alerts, find pathways across 15 jurisdictions (FDA, EU MDR, HSA, TGA, PMDA, NMPA +9 more). REST API + MCP.
ThreatBook Threat Analysis
Provides threat intelligence queries for IPs, domains, files, URLs, and vulnerabilities using the ThreatBook API.
Perplexity MCP Zerver
Interact with Perplexity.ai using Puppeteer without an API key. Requires Node.js and stores chat history locally.
Brave Search
An MCP server for the Brave Search API, providing both web and local search capabilities.
Local RAG
Performs a local RAG search on your query using live web search for context extraction.
Meilisearch
Interact & query with Meilisearch (Full-text & semantic search API)
MCP Registry Server
A server for discovering and retrieving other MCP servers via MCPulse.
Web Search
A server that provides web search capabilities using OpenAI models.
Local RAG Backend
A local RAG backend powered by Docker Compose, supporting various document formats for search.
Pokemon TCG Card Search MCP
Search and display Pokemon Trading Card Game cards using the Pokemon TCG API.