Skip to main content
Glama
ali-kh7

Deep Research MCP

by ali-kh7

Deep Research MCP 🌐

Deep Research MCP
Download Releases

Welcome to the Deep Research MCP repository! This project provides a server compliant with the Model Context Protocol (MCP). It is designed to facilitate comprehensive web research. By utilizing Tavily's Search and Crawl APIs, the server gathers detailed information on various topics and structures this data to support high-quality markdown document creation using large language models (LLMs).

Table of Contents

Related MCP server: Deep Research MCP Server

Features

  • MCP Compliance: The server adheres to the Model Context Protocol, ensuring compatibility with various tools and services.

  • Data Aggregation: Efficiently gathers and structures data from multiple sources.

  • Markdown Generation: Converts gathered data into well-structured markdown documents.

  • Web Crawling: Utilizes Tavily's Search and Crawl APIs for in-depth web research.

  • Node.js and TypeScript: Built using modern technologies for better performance and maintainability.

Installation

To get started with Deep Research MCP, follow these steps:

  1. Clone the repository:

    git clone https://github.com/ali-kh7/deep-research-mcp.git
  2. Navigate to the project directory:

    cd deep-research-mcp
  3. Install the dependencies:

    npm install
  4. Run the server:

    npm start

You can also check the Releases section for downloadable files and specific versions.

Usage

Once the server is running, you can interact with it via the API. Here’s how to use it effectively:

  1. Send a request to gather information:

    You can send a request to the server with a specific topic to gather data. The server will return structured information ready for markdown generation.

    Example request:

    POST /api/research
    Content-Type: application/json
    
    {
      "topic": "Artificial Intelligence"
    }
  2. Receive structured data:

    The server responds with data in a structured format. This data can be used directly or transformed into markdown documents.

  3. Generate markdown documents:

    The structured data can be converted into markdown using the provided functions in the API.

Example Markdown Output

# Artificial Intelligence

## Overview
Artificial Intelligence (AI) refers to the simulation of human intelligence in machines.

## Applications
- Healthcare
- Finance
- Transportation

## Conclusion
AI is transforming industries and shaping the future.

API Documentation

For detailed API documentation, please refer to the docs folder in this repository. It contains information on all available endpoints, request formats, and response structures.

Endpoints

  • POST /api/research: Gather information on a specific topic.

  • GET /api/status: Check the server status.

Contributing

We welcome contributions to improve Deep Research MCP. If you want to contribute, please follow these steps:

  1. Fork the repository.

  2. Create a new branch:

    git checkout -b feature/YourFeatureName
  3. Make your changes.

  4. Commit your changes:

    git commit -m "Add your message here"
  5. Push to the branch:

    git push origin feature/YourFeatureName
  6. Open a Pull Request.

License

This project is licensed under the MIT License. See the LICENSE file for details.

Support

If you encounter any issues or have questions, please check the Releases section or open an issue in the repository.


Thank you for checking out Deep Research MCP! We hope this tool enhances your web research capabilities. Happy coding!

Available Tools

1 tool
deep-research-toolC

Performs extensive web research using Tavily Search and Crawl. Returns aggregated JSON data including the query, search summary (if any), detailed research findings, and documentation instructions. The documentation instructions will guide you on how the user wants the research data to be formatted into markdown.

ParametersJSON Schema
NameRequiredDescriptionDefault
chunks_per_sourceNoFor 'advanced' search: number of content chunks from each source (1-3).
crawl_allow_externalNoAllow crawler to follow links to external domains.
crawl_categoriesNoFilter crawl URLs by categories (e.g., 'Blog', 'Documentation').
crawl_exclude_domainsNoRegex for domains/subdomains to exclude.
crawl_exclude_pathsNoRegex for URL paths to exclude.
crawl_extract_depthNoExtraction depth for crawl ('basic' or 'advanced').basic
crawl_include_imagesNoExtract image URLs from crawled pages.
crawl_instructionsNoNatural language instructions for the crawler.
crawl_limitNoTotal links crawler will process per root URL (1-20).
crawl_max_breadthNoMax links to follow per page level during crawl (1-10).
crawl_max_depthNoMax crawl depth from base URL (1-2). Higher values increase processing time significantly.
crawl_select_domainsNoRegex for domains/subdomains to crawl (e.g., '^docs\.example\.com$'). Overrides auto-domain focus.
crawl_select_pathsNoRegex for URLs paths to crawl (e.g., '/docs/.*').
crawl_timeoutNoTimeout in seconds for Tavily crawl requests.
daysNoFor 'news' topic: number of days back from current date to include results.
documentation_promptNoOptional. Custom prompt for LLM documentation generation. Overrides 'DOCUMENTATION_PROMPT' env var and default. If none set, a comprehensive default is used.
exclude_domains_searchNoList of domains to specifically exclude from search.
hardware_accelerationNoTry to use hardware acceleration (WebGPU) if available.
include_answerNoInclude an LLM-generated answer from Tavily search (true implies 'basic').
include_domains_searchNoList of domains to specifically include in search.
include_raw_content_searchNoInclude cleaned HTML from initial search results.
include_search_image_descriptionsNoInclude image descriptions from initial search results.
include_search_imagesNoInclude image URLs from initial search results.
max_search_resultsNoMax search results to retrieve for crawling (1-20).
output_pathNoOptional. Path where generated research documents and images should be saved. If not provided, a default path in user's Documents folder with timestamp will be used.
queryYesThe main research topic or question.
search_depthNoDepth of the initial Tavily search ('basic' or 'advanced').advanced
search_timeoutNoTimeout in seconds for Tavily search requests.
time_rangeNoTime range for search results (e.g., 'd' for day, 'w' for week, 'm' for month, 'y' for year).
topicNoCategory for the Tavily search ('general' or 'news').general

