The MCP Seekr Server enables web searching and content extraction from webpages using the Seekr API.
Core Features:
Web Search: Query Google or Wikipedia with customizable parameters including number of results (1-50), language/region filtering, safe search levels, time ranges, and advanced search operators for specific sites, file types, or exact phrases
Content Extraction: Extract clean text content from any valid HTTP/HTTPS webpage URL to get detailed information beyond search snippets
Real-time Data Access: Get current information on news, events, product details, and recent developments
Technical Capabilities:
Production-ready with input validation, rate limiting (100 calls/minute), and comprehensive error handling
Health monitoring with status endpoints
Environment variable configuration
Seamless integration with all MCP-enabled AI clients through stdio transport
Enables web search capabilities through Google search engine with advanced filtering options including language, region, safe search, time ranges, and search operators for site-specific, file type, and content-based searches
Provides search functionality for Wikipedia content with language and region filtering to access encyclopedic information across different languages and locales
MCP Seekr Server
A production-ready Model Context Protocol (MCP) server that provides web search and content extraction capabilities via the Seekr API.
π Requirements
Python 3.10+: This MCP server requires Python 3.10 or higher to run
β¨ Features
Web Search: Search Google and Wikipedia with advanced filtering
Content Extraction: Extract clean text content from any webpage
Input Validation: Comprehensive validation for URLs and search queries
Rate Limiting: Built-in protection against API abuse (100 calls/minute)
Health Monitoring: Health check endpoint for monitoring
Environment Configuration: Configurable via environment variables
Production Ready: Comprehensive error handling and logging
MCP Compatible: Works with all MCP-enabled AI clients
π Quick Start
Installation
Running the Server
The server runs with stdio transport for MCP client compatibility.
π§ Configuration
Environment Variables
Create a .env
file in the project root:
Note: You can also set these as environment variables directly instead of using a .env
file. The application will automatically load from .env
if it exists, or fall back to system environment variables.
MCP Client Configuration
For Claude Desktop
Add to your Claude Desktop config file:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
Alternative configuration (using Python directly):
This server uses stdio transport for MCP compatibility.
π οΈ Tools
seekr_query
Search the web using Google.
Parameters:
query
(string, required): Search query (max 500 characters)num
(integer, optional): Number of results 1-50 (default: 10)
Example:
seekr_prism
Extract text content from a webpage URL.
Parameters:
url
(string, required): Valid HTTP/HTTPS URL to extract content from
Example:
"status": "healthy", "timestamp": 1694598000.123, "version": "1.0.0", "services": { "seekr_api": "healthy" } }
Development Installation
βοΈ Configuration
For Claude Desktop
Add the following to your Claude Desktop configuration file:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
Environment Variables (Optional)
Create a .env
file in your project root:
π― Usage Examples
When to Use the Tools
Use
Current information, recent news, or developments that may have changed since your last training data
Real-time web search results from Google or Wikipedia
Localized content in different languages and regions
Advanced search operators (site-specific, file types, date ranges, etc.)
Use
To read the actual content of a webpage or article
Clean text extraction from websites you can't access directly
Analyzing web page content or online documents
Basic Web Search
Advanced Search with Operators
Web Content Extraction
π§ API Reference
seekr_search Tool
Performs web searches using Seekr API with support for Google and Wikipedia.
Parameters:
Parameter | Type | Required | Description |
| string | Yes | Search query string |
| string | No | Search engine: "google" (default) or "wikipedia" |
| string | No | Language code (ISO 639-1, e.g., "en", "es") |
| string | No | Region code (ISO 3166-1 alpha-2, e.g., "US", "GB") |
| integer | No | Safe search level: 0=off, 1=medium, 2=high |
| string | No | Time filter: "day", "week", "month", "year" |
| integer | No | Page number (1-based, default: 1) |
| string | No | Search type: "web", "images", "videos", "news" |
| integer | No | Number of results (max 100 for Google, 50 for Wikipedia) |
Advanced Search Operators:
Parameter | Type | Description |
| string | Limit results to specific domain |
| string | Limit to specific file types |
| string | Search for pages with word in URL |
| string | Search for pages with word in title |
| string | Exact phrase match |
| string | Terms to exclude (comma-separated) |
| string | Alternative terms (comma-separated) |
seekr_fetch Tool
Scrapes and extracts clean text content from web pages.
Parameters:
Parameter | Type | Required | Description |
| string | Yes | URL of the webpage to scrape |
| string | No | Language code for content extraction |
ποΈ Architecture
Components
SeekrClient: HTTP client for Seekr API with retry logic and error handling
SeekrSearchTools: Business logic layer that handles search and fetch operations
Main Server: MCP server implementation with tool registration and request handling
Type Definitions: Comprehensive TypedDict definitions for type safety
π¨ Error Handling
The server implements comprehensive error handling:
Validation Errors: Missing required parameters
API Errors: Seekr API failures with detailed error messages
Network Errors: Connection issues with automatic retries
Timeout Handling: Configurable request timeouts
π§ͺ Testing
Run the test suite:
π Development
Setting up Development Environment
Project Structure Guidelines
Use TypedDict for all API request/response types
Implement proper error handling with detailed error messages
Add logging for debugging and monitoring
Follow async/await patterns for all I/O operations
Include comprehensive docstrings for all public methods
π License
MIT License - see LICENSE file for details.
π€ Contributing
Fork the repository
Create a feature branch
Make your changes
Add tests for new functionality
Ensure all tests pass
Submit a pull request
π Support
For issues and questions:
Open an issue on GitHub
Check existing issues for solutions
Review the Seekr API documentation
π Related Projects
MCP TypeScript Server - Original Serper-based implementation
Seekr API - The underlying search API
Model Context Protocol - MCP Python SDK
remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
Enables web search through Google and Wikipedia plus content extraction from any webpage via the Seekr API. Provides real-time search results with advanced filtering options and clean text extraction capabilities.