Skip to content

Add MCP Server for Agent Interoperability #146

@metalshanked

Description

@metalshanked

Is your feature request related to a problem?

Thanks for this powerful, standalone tool for performing detailed research. However, because it's run from the command line, it's difficult to integrate as a "tool" into larger AI agent frameworks or multi-agent systems. A more sophisticated agent has no standardized way to discover what this tool does or how to call it.

Describe the solution you'd like

I propose adding a simple MCP (Model Context Protocol) server to this project.

This would expose the core research functionality as a callable tool over an API. When another agent queries the MCP endpoint, it would receive a structured response describing how to use the research function.

For example, the server could be started with npm run server and would expose a context like this:

{
  "functions": [
    {
      "name": "perform_deep_research",
      "description": "Performs iterative, deep research on a given topic by combining search, web scraping, and LLMs to produce a detailed report.",
      "parameters": {
        "type": "object",
        "properties": {
          "topic": {
            "type": "string",
            "description": "The central topic or question to research."
          },
          "depth": {
            "type": "integer",
            "description": "How many recursive levels of research to perform (e.g., 2)."
          },
          "breadth": {
            "type": "integer",
            "description": "How many search results to explore at each level (e.g., 4)."
          }
        },
        "required": ["topic"]
      }
    }
  ]
}

Why is this a good idea?

  • Makes it a Composable Tool: This immediately turns open-deep-research from a script into a building block that can be used by other AI agents.
  • Standardized Integration: MCP is becoming a standard for agent-to-tool communication. Supporting it makes this project instantly compatible with a growing ecosystem.
  • Increases Utility: It allows this project's powerful research capability to be called programmatically, unlocking its use in autonomous systems, chatbots, and more complex workflows.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions