Skip to main content
Glama

Servidor MCP de pensamiento estructurado

Un servidor de Protocolo de Contexto de Modelo (MCP) de TypeScript basado en el servidor Python de Pensamiento Secuencial de Arben Ademi . El objetivo de este proyecto es permitir a los estudiantes de maestría en derecho (LLM) construir mapas mentales programáticamente para explorar un espacio de ideas, con autorreflexión metacognitiva forzada.

Configuración

Establezca la configuración de la herramienta en Claude Desktop, Cursor u otro cliente MCP de la siguiente manera:

{
  "structured-thinking": {
    "command": "npx",
    "args": ["-y", "structured-thinking"]
  }
}

Related MCP server: Basic MCP Server

Descripción general

Puntuaciones de calidad del pensamiento

Cuando un LLM captura un pensamiento, le asigna una puntuación de calidad entre 0 y 1. Esta puntuación se utiliza, en combinación con la etapa del pensamiento, para proporcionar retroalimentación "metacognitiva" al LLM sobre cómo "dirigir" su proceso de pensamiento.

Etapas del pensamiento

Cada pensamiento se etiqueta con una etapa (p. ej., Definición del Problema, Análisis, Ideación) para ayudar a gestionar el ciclo de vida del proceso de pensamiento del LLM. En la implementación actual, estas etapas desempeñan un papel fundamental. De hecho, si el LLM dedica demasiado tiempo a una etapa determinada o tiene pensamientos de baja calidad en la etapa actual, el servidor le proporcionará retroalimentación para orientar su pensamiento hacia otras etapas, o al menos hacia estrategias de pensamiento atípicas de la etapa actual. (P. ej., en modo deductivo, se animará al LLM a considerar pensamientos más creativos).

Ramificación del pensamiento

El Máster en Derecho (LLM) puede generar ramificaciones a partir de una idea específica para explorar diferentes líneas de razonamiento en paralelo. Cada rama se rastrea por separado, lo que permite gestionar escenarios donde deben coexistir múltiples soluciones o ideas.

Gestión de la memoria

El servidor mantiene un búfer de memoria de "corto plazo" de los diez pensamientos más recientes del LLM y una memoria de "largo plazo" de pensamientos que se pueden recuperar en función de sus etiquetas para resumir todo el historial del proceso de pensamiento del LLM sobre un tema determinado.

Limitaciones

Monitoreo metacognitivo ingenuo

Actualmente, las métricas de calidad y la retroalimentación metacognitiva se derivan mecánicamente a partir de multiplicadores ingenuos basados en etapas aplicados a una única puntuación de calidad autoinformada.

Como parte del trabajo futuro, planeo agregar retroalimentación metacognitiva más sofisticada, incluido el análisis semántico del contenido del pensamiento, procesos de verificación del pensamiento y un monitoreo más inteligente de errores de razonamiento.

Falta de interfaz de usuario

Actualmente, el servidor almacena todos los pensamientos en la memoria y no los conserva en un archivo ni en una base de datos. Tampoco existe una interfaz de usuario para revisar el espacio de pensamiento ni visualizar el mapa mental.

Como parte del trabajo futuro, planeo incorporar un cliente de visualización simple para que el usuario pueda ver cómo evoluciona el gráfico de pensamiento.

Herramientas MCP

El servidor expone las siguientes herramientas MCP:

capturar_pensamiento

Cree un pensamiento en el historial de pensamientos, con metadatos sobre el tipo de pensamiento, la calidad, el contenido y las relaciones con otros pensamientos.

Parámetros:

  • thought : El contenido del pensamiento actual

  • thought_number : Posición actual en la secuencia

  • total_thoughts : Número total esperado de pensamientos

  • next_thought_needed : Si debería seguir otro pensamiento

  • stage : Etapa actual del pensamiento (por ejemplo, "Definición del problema", "Análisis")

  • is_revision (opcional): si esto revisa un pensamiento previo

  • revises_thought (opcional): Número de pensamiento que se está revisando

  • branch_from_thought (opcional): Punto de partida para una nueva rama de pensamiento

  • branch_id (opcional): identificador de la rama actual

  • needs_more_thoughts (opcional): si se necesitan pensamientos adicionales

  • score (opcional): Puntuación de calidad (de 0,0 a 1,0)

  • tags (opcional): Categorías o etiquetas para el pensamiento

