GitHubスター
5
ユーザー評価
未評価
お気に入り
0
閲覧数
4
フォーク
0
イシュー
1
MCP Search Hub
🔍 Intelligent multi-provider search aggregation server built on FastMCP 2.0
MCP Search Hub embeds official MCP servers from five leading search providers within a unified interface, intelligently routes queries to the most appropriate provider(s), and combines/ranks results for optimal relevance.
✨ Key Features
- 🏗️ Unified Interface: Single MCP server for all search providers
- 🧠 Intelligent Routing: Automatically selects optimal providers based on query characteristics
- ⚡ Official Provider Integration: Embeds official MCP servers (Linkup, Exa, Perplexity, Tavily, Firecrawl)
- 💰 Cost Optimization: 30-45% cost reduction through intelligent provider selection
- 🚀 Zero Maintenance: Provider updates flow through automatically
- 📊 Smart Result Merging: Deduplication and multi-factor ranking
- ⚡ Performance Optimized: Multi-tier caching and parallel execution
- 🔧 Production Ready: Error handling, rate limiting, monitoring
🚀 Quick Start
Get up and running in 5 minutes:
# 1. Clone and install
git clone https://github.com/BjornMelin/mcp-search-hub
cd mcp-search-hub
uv pip install -r requirements.txt
# 2. Interactive setup (recommended)
python scripts/setup_claude_desktop.py
# 3. Start searching!
# The script will guide you through API key setup and Claude Desktop integration
After setup, restart Claude Desktop and ask: "What MCP tools do you have available?"
📖 Complete Setup Guide | ⚡ Quick Setup Script
🎯 Why MCP Search Hub?
Provider Strengths
Each provider excels in different areas. MCP Search Hub automatically routes queries to leverage these strengths:
Provider | Strengths | Best For | Accuracy |
---|---|---|---|
Linkup | Factual information, current events | News, facts, real-time data | 91.0% |
Exa | Semantic search, academic content | Research papers, technical docs | 90.0% |
Perplexity | AI-powered analysis, current events | Complex queries, analysis | 86.0% |
Tavily | RAG-optimized results | Retrieval applications | 73.0% |
Firecrawl | Deep content extraction | Web scraping, full content | N/A |
Accuracy scores from SimpleQA benchmark
Architecture Benefits
graph TB
User[Claude Desktop/Code] --> Hub[MCP Search Hub]
Hub --> Router[Intelligent Router]
Router -->|Academic Query| Exa[Exa MCP Server]
Router -->|News Query| Perplexity[Perplexity MCP Server]
Router -->|Factual Query| Linkup[Linkup MCP Server]
Router -->|Scraping Task| Firecrawl[Firecrawl MCP Server]
Hub --> Cache[Smart Caching]
Hub --> Merger[Result Merger]
style Hub fill:#e1f5fe
style Router fill:#f3e5f5
style Cache fill:#e8f5e8
style Merger fill:#fff3e0
Benefits:
- Single Integration: One MCP server instead of five
- Zero Configuration: No need to manage multiple servers
- Automatic Updates: Provider improvements flow through automatically
- Cost Efficient: Intelligent routing reduces unnecessary API calls
- Quality Results: Multi-provider consensus improves accuracy
📚 Documentation
For Users
- Getting Started - Complete setup guide and first steps
- Configuration - Detailed configuration reference
- API Reference - Complete tool and endpoint documentation
- Troubleshooting - Solutions to common problems
For Developers
- Contributing - How to contribute to the project
- Development - Development workflows and practices
- Architecture - System design and components
Advanced Topics
- Provider Integration - How providers are embedded
- Caching Strategy - Multi-tier caching system
- Performance Tuning - Optimization strategies
📖 Complete Documentation Index
🔑 Quick Configuration
At minimum, you need API keys for the providers you want to use:
# Copy environment template
cp .env.template .env
# Add your API keys
LINKUP_API_KEY=your_linkup_key
EXA_API_KEY=your_exa_key
PERPLEXITY_API_KEY=your_perplexity_key
TAVILY_API_KEY=your_tavily_key
FIRECRAWL_API_KEY=your_firecrawl_key
Getting API Keys
Provider | Free Tier | Sign Up |
---|---|---|
Linkup | 100 requests/month | linkup.so |
Exa | 1,000 requests/month | exa.ai |
Perplexity | $5 credit | perplexity.ai |
Tavily | 1,000 requests/month | tavily.com |
Firecrawl | 500 requests/month | firecrawl.dev |
⚙️ Complete Configuration Guide
🚀 Available Tools
MCP Search Hub provides all tools from embedded provider MCP servers:
Core Search Tools
search
- Intelligent multi-provider search with automatic routingget_provider_info
- Information about available providers
Provider-Specific Tools (25+ tools available)
- Firecrawl:
firecrawl_scrape
,firecrawl_search
,firecrawl_crawl
,firecrawl_extract
- Exa:
web_search_exa
,research_paper_search
,company_research
,linkedin_search
- Perplexity:
perplexity_ask
,perplexity_research
- Linkup:
linkup_search_web
- Tavily:
tavily_search
,tavily_extract
🏗️ Architecture
MCP Search Hub uses a modular architecture with embedded MCP servers:
graph TB
subgraph "MCP Search Hub"
Server[FastMCP Server]
Router[Query Router]
Cache[Tiered Cache]
Merger[Result Merger]
end
subgraph "Embedded MCP Servers"
LinkupMCP[Linkup MCP]
ExaMCP[Exa MCP]
PerplexityMCP[Perplexity MCP]
TavilyMCP[Tavily MCP]
FirecrawlMCP[Firecrawl MCP]
end
Client[Claude Desktop] --> Server
Server --> Router
Router --> LinkupMCP
Router --> ExaMCP
Router --> PerplexityMCP
Router --> TavilyMCP
Router --> FirecrawlMCP
style Server fill:#e1f5fe
style Router fill:#f3e5f5
style Cache fill:#e8f5e8
style Merger fill:#fff3e0
🤝 Contributing
We welcome contributions! Here's how to get started:
- Fork the repository
- Create a feature branch
- Make your changes with tests
- Submit a pull request
🤝 Contributing Guide | 🛠️ Development Setup
📄 License
This project is licensed under the MIT License - see the LICENSE file for details.
🙏 Acknowledgements
- FastMCP - The framework powering this server
- Provider Teams - For their excellent APIs and official MCP servers
🔗 Links
Ready to get started? Follow our Getting Started Guide or run the interactive setup:
python scripts/setup_claude_desktop.py
Senior Data Scientist | AI/ML Leader | GenAI & LLM Expert | UC Berkeley MIDS | 6x AWS Certified | Cloud Architect & Full-Stack Developer at heart!
51
フォロワー
55
リポジトリ
1
Gist
0
貢献数