Skip to main content
Glama

get_methodology

Retrieve the Self-Dialectical AI Systems methodology with HUMMBL Base120 mappings to access validated mental models for problem-solving and decision-making.

Instructions

Retrieve the canonical Self-Dialectical AI Systems methodology with HUMMBL Base120 mappings.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Implementation Reference

  • The asynchronous handler function for the 'get_methodology' MCP tool. It retrieves the Self-Dialectical methodology using getSelfDialecticalMethodology(), handles errors, and returns the data as both text (JSON) and structured content.
    async () => { const result = getSelfDialecticalMethodology(); if (!isOk(result)) { return { content: [ { type: "text" as const, text: `Unable to retrieve Self-Dialectical methodology: ${result.error.type}`, }, ], isError: true as const, }; } const methodology = result.value; return { content: [ { type: "text" as const, text: JSON.stringify(methodology, null, 2), }, ], structuredContent: methodology as unknown as { [key: string]: unknown }, }; } );
  • Zod schemas defining the input (empty) and output structure for the 'get_methodology' tool, matching the DialecticalMethodology type.
    { title: "Get Self-Dialectical AI Methodology", description: "Retrieve the canonical Self-Dialectical AI Systems methodology with HUMMBL Base120 mappings.", inputSchema: z.object({}), outputSchema: z.object({ id: z.string(), title: z.string(), version: z.string(), summary: z.string(), documentUrl: z.string().optional(), totalPages: z.number().optional(), modelsReferenced: z.array(z.string()), stages: z.array( z.object({ stage: z.enum(["thesis", "antithesis", "synthesis", "convergence", "meta_reflection"]), title: z.string(), description: z.string(), modelCodes: z.array(z.string()), }) ), metaModels: z.array(z.string()), }), },
  • Direct registration of the 'get_methodology' tool on the MCP server within registerMethodologyTools, including name, schema, and handler.
    server.registerTool( "get_methodology", { title: "Get Self-Dialectical AI Methodology", description: "Retrieve the canonical Self-Dialectical AI Systems methodology with HUMMBL Base120 mappings.", inputSchema: z.object({}), outputSchema: z.object({ id: z.string(), title: z.string(), version: z.string(), summary: z.string(), documentUrl: z.string().optional(), totalPages: z.number().optional(), modelsReferenced: z.array(z.string()), stages: z.array( z.object({ stage: z.enum(["thesis", "antithesis", "synthesis", "convergence", "meta_reflection"]), title: z.string(), description: z.string(), modelCodes: z.array(z.string()), }) ), metaModels: z.array(z.string()), }), }, async () => { const result = getSelfDialecticalMethodology(); if (!isOk(result)) { return { content: [ { type: "text" as const, text: `Unable to retrieve Self-Dialectical methodology: ${result.error.type}`, }, ], isError: true as const, }; } const methodology = result.value; return { content: [ { type: "text" as const, text: JSON.stringify(methodology, null, 2), }, ], structuredContent: methodology as unknown as { [key: string]: unknown }, }; } );
  • src/server.ts:23-23 (registration)
    Top-level call to registerMethodologyTools in the main server creation, which includes registration of 'get_methodology'.
    registerMethodologyTools(server);
  • Core helper function called by the tool handler to retrieve the static Self-Dialectical methodology data.
    export function getSelfDialecticalMethodology(): Result<DialecticalMethodology, DomainError> { return ok(SELF_DIALECTICAL_METHODOLOGY); }
  • Static constant defining the full methodology data returned by the tool, including stages and HUMMBL model references.
    export const SELF_DIALECTICAL_METHODOLOGY: DialecticalMethodology = { id: METHODOLOGY_ID, title: "Self-Dialectical AI Systems: A HUMMBL-Informed Methodology for Ethical Self-Correction", version: METHODOLOGY_VERSION, summary: "Enables AI systems to perform ethical self-correction through structured dialectical reasoning integrated with HUMMBL Base120 mental models.", documentUrl: undefined, totalPages: 60, modelsReferenced: [ "P1", "P2", "DE3", "IN11", "IN2", "IN10", "CO4", "CO1", "CO20", "RE11", "RE15", "RE1", "RE7", "RE3", "RE16", "SY19", "SY1", ], stages: [ { stage: "thesis", title: "Stage 1: Thesis Generation", description: "Generate and structure the initial ethical position.", modelCodes: ["P1", "P2", "DE3"], }, { stage: "antithesis", title: "Stage 2: Antithesis Development", description: "Critique thesis via adversarial reasoning, premortem analysis, and red teaming.", modelCodes: ["IN11", "IN2", "IN10"], }, { stage: "synthesis", title: "Stage 3: Synthesis Formation", description: "Integrate thesis and antithesis into a higher-order resolution across perspectives.", modelCodes: ["CO4", "CO1", "CO20"], }, { stage: "convergence", title: "Stage 4: Convergence Testing", description: "Test and refine synthesis via calibration loops, convergence/divergence, and recursive improvement.", modelCodes: ["RE11", "RE15", "RE1"], }, { stage: "meta_reflection", title: "Stage 5: Meta-Reflection", description: "Reflect on and improve the reasoning process itself via self-referential logic and meta-learning.", modelCodes: ["RE7", "RE3", "RE16"], }, ], metaModels: ["SY19", "SY1"], };

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/hummbl-dev/mcp-server'

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