revisar_pensamiento

Revisar un pensamiento en el historial de pensamientos, con metadatos sobre el tipo de pensamiento, la calidad, el contenido y las relaciones con otros pensamientos.

Parámetros:

  • thought_id : El ID del pensamiento a revisar

  • Parámetros de capture_thought

recuperar pensamientos relevantes

Recupere pensamientos del almacenamiento a largo plazo que comparten etiquetas con el pensamiento especificado.

Parámetros:

  • thought_id : El ID del pensamiento para recuperar pensamientos relevantes

resumen_de_obtener_reflexión

Generar un resumen completo de todo el proceso de pensamiento.

historia del pensamiento claro

Borre todos los pensamientos registrados y restablezca el estado del servidor.

Licencia

Instituto Tecnológico de Massachusetts (MIT)

Available Tools

5 tools
capture_thoughtB

Stores a new thought in memory and in the thought history and runs a pipeline to classify the thought, return metacognitive feedback, and retrieve relevant thoughts.

ParametersJSON Schema
NameRequiredDescriptionDefault
thoughtYesThe content of the current thought
thought_numberYesCurrent position in the sequence
total_thoughtsYesExpected total number of thoughts
next_thought_neededYesWhether another thought should follow
stageYesCurrent thinking stage (e.g., 'Problem Definition', 'Analysis')
is_revisionNoWhether this revises a previous thought
revises_thoughtNoNumber of thought being revised
branch_from_thoughtNoStarting point for a new thought branch
branch_idNoIdentifier for the current branch
needs_more_thoughtsNoWhether additional thoughts are needed
scoreNoQuality score (0.0 to 1.0)
tagsNoCategories or labels for the thought

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions storing thoughts and running a pipeline but fails to detail critical aspects like whether this is a mutation (likely yes), permission requirements, error handling, or what the pipeline outputs. This leaves significant gaps for a tool with 12 parameters and no output schema.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that front-loads the core action ('stores a new thought') and adds pipeline details. It avoids redundancy but could be slightly more structured for clarity, such as separating storage from pipeline steps.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (12 parameters, no output schema, and no annotations), the description is incomplete. It lacks details on behavioral traits, output format, error conditions, and how it integrates with sibling tools, making it inadequate for safe and effective use by an AI agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all 12 parameters thoroughly. The description adds no additional meaning beyond the schema, such as explaining parameter interactions or usage examples. Baseline 3 is appropriate when schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose with specific verbs ('stores', 'runs a pipeline') and resources ('thought in memory', 'thought history'), and distinguishes it from siblings by mentioning classification, metacognitive feedback, and retrieval of relevant thoughts, which are separate tools like 'retrieve_relevant_thoughts'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives like 'revise_thought' or 'clear_thinking_history', nor does it mention prerequisites or exclusions. It implies usage for storing thoughts but lacks explicit context for selection among siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

clear_thinking_historyB

Clear all recorded thoughts and reset the server state.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It states the tool 'clear all recorded thoughts and reset the server state,' implying a destructive mutation, but does not disclose critical behavioral traits like whether this action is irreversible, requires specific permissions, or has side effects on other data. The description is minimal and lacks depth for a tool with such significant impact.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that front-loads the core action ('Clear all recorded thoughts') and adds necessary context ('reset the server state'). There is no wasted verbiage, and every word contributes to understanding the tool's purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (a destructive reset operation) and the lack of annotations and output schema, the description is incomplete. It does not explain what 'reset the server state' entails, what data is affected, or what the expected outcome or confirmation looks like. For a high-impact tool with no structured support, more detail is warranted.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 0 parameters with 100% coverage, so no parameter documentation is needed. The description appropriately does not discuss parameters, focusing instead on the tool's action. This meets the baseline for tools with no parameters, as it avoids unnecessary details.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the specific action ('Clear all recorded thoughts') and the resource affected ('reset the server state'), distinguishing it from sibling tools like capture_thought or get_thinking_summary. It uses precise verbs and identifies the scope of the operation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives like revise_thought or retrieve_relevant_thoughts. It lacks context about prerequisites, such as whether this should be used for cleanup or debugging, and does not mention any exclusions or warnings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_thinking_summaryB

