Skip to main content
Glama
ameeralns

DeepResearch MCP

by ameeralns

initialize-research

Kickstart in-depth research by submitting a query and specifying depth level. DeepResearch MCP generates comprehensive reports through intelligent web searches and analysis.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
depthNo
queryYes

Implementation Reference

  • Core handler function that initializes a new research session by creating and storing the initial ResearchState object.
    export function initializeResearch(
      sessionId: string,
      query: string,
      depth: number = 3
    ): ResearchState {
      const researchState: ResearchState = {
        query,
        depth,
        currentDepth: 0,
        topics: [],
        findings: [],
        nextSearchTopic: query, // Initial search topic is the query itself
        shouldContinue: true
      };
    
      researchSessions.set(sessionId, researchState);
      return researchState;
    }
  • src/index.ts:62-94 (registration)
    MCP server registration of the 'initialize-research' tool, including input schema and wrapper handler that generates session ID and delegates to core initializeResearch function.
      'initialize-research',
      {
        query: z.string(),
        depth: z.number().default(3),
      },
      async ({ query, depth }) => {
        try {
          // Generate a unique session ID
          const sessionId = crypto.randomUUID();
          const state = initializeResearch(sessionId, query, depth);
          
          return {
            content: [{
              type: 'text',
              text: JSON.stringify({ 
                sessionId, 
                message: 'Research session initialized',
                state 
              }, null, 2)
            }]
          };
        } catch (error) {
          console.error('Error initializing research:', error);
          return {
            content: [{
              type: 'text',
              text: `Error initializing research: ${error instanceof Error ? error.message : String(error)}`
            }],
            isError: true
          };
        }
      }
    );
  • TypeScript interface defining the ResearchState used by the initialize-research tool implementation.
    export interface ResearchState {
      query: string;
      depth: number;
      currentDepth: number;
      topics: string[];
      findings: string[];
      nextSearchTopic: string | null;
      shouldContinue: boolean;
    }
Install Server

Other Tools

Related Tools

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/ameeralns/DeepResearchMCP'

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