Skip to main content
Glama

analyze_problem

Break down complex problems into structured steps for systematic analysis and solution planning.

Instructions

analyze this|how to approach|break this down|problem analysis|examine|investigate - Break down complex problem into structured steps

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
problemYesProblem to analyze
domainNoProblem domain

Implementation Reference

  • The handler function that executes the core logic of the 'analyze_problem' tool, taking problem and optional domain as input and returning a structured analysis.
    export async function analyzeProblem(args: { problem: string; domain?: string }): Promise<ToolResult> { const { problem, domain = 'general' } = args; const problemAnalysis = { action: 'analyze_problem', problem, domain, analysis: { breakdown: [ 'Define the problem clearly', 'Identify key constraints and requirements', 'Break down into smaller sub-problems', 'Determine solution approach', 'Plan implementation steps' ], considerations: [ 'What are the inputs and expected outputs?', 'Are there any edge cases to consider?', 'What are the performance requirements?', 'How will this integrate with existing systems?' ], nextSteps: [ 'Research existing solutions', 'Create detailed implementation plan', 'Identify potential risks and mitigation strategies', 'Define success criteria' ] }, status: 'success' }; return { content: [{ type: 'text', text: `Problem: ${problem}\nDomain: ${domain}\n\nBreakdown:\n${problemAnalysis.analysis.breakdown.map((b, i) => `${i+1}. ${b}`).join('\n')}\n\nConsiderations:\n${problemAnalysis.analysis.considerations.map(c => `- ${c}`).join('\n')}\n\nNext Steps:\n${problemAnalysis.analysis.nextSteps.map(n => `- ${n}`).join('\n')}` }] }; }
  • The ToolDefinition object defining the schema, name, description, and input schema for the 'analyze_problem' tool.
    export const analyzeProblemDefinition: ToolDefinition = { name: 'analyze_problem', description: 'analyze this|how to approach|break this down|problem analysis|examine|investigate - Break down complex problem into structured steps', inputSchema: { type: 'object', properties: { problem: { type: 'string', description: 'Problem to analyze' }, domain: { type: 'string', description: 'Problem domain' } }, required: ['problem'] }, annotations: { title: 'Analyze Problem', audience: ['user', 'assistant'] } };
  • src/index.ts:618-619 (registration)
    Registration and dispatch of the 'analyze_problem' tool in the main tool execution switch statement within executeToolCall function.
    case 'analyze_problem': return await analyzeProblem(args as any) as CallToolResult;
  • src/index.ts:114-114 (registration)
    Inclusion of the analyzeProblemDefinition in the tools array, which is used for listing available tools via ListToolsRequest.
    analyzeProblemDefinition,

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/ssdeanx/ssd-ai'

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