LABSCO SUMMARY
Research with nothing to sign up for.
The absence of an API key is the whole point: search and extraction both run locally, so there is no vendor account, no quota and no per-query bill to think about. The trade-off is the usual one for scraping — sites that block automated fetches will come back empty, and rephrasing the query is the practical fix.
What it is
A research tool that runs entirely on your machine. It takes a question, searches DuckDuckGo, fetches the top results, strips each page down to readable text with Trafilatura, and hands the extracted content back to the model. Nothing is sent anywhere except the public web searches themselves.
What you get
One research call taking a query string and a num_results count — three by default — that searches, scrapes and extracts in one step, so the model receives article text rather than a list of links it cannot open. Requests are spaced out politely and queries are sanitised before they are used.
Requirements
Nothing — no account, no key. Python 3.10 or higher and uv; from a clone, uv add "mcp[cli]" duckduckgo-search trafilatura installs the dependencies. The documented client entry runs uv --directory <YOUR_PATH_TO_LOCAL_RESEARCH_SERVER> run python research_server.py over stdio.
Setup effort
Build from source — git clone https://github.com/Unlock-MCP/local-research-server.git
USE CASES
Answering a question about this week
Search and read the top results in one call, so the answer comes from current pages rather than training data.
Gathering source text for a draft
Pull the readable body of several articles at once and write from the extracted text.
Researching without an account anywhere
Run the whole loop locally when a search API key is not available or not permitted.
BEFORE YOU INSTALL
What to know first
Requires
Python 3.10 or later
Where it runs
The documented client runs the server on your machine.
INSTALLATION
Connect your client
You clone this one yourself.
Server setup
git clone https://github.com/Unlock-MCP/local-research-server.git
cd local-research-server
uv venv
uv add "mcp[cli]" duckduckgo-search trafilaturaMCP Clients
Claude Desktop
{
"mcpServers": {
"local-researcher": {
"command": "uv",
"args": [
"--directory",
"<YOUR_PATH_TO_LOCAL_RESEARCH_SERVER>",
"run",
"python",
"research_server.py"
]
}
}
}