Skip to main content
Glama

结构化思维 MCP 服务器

基于Arben Ademi的顺序思维Python 服务器的 TypeScript 模型上下文协议 (MCP) 服务器。该项目旨在帮助法学硕士 (LLM) 以编程方式构建思维导图,探索思维空间,并强化“元认知”自我反思。

设置

在 Claude Desktop、Cursor 或其他 MCP 客户端中设置工具配置如下:

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

Related MCP server: Basic MCP Server

概述

思想质量分数

当法学硕士 (LLM) 捕捉到一个想法时,它会为这个想法分配一个介于 0 到 1 之间的质量分数。该分数与想法的阶段结合使用,为法学硕士 (LLM) 提供“元认知”反馈,以指导其思维过程。

思维阶段

每个想法都标记一个阶段(例如,问题定义、分析、构思),以帮助管理 LLM 思维过程的生命周期。在当前的实现中,这些阶段发挥着非常重要的作用。实际上,如果 LLM 在某个阶段花费的时间过长,或者当前阶段的想法质量低下,服务器将向 LLM 提供反馈,以“引导”其思维转向其他阶段,或者至少转向当前阶段非典型的思维策略。(例如,在演绎模式下,将鼓励 LLM 思考更具创造性的想法。)

思维分支

LLM 课程可以基于特定思路衍生出多个“分支”,以便并行探索不同的推理思路。每个分支都会单独追踪,方便你管理多个解决方案或想法共存的场景。

内存管理

服务器维护着一个包含法学硕士最近十个想法的“短期”记忆缓冲区,以及一个可以根据标签检索的想法的“长期”记忆,以总结法学硕士对给定主题的思考过程的整个历史。

限制

朴素元认知监控

目前,质量指标和元认知反馈是通过应用于单个自我报告质量分数的基于阶段的乘数机械地得出的。

作为未来工作的一部分,我计划添加更复杂的元认知反馈,包括思想内容的语义分析、思想验证过程以及对推理错误的更智能的监控。

缺乏用户界面

目前,服务器将所有想法存储在内存中,不会将其持久化到文件或数据库中。此外,服务器也没有提供用于查看想法空间或可视化思维导图的用户界面。

作为未来工作的一部分,我计划加入一个简单的可视化客户端,以便用户可以观察思维图的演变。

MCP 工具

该服务器公开以下 MCP 工具:

捕获思想

在思想历史中创建一个思想,并包含有关该思想的类型、质量、内容以及与其他思想的关系的元数据。

参数:

  • thought :当前思考的内容

  • thought_number :序列中的当前位置

  • total_thoughts :预期的想法总数

  • next_thought_needed :是否应该有另一个想法

  • stage :当前思考阶段(例如,“问题定义”,“分析”)

  • is_revision (可选):这是否修改了之前的想法

  • revises_thought (可选):正在修改的想法的数量

  • branch_from_thought (可选):新思路分支的起点

  • branch_id (可选):当前分支的标识符

  • needs_more_thoughts (可选):是否需要更多想法

  • score (可选):质量分数(0.0 到 1.0)

  • tags (可选):思想的类别或标签

修改想法

修改思想历史中的一个思想,并提供有关该思想的类型、质量、内容以及与其他思想的关系的元数据。

参数:

  • thought_id :需要修改的想法的 ID

  • 来自capture_thought的参数

检索相关想法

从长期存储中检索与指定想法共享标签的想法。

参数:

  • thought_id :用于检索相关想法的想法的 ID

获取思考摘要

对整个思考过程进行全面的总结。

清晰的思考历史

清除所有记录的想法并重置服务器状态。

执照

麻省理工学院

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.
    -