Local Research MCP Server
Enables AI assistants to search the web using DuckDuckGo and extract clean text content from websites for real-time research, with all processing happening locally for complete privacy.
README
Local Research MCP Server
A free, private research assistant for AI development environments that searches the web and scrapes content using DuckDuckGo and Python. This MCP server gives AI assistants the ability to access real-time information while keeping all processing local for complete privacy.
Compatible with:
- Claude Desktop - Anthropic's official desktop app
- Claude Code - Anthropic's CLI tool for developers
- Gemini CLI - Gemini's CLI tool
- Cline - VS Code extension for AI-powered coding
- Any MCP-compatible client
Features
- 🔍 Free Web Search: Uses DuckDuckGo's search API without requiring API keys
- 📄 Content Extraction: Intelligently extracts clean text from web pages
- 🔒 Privacy-First: All processing happens locally on your machine
- ⚡ Fast Integration: Works seamlessly with Claude Desktop via MCP
- 🛠️ Zero Dependencies: No external services or subscriptions required
Quick Start
Prerequisites
- Python 3.10 or higher
- One of the compatible AI environments:
- Claude Desktop, Claude Code, Google CLI, Cline, or other MCP client
- Basic command line knowledge
Installation
-
Clone this repository:
git clone https://github.com/Unlock-MCP/local-research-server.git cd local-research-server -
Set up the environment:
uv init uv venv source .venv/bin/activate # On Windows: .venv\Scripts\activate -
Install dependencies:
uv add "mcp[cli]" duckduckgo-search trafilatura -
Test the server:
python research_server.py
Configuration
Choose your AI environment:
Claude Desktop
Add this to your config file:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%/Claude/claude_desktop_config.json
{
"mcpServers": {
"local-researcher": {
"command": "uv",
"args": [
"--directory",
"/path/to/your/local-research-server",
"run",
"python",
"research_server.py"
]
}
}
}
Claude Code
Add this to your CLAUDE.md file or use the CLI:
claude --mcp-server local-researcher="uv --directory /path/to/your/local-research-server run python research_server.py"
Google AI Studio / Gemini CLI
Configure via your MCP client settings or environment variables.
Cline (VS Code)
Add to your Cline MCP server configuration in VS Code settings.
Replace /path/to/your/local-research-server with the full path to this directory.
Usage
After configuration, restart your AI environment. Connection indicators vary by platform:
- Claude Desktop: Look for the plug icon (🔌)
- Claude Code: Server status shown in CLI output
- Other platforms: Check your MCP client's connection status
Ask your AI assistant research questions like:
- "What are the latest developments in AI research this week?"
- "Research current renewable energy trends in Europe"
- "Find recent cybersecurity threat reports"
Your AI assistant will automatically use the local server to fetch real-time information.
How It Works
The server implements a single MCP tool that:
- Searches the web using DuckDuckGo's free API
- Scrapes content from the top search results
- Extracts clean, readable text using Trafilatura
- Returns formatted content to Claude for analysis
All processing happens locally with no data sent to external services except for the public web searches.
Architecture
AI Client (Claude Desktop/Code/Gemini/Cline)
↓ (MCP Protocol)
Local Research Server
↓ (Search API)
DuckDuckGo Search
↓ (HTTP Requests)
Target Websites
↓ (Content Extraction)
Clean Text → AI Assistant
Configuration Options
The server accepts these parameters for the research tool:
query(string): The search query or research topicnum_results(int): Number of search results to process (default: 3)
Security Features
- Input Validation: Sanitizes search queries
- Rate Limiting: Polite delays between web requests
- Error Handling: Graceful failure handling
- Local Processing: No external data dependencies
Business Applications
This research server is ideal for:
- Content Creation: Research-backed article writing
- Market Analysis: Real-time competitor and industry research
- Due Diligence: Company and investment research
- Regulatory Monitoring: Tracking compliance requirements
Extending the Server
Consider these enhancements:
- Add RSS feed integration
- Implement search result caching
- Add domain filtering capabilities
- Include publication date extraction
- Add multiple search engine support
Troubleshooting
Common Issues
Server not connecting:
- Verify the absolute path in your AI client config
- Restart your AI environment completely
- Check that Python dependencies are installed
No search results:
- Verify internet connection
- Check DuckDuckGo service status
- Try different search queries
Content extraction failing:
- Some websites block scraping
- Try different search terms for varied sources
- Check the console output for specific errors
Contributing
We welcome contributions! Please see our Contributing Guide for details.
License
MIT License - see LICENSE for details.
Related Projects
- MCP Docs Server - Local documentation access
- Remote MCP Server - Enterprise database access
- UnlockMCP Website - MCP tutorials and resources
Support
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.