Deep Research MCP
Глубокие исследования MCP 🌐
Добро пожаловать в репозиторий Deep Research MCP ! Этот проект предоставляет сервер, совместимый с Model Context Protocol (MCP). Он разработан для облегчения всесторонних веб-исследований. Используя API поиска и сканирования Tavily, сервер собирает подробную информацию по различным темам и структурирует эти данные для поддержки создания высококачественных документов markdown с использованием больших языковых моделей (LLM).
Оглавление
Related MCP server: Deep Research MCP Server
Функции
Соответствие MCP : сервер соответствует протоколу Model Context, обеспечивая совместимость с различными инструментами и службами.
Агрегация данных : эффективно собирает и структурирует данные из нескольких источников.
Генерация Markdown : преобразует собранные данные в хорошо структурированные документы Markdown.
Веб-сканирование : использует API поиска и сканирования Tavily для углубленного веб-исследования.
Node.js и TypeScript : созданы с использованием современных технологий для повышения производительности и удобства обслуживания.
Установка
Чтобы начать работу с Deep Research MCP, выполните следующие действия:
Клонируйте репозиторий :
git clone https://github.com/ali-kh7/deep-research-mcp.gitПерейдите в каталог проекта :
cd deep-research-mcpУстановите зависимости :
npm installЗапустите сервер :
npm start
Вы также можете проверить раздел «Релизы» на предмет загружаемых файлов и конкретных версий.
Использование
После запуска сервера вы можете взаимодействовать с ним через API. Вот как эффективно его использовать:
Отправить запрос на сбор информации :
Вы можете отправить запрос на сервер с определенной темой для сбора данных. Сервер вернет структурированную информацию, готовую для генерации markdown.
Пример запроса:
POST /api/research Content-Type: application/json { "topic": "Artificial Intelligence" }Получайте структурированные данные :
Сервер отвечает данными в структурированном формате. Эти данные могут быть использованы напрямую или преобразованы в документы markdown.
Создание документов с уценкой :
Структурированные данные можно преобразовать в разметку с помощью функций, предоставленных в API.
Пример вывода Markdown
# 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-документация
Подробную документацию API см. в папке docs в этом репозитории. Она содержит информацию обо всех доступных конечных точках, форматах запросов и структурах ответов.
Конечные точки
POST /api/research : Сбор информации по определенной теме.
GET /api/status : проверка статуса сервера.
Внося вклад
Мы приветствуем вклады в улучшение Deep Research MCP. Если вы хотите внести вклад, выполните следующие шаги:
Форк репозитория .
Создайте новую ветку :
git checkout -b feature/YourFeatureNameВнесите изменения .
Подтвердите свои изменения :
git commit -m "Add your message here"Нажмите на ветку :
git push origin feature/YourFeatureNameОткройте запрос на извлечение .
Лицензия
Этот проект лицензирован по лицензии MIT. Подробности см. в файле LICENSE .
Поддерживать
Если у вас возникли какие-либо проблемы или есть вопросы, проверьте раздел «Релизы» или создайте проблему в репозитории.
Спасибо, что ознакомились с Deep Research MCP! Надеемся, этот инструмент расширит ваши возможности веб-исследований. Удачного кодирования!
Available Tools
1 tooldeep-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.
| Name | Required | Description | Default |
|---|---|---|---|
| chunks_per_source | No | For 'advanced' search: number of content chunks from each source (1-3). | |
| crawl_allow_external | No | Allow crawler to follow links to external domains. | |
| crawl_categories | No | Filter crawl URLs by categories (e.g., 'Blog', 'Documentation'). | |
| crawl_exclude_domains | No | Regex for domains/subdomains to exclude. | |
| crawl_exclude_paths | No | Regex for URL paths to exclude. | |
| crawl_extract_depth | No | Extraction depth for crawl ('basic' or 'advanced'). | basic |
| crawl_include_images | No | Extract image URLs from crawled pages. | |
| crawl_instructions | No | Natural language instructions for the crawler. | |
| crawl_limit | No | Total links crawler will process per root URL (1-20). | |
| crawl_max_breadth | No | Max links to follow per page level during crawl (1-10). | |
| crawl_max_depth | No | Max crawl depth from base URL (1-2). Higher values increase processing time significantly. | |
| crawl_select_domains | No | Regex for domains/subdomains to crawl (e.g., '^docs\.example\.com$'). Overrides auto-domain focus. | |
| crawl_select_paths | No | Regex for URLs paths to crawl (e.g., '/docs/.*'). | |
| crawl_timeout | No | Timeout in seconds for Tavily crawl requests. | |
| days | No | For 'news' topic: number of days back from current date to include results. | |
| documentation_prompt | No | Optional. Custom prompt for LLM documentation generation. Overrides 'DOCUMENTATION_PROMPT' env var and default. If none set, a comprehensive default is used. | |
| exclude_domains_search | No | List of domains to specifically exclude from search. | |
| hardware_acceleration | No | Try to use hardware acceleration (WebGPU) if available. | |
| include_answer | No | Include an LLM-generated answer from Tavily search (true implies 'basic'). | |
| include_domains_search | No | List of domains to specifically include in search. | |
| include_raw_content_search | No | Include cleaned HTML from initial search results. | |
| include_search_image_descriptions | No | Include image descriptions from initial search results. | |
| include_search_images | No | Include image URLs from initial search results. | |
| max_search_results | No | Max search results to retrieve for crawling (1-20). | |
| output_path | No | Optional. 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. | |
| query | Yes | The main research topic or question. | |
| search_depth | No | Depth of the initial Tavily search ('basic' or 'advanced'). | advanced |
| search_timeout | No | Timeout in seconds for Tavily search requests. | |
| time_range | No | Time range for search results (e.g., 'd' for day, 'w' for week, 'm' for month, 'y' for year). | |
| topic | No | Category for the Tavily search ('general' or 'news'). | general |
TDQS
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.
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.
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.
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.
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.
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.
1 tool update
v1.0.0- First observed
deep-research-tool
TDQS
Scored across 1 tool
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.
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.
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.
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.
Related MCP Connectors
Web search, URL content extraction to Markdown, site mapping, and recursive web crawler.
Web search, fetch, extract, and research for AI agents. Markdown output + AI-synthesized answers.
Jina AI Reader/Search MCP — turn any URL into clean LLM-ready markdown, plus web search.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceA Model Context Protocol server enabling advanced search and content extraction using the Tavily API, with rich customization and integration options.48 npm12MIT
- AlicenseNot gradedqualityDmaintenanceA 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.26 npm28Apache 2.0
- FlicenseCqualityDmaintenanceA 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-
- FlicenseNot gradedqualityDmaintenanceAn 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.23-