Labsco
MCP SERVER

Deep Research

by u14app

Run a full deep-research pass — plan, search the web, write the report — as one MCP call, on your own deployment and your own model keys.

Web Search Engines
Summary
One call that runs for minutes — configure the timeout before you configure anything else.

This is not a search tool that returns in a second; a research pass takes about 2 minutes by the project's own account, and a client with a default timeout will cut it off mid-run. The other thing to settle early is the pairing: a strong thinking model with a high-output task model behaves very differently from using one model for both.

What it is

A self-hosted deep-research application that also serves an MCP endpoint. It splits the work between a thinking model and a task model, pairs them with a web search provider, and produces a research report; because you deploy it, the data and the model choice stay yours.

What you get
  • A research endpoint any MCP client can call, over Streamable HTTP at `/api/mcp` or SSE at `/api/mcp/sse`
  • A wide choice of models: Gemini, OpenAI, Anthropic, Deepseek, Grok, Mistral, Azure OpenAI, OpenRouter, Ollama and any OpenAI-compatible endpoint, selected with `MCP_AI_PROVIDER`
  • Web search through Searxng, Tavily, Firecrawl, Exa, Bocha or Brave, selected with `MCP_SEARCH_PROVIDER`, so models without built-in search can still work over the live web
  • Separate thinking and task models, set with `MCP_THINKING_MODEL` and `MCP_TASK_MODEL`, to balance depth against speed and output length
  • Optional protection: set `ACCESS_PASSWORD` and the MCP endpoint requires a Bearer token
  • The same deployment's web app for the interactive side: local knowledge base uploads, editable reports, knowledge graphs and research history
Requirements

Your own deployment — one-click to Vercel or Cloudflare Pages, or the Docker image — plus keys for the model provider and search engine you pick. The four MCP variables above are global environment variables and the service will not run without them. Set a long client timeout: the README uses 600, because a research run takes minutes. Version 0.11.1, MIT licensed.

Setup effort

One command plus a key — docker pull xiangfa/deep-research:latest, then supply credentials