Ollama Deep Researcher
Conducts deep research using local Ollama LLMs, leveraging Tavily and Perplexity for comprehensive search capabilities.
Ollama Deep Researcher DXT Extension
Overview
Ollama Deep Researcher is a Desktop Extension (DXT) that enables advanced topic research using web search and LLM synthesis, powered by a local MCP server. It supports configurable research parameters, status tracking, and resource access, and is designed for seamless integration with the DXT ecosystem.
- Research any topic using web search APIs (Tavily, Perplexity, Exa) and LLMs (Ollama, DeepSeek, etc.)
- Configure max research loops, LLM model, and search API
- Track status of ongoing research
- Access research results as resources via MCP protocol
Features
- Implements the MCP protocol over stdio for local, secure operation
- Defensive programming: error handling, timeouts, and validation
- Logging and debugging via stderr
- Compatible with DXT host environments
Directory Structure
.
├── manifest.json # DXT manifest (see MANIFEST.md for spec)
├── src/
│ ├── index.ts # MCP server entrypoint (Node.js, stdio transport)
│ └── assistant/ # Python research logic
│ └── run_research.py
├── README.md # This documentation
└── ...
Installation & Setup
-
Clone the repository and install dependencies:
git clone <your-repo-url> cd mcp-server-ollama-deep-researcher npm install -
Install Python dependencies for the assistant:
cd src/assistant pip install -r requirements.txt # or use pyproject.toml/uv if preferred -
Set required environment variables for web search APIs:
- For Tavily:
TAVILY_API_KEY - For Perplexity:
PERPLEXITY_API_KEY - For Exa:
EXA_API_KEY(Get yours at https://dashboard.exa.ai/api-keys) - Example:
export TAVILY_API_KEY=your_tavily_key export PERPLEXITY_API_KEY=your_perplexity_key export EXA_API_KEY=your_exa_key
- For Tavily:
-
Build the TypeScript server (if needed):
npm run build -
Run the extension locally for testing:
node dist/index.js # Or use the DXT host to load the extension per DXT documentation
Usage
- Research a topic:
- Use the
researchtool with{ "topic": "Your subject" }
- Use the
- Get research status:
- Use the
get_statustool
- Use the
- Configure research parameters:
- Use the
configuretool with any of:maxLoops,llmModel,searchApi
- Use the
Manifest
See manifest.json for the full DXT manifest, including tool schemas and resource templates. Follows DXT MANIFEST.md.
Logging & Debugging
- All server logs and errors are output to
stderrfor debugging. - Research subprocesses are killed after 5 minutes to prevent hangs.
- Invalid requests and configuration errors return clear, structured error messages.
Security & Best Practices
- All tool schemas are validated before execution.
- API keys are required for web search APIs and are never logged.
- MCP protocol is used over stdio for local, secure communication.
Testing & Validation
- Validate the extension by loading it in a DXT-compatible host.
- Ensure all tool calls return valid, structured JSON responses.
- Check that the manifest loads and the extension registers as a DXT.
Troubleshooting
- Missing API key: Ensure
TAVILY_API_KEY,PERPLEXITY_API_KEY, orEXA_API_KEYis set in your environment depending on which search API you're using. - Python errors: Check Python dependencies and logs in
stderr. - Timeouts: Research subprocesses are limited to 5 minutes.
Search API Comparison
- Tavily: Fast, comprehensive web search with raw content extraction
- Perplexity: AI-powered search with natural language summaries and citations
- Exa: Neural search engine optimized for semantic search with highlights
References
เซิร์ฟเวอร์ที่เกี่ยวข้อง
招投标大数据服务
Provides comprehensive import and export trade data query functions, including trend analysis, product statistics, and geographic distribution.
MCP NIF.PT
Query and analyze Portuguese companies using the NIF.PT public API. Supports search by NIF, company name, and city.
Entscheidsuche
Search Swiss legal decisions using the entscheidsuche.ch API.
Semantic Search Of Reddit
MCP server that enables AI assistants to search Reddit conversations, explore subreddits, and access trending topics.
Gaokao Ranking Query
Query Gaokao (Chinese college entrance exam) rankings within provinces based on score, year, and category.
Google Search
Web search and webpage content extraction using the Google Custom Search API.
Paper Search MCP
Search and download academic papers from sources like arXiv, PubMed, and Google Scholar.
MCP-MCP
A meta-server for discovering and provisioning other MCP servers from a large database.
Agntic AI for Research Papers
Search and extract information about research papers from arXiv.
Marketaux
Search for market news and financial data by entity, country, industry, or symbol using the Marketaux API.