TDQS

C2.8/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It mentions the tool returns aggregated JSON data and documentation instructions, but fails to disclose critical behavioral traits: it doesn't indicate whether this is a read-only or mutating operation, potential side effects (e.g., network usage, rate limits), error handling, or performance characteristics. For a complex tool with 30 parameters, this is a significant gap.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences, which is efficient, but it's not optimally front-loaded. The first sentence covers purpose and output, while the second adds detail on documentation instructions. However, for such a complex tool, more structure (e.g., bullet points or clearer sections) could improve readability without adding waste.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given high complexity (30 parameters), no annotations, and no output schema, the description is incomplete. It covers basic purpose and output format but lacks crucial context: no behavioral transparency, no usage guidelines, and minimal parameter guidance. For a tool of this scale, the description should provide more holistic guidance to compensate for missing structured data.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema fully documents all 30 parameters. The description adds no parameter-specific information beyond implying the 'query' parameter is central. It mentions 'documentation instructions' which relates to the 'documentation_prompt' parameter, but this is minimal. Baseline 3 is appropriate as the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool 'performs extensive web research using Tavily Search and Crawl' and specifies it 'returns aggregated JSON data' with specific components like query, search summary, findings, and documentation instructions. It distinguishes the tool as a comprehensive research tool, though without sibling tools, differentiation isn't needed. The purpose is specific but could be more precise about the verb (e.g., 'conducts' vs. 'performs').

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives, prerequisites, or typical use cases. It mentions the tool's output includes documentation instructions for formatting, but this is about post-processing rather than usage context. With no sibling tools, the bar is lower, but it still lacks basic contextual cues for an agent.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 1 tool updatev1.0.0
    • First observeddeep-research-tool

TDQS

B3/5.0
Disambiguation5/5

With only one tool, there is no possibility of ambiguity or overlap with other tools. The tool's purpose is clearly defined as performing extensive web research, and there are no other tools to confuse it with.

Naming Consistency5/5

Since there is only one tool, naming consistency is inherently perfect. The tool name 'deep-research-tool' follows a clear and descriptive pattern, and there are no other tools to create inconsistency with.

Tool Count2/5

A single tool is generally too few for a server named 'Deep Research MCP', which suggests a broader scope of research-related operations. While the tool is comprehensive, the lack of additional tools (e.g., for query refinement, result filtering, or different research methods) makes the set feel thin and underdeveloped for the domain.

Completeness2/5

The tool covers basic research functionality but leaves significant gaps in the research domain. There are no tools for managing research queries, saving or organizing results, or performing specialized research tasks, which limits the server's ability to handle complex research workflows effectively.

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    A Model Context Protocol server enabling advanced search and content extraction using the Tavily API, with rich customization and integration options.
    69
    12
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    A Model Context Protocol server that performs comprehensive web research by combining Tavily Search and Crawl APIs to gather extensive information and provide structured JSON output tailored for LLMs to create detailed markdown documents.
    34
    27
    Apache 2.0
  • F
    license
    C
    quality
    D
    maintenance
    A Model Context Protocol server that enables web search capabilities using the Tavily API, allowing AI models to retrieve current information from the internet through natural language commands.
    3
    -
  • F
    license
    Not graded
    quality
    D
    maintenance
    An MCP server that enables web search and document retrieval capabilities through Tavily API and LangConnect vector database, supporting AI agents in gathering information for comprehensive report generation.
    22
    -

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/ali-kh7/deep-research-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server