Generate a comprehensive summary of the entire thinking process.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It states the tool generates a summary but doesn't explain what 'comprehensive' entails, whether it's read-only or has side effects, how it accesses the thinking process, or what format the output takes. This leaves significant gaps for a tool that presumably operates on stored data.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that front-loads the core action ('generate a comprehensive summary') without any wasted words. It's appropriately sized for a simple tool with no parameters, making it easy for an agent to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's apparent complexity (summarizing an 'entire thinking process'), lack of annotations, and absence of an output schema, the description is insufficient. It doesn't clarify what constitutes the thinking process, how comprehensive the summary is, or what the output looks like, leaving the agent with critical unknowns for proper use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 0 parameters with 100% coverage, so the schema fully documents the absence of inputs. The description doesn't need to add parameter details, and it correctly implies no parameters are required by not mentioning any. A baseline of 4 is appropriate for zero-parameter tools when the description aligns with the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('generate a comprehensive summary') and the resource ('entire thinking process'), making the purpose immediately understandable. However, it doesn't differentiate this tool from its siblings like 'retrieve_relevant_thoughts' or 'capture_thought', which prevents a perfect score.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives like 'retrieve_relevant_thoughts' or 'clear_thinking_history'. There's no mention of prerequisites, timing, or contextual cues for invocation, leaving the agent to guess based on tool names alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

retrieve_relevant_thoughtsC

Finds thoughts from long-term storage that share tags with the specified thought.

ParametersJSON Schema
NameRequiredDescriptionDefault
thought_idYesThe ID of the thought to find related thoughts for

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden for behavioral disclosure. It states the tool 'finds thoughts' but doesn't specify whether this is a read-only operation, what permissions are needed, how results are returned (e.g., list format, pagination), or any rate limits. For a retrieval tool with zero annotation coverage, this is a significant gap in transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that front-loads the core purpose ('Finds thoughts from long-term storage') and adds necessary detail ('that share tags with the specified thought'). There is zero wasted text, making it highly concise and well-structured for quick understanding.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (retrieval based on tag matching), lack of annotations, and no output schema, the description is incomplete. It doesn't explain what 'relevant' means beyond tag sharing, how results are ordered or limited, or what the return format is. For a tool with no structured behavioral or output data, the description should provide more context to be fully helpful.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, with the single parameter 'thought_id' clearly documented as 'The ID of the thought to find related thoughts for.' The description adds no additional parameter semantics beyond what the schema provides, such as format examples or constraints. With high schema coverage, the baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'finds' and the resource 'thoughts from long-term storage' with the specific mechanism 'that share tags with the specified thought.' It distinguishes from siblings like 'capture_thought' (create) and 'clear_thinking_history' (delete) by focusing on retrieval based on tag similarity. However, it doesn't explicitly differentiate from 'get_thinking_summary' (which might summarize rather than retrieve) or 'revise_thought' (modify), keeping it at 4 rather than 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives like 'get_thinking_summary' or 'revise_thought.' It implies usage for finding related thoughts based on tags, but lacks explicit when/when-not instructions or prerequisites. This leaves the agent with minimal context for tool selection among siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

revise_thoughtC

Revises a thought in memory and in the thought history.

ParametersJSON Schema
NameRequiredDescriptionDefault
thoughtNoThe content of the current thought
thought_numberNoCurrent position in the sequence
total_thoughtsNoExpected total number of thoughts
next_thought_neededNoWhether another thought should follow
stageNoCurrent thinking stage (e.g., 'Problem Definition', 'Analysis')
is_revisionNoWhether this revises a previous thought
revises_thoughtNoNumber of thought being revised
branch_from_thoughtNoStarting point for a new thought branch
branch_idNoIdentifier for the current branch
needs_more_thoughtsNoWhether additional thoughts are needed
scoreNoQuality score (0.0 to 1.0)
tagsNoCategories or labels for the thought
thought_idYesThe ID of the thought to revise

