ResearchMCP

ResearchMCP

By riii111 GitHub

Multi-Search API Aggregator Server built with Deno + Hono

hono deno
Overview

what is ResearchMCP?

ResearchMCP is a research tool that combines Model Context Protocol (MCP) and Brave Search to provide research functionality similar to ChatGPT's DeepResearch.

how to use ResearchMCP?

To use ResearchMCP, set up the environment by installing Deno, cloning the repository, and configuring the necessary environment variables. You can run the application locally or in a Docker container.

key features of ResearchMCP?

  • Integration with Brave Search for enhanced research capabilities
  • Support for both local and Docker-based development environments
  • Hybrid development approach allowing flexibility in coding and testing

use cases of ResearchMCP?

  1. Conducting in-depth research using the enhanced analysis endpoint.
  2. Utilizing the standard MCP endpoint for basic search functionalities.
  3. Analyzing and summarizing search results with Claude API integration.

FAQ from ResearchMCP?

  • What is the primary purpose of ResearchMCP?

ResearchMCP aims to provide a robust research tool that leverages MCP and Brave Search for effective information retrieval and analysis.

  • Is ResearchMCP easy to set up?

Yes! The setup process is straightforward, with detailed instructions provided in the documentation.

  • Can I run ResearchMCP in a Docker container?

Yes! ResearchMCP supports Docker for consistent development environments.

Content

ResearchMCP

A research tool that combines the Model Context Protocol (MCP) with Brave Search, Tavily Search, etc. to achieve research capabilities equivalent to (or aiming to be equivalent to) ChatGPT's DeepResearch.

Technology Stack

  • Runtime: Deno
  • Framework: Hono
  • Error Handling: Neverthrow (Result<T, E> pattern)
  • Deployment: Docker container

Setup

Local Development

  1. Install Deno

  2. Clone the repository

  3. Set environment variables

    • BRAVE_API_KEY: Brave Search API key
    • TAVILY_API_KEY: Tavily Search API key (optional)
  4. Run the application:

    make dev  # HTTP server
    make mcp  # MCP server for Claude Desktop
    

Container Environment

  1. Install Docker and Docker Compose

  2. Set environment variables in a .env file

  3. Build and run the container:

    make d-build
    make d-up
    

Development Commands

# Local development
make dev     # Start HTTP server with watch mode
make mcp     # Start MCP server for Claude Desktop
make test    # Run tests
make lint    # Run linter
make format  # Format code
make check   # Type check

# Docker development
make d-build  # Build the image
make d-dev    # Start container with live reload
make d-up     # Run in background
make d-logs   # View logs
make d-down   # Stop container

MCP Integration with Claude Desktop

  1. Run the MCP server: make mcp

  2. In Claude Desktop, add a new MCP server with the following configuration:

    {
      "mcpServers": {
        "MCPSearch": {
          "description": "Web search powered by Brave, Tavily, etc.",
          "command": "/absolute/path/to/ResearchMCP/cli.ts",
          "args": [],
          "transport": "stdio",
          "env": {
            "BRAVE_API_KEY": "your_brave_api_key_here",
            "TAVILY_API_KEY": "your_tavily_api_key_here"
          }
        }
      }
    }
    

    Replace /absolute/path/to/ResearchMCP/cli.ts with the actual path to the cli.ts file.

Known Limitations

  • Language Support: Brave Search API has limited support for non-Latin characters. Searches in Japanese, Chinese, Korean, and other non-Latin script languages may fail with encoding errors. For best results, use English queries.

Features

  • Web Search: Search the web using Brave Search API through Claude Desktop
  • MCP Protocol: Full compliance with the Model Context Protocol
  • Caching: Search results are cached to improve performance and reduce API calls
No tools information available.

Remote MCP server sample (Hono + Cloudflare Workers + Durable Objects)

hono remote
View Details

An MCP server that provides tools to search and fetch papers from arXiv.org.