- Home
- MCP servers
- Local Research
Local Research
- python
1
GitHub Stars
python
Language
5 months ago
First Indexed
2 months ago
Catalog Refreshed
Documentation & install
Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.
Installation
Add the following to your MCP client configuration file.
Configuration
View docs{
"mcpServers": {
"unlock-mcp-local-research-server": {
"command": "uv",
"args": [
"--directory",
"/path/to/your/local-research-server",
"run",
"python",
"research_server.py"
]
}
}
}You can run a private, local research assistant that searches the web and extracts content for AI development environments. Everything processes on your machine, giving you real-time information with strong privacy while integrating smoothly with MCP clients.
How to use
Connect your MCP client to the local research server to start querying. You will send research prompts like “What are the latest AI developments this week?” or “Find recent cybersecurity threat reports,” and your AI assistant will fetch and return results from the local server.
How to install
Prerequisites: Install Python 3.10 or higher and ensure you have an MCP client such as Claude Desktop, Claude Code, Google Gemini CLI, or Cline.
- Clone the project and enter the directory.
git clone https://github.com/Unlock-MCP/local-research-server.git
cd local-research-server
- Initialize and set up the virtual environment.
uv init
uv venv
source .venv/bin/activate # On Windows: .venv\Scripts\activate
- Install dependencies needed for MCP functionality.
uv add "mcp[cli]" duckduckgo-search trafilatura
- Test the server locally to ensure it runs.
python research_server.py
Configuration
To connect with a Claude Desktop or other MCP client, configure the local MCP server as shown below. For Claude Desktop, place the following in your config file and adjust the path to your local server directory.
{
"mcpServers": {
"local_researcher": {
"command": "uv",
"args": [
"--directory",
"/path/to/your/local-research-server",
"run",
"python",
"research_server.py"
]
}
}
}
Usage with MCP clients
After configuring your MCP client, restart your AI environment. You will see the connection indicator specific to your platform (for example, a plug icon on Claude Desktop). Then you can ask questions like those in the Usage guide.
How It Works
The server exposes a single MCP tool that performs three steps: searches the web with DuckDuckGo’s free API, scrapes resulting pages, and extracts clean text with Trafilatura. The processed content is returned to your AI assistant for analysis, all done locally.
Security Features
Inputs are validated to sanitize queries, requests are rate-limited to avoid overloading targets, errors are handled gracefully, and all processing stays on your device to protect your data.
Troubleshooting
Common issues include connection problems, no search results, or content extraction failures. Ensure the absolute path in your client config is correct, restart the AI environment, and verify Python dependencies are installed. If you run into no results, try different search terms or verify your network connection.
Extending the Server
You can enhance the server by adding RSS feed support, caching search results, filtering domains, extracting publication dates, and supporting multiple search engines.
Notes
The server uses a local processing model with no external data leakage beyond public web searches.
Available tools
web_search
Performs web searches using DuckDuckGo's free API to find relevant information.
content_extraction
Extracts readable text from web pages using Trafilatura and removes boilerplate.
local_processing
All processing happens on your device, ensuring privacy and no data leaves your machine.
result_delivery
Returns formatted content to the MCP client for analysis and presentation to the user.