TDQS

C2.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool revises a thought in memory and history, implying a mutation, but doesn't clarify permissions, side effects, or what 'revise' entails (e.g., overwriting, updating). For a mutation tool with zero annotation coverage, this leaves significant gaps in understanding its behavior and impact.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that directly states the tool's action. It's front-loaded and wastes no words, making it easy to parse. However, it could be more structured by including key details like the required 'thought_id' parameter, but overall, it's appropriately concise for its purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity of 13 parameters, no annotations, and no output schema, the description is inadequate. It doesn't explain the revision process, return values, or how parameters like 'thought_id' and 'revises_thought' interact. For a mutation tool with rich input schema but no behavioral context, this leaves the agent under-informed about critical aspects of tool usage.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema description coverage is 100%, with all 13 parameters well-documented in the input schema. The description doesn't add any meaning beyond the schema, such as explaining parameter interactions or usage examples. Given the high coverage, a baseline score of 3 is appropriate, as the schema does the heavy lifting without extra value from the description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states the tool 'revises a thought in memory and in the thought history,' which provides a clear verb ('revises') and resource ('a thought'). However, it doesn't differentiate from sibling tools like 'capture_thought' or 'clear_thinking_history' beyond the basic action. The purpose is understandable but lacks specificity about what revision entails compared to other thought-related operations.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description offers no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites, such as needing an existing thought to revise, or compare it to siblings like 'capture_thought' for new thoughts. Without any context on usage scenarios or exclusions, the agent must infer when this tool is appropriate.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 5 tool updates
    • First observedcapture_thought
    • First observedclear_thinking_history
    • First observedget_thinking_summary
    • First observedretrieve_relevant_thoughts
    • First observedrevise_thought

TDQS

A3.5/5.0

Scored across 5 tools

Disambiguation5/5

Each tool has a clearly distinct purpose with no ambiguity: capture_thought creates new thoughts, clear_thinking_history resets state, get_thinking_summary generates summaries, retrieve_relevant_thoughts finds related thoughts, and revise_thought updates existing thoughts. The actions (capture, clear, get, retrieve, revise) and targets (thought, history, summary) are well-defined and non-overlapping.

Naming Consistency5/5

All tools follow a consistent verb_noun pattern with snake_case: capture_thought, clear_thinking_history, get_thinking_summary, retrieve_relevant_thoughts, and revise_thought. The verbs are distinct and appropriate for their actions, and the naming structure is predictable throughout the set.

Tool Count5/5

With 5 tools, this server is well-scoped for its structured thinking domain. Each tool earns its place by covering core operations: creating, revising, retrieving, summarizing, and clearing thoughts. The count is neither too thin nor bloated, fitting typical server ranges (3-15 tools) perfectly.

Completeness5/5

The tool surface provides complete CRUD/lifecycle coverage for the thought management domain: capture_thought (create), revise_thought (update), retrieve_relevant_thoughts (read), get_thinking_summary (read/analyze), and clear_thinking_history (delete/reset). There are no obvious gaps, and agents can perform full workflows without dead ends.

Maintenance

ActivityInactive
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • -
    license
    Not graded
    quality
    D
    maintenance
    A TypeScript implementation of a Model Context Protocol server and client that enables interaction with language models (specifically Mistral running on Ollama).
    -
  • F
    license
    B
    quality
    D
    maintenance
    A basic TypeScript implementation of the Model Context Protocol (MCP) server designed as a starting point for MCP development. Provides a minimal foundation for building custom MCP servers with stdio configuration for local integration with VS Code and GitHub Copilot.
    1
    -
  • A
    license
    Not graded
    quality
    D
    maintenance
    A Model Context Protocol (MCP) server that provides a reflect tool, enabling LLMs to engage in self-reflection and introspection through recursive questioning and MCP sampling.
    56 npm
    15
    MIT
  • F
    license
    Not graded
    quality
    D
    maintenance
    A robust, lightweight Model Context Protocol (MCP) server designed to empower your AI Agents with context-awareness, safe execution sandboxes, and dedicated thought logs.
    -