返回市场
非常规思考

非常规思考

作者:stagsz25 星标更新:2025-11-24

项目介绍

非常规思维服务器(v0.2.0)

一款高效的MCP服务器,专为大胆、非常规且突破边界的解决问题而设计。

这是一个基于TypeScript的MCP服务器,实现了优化的非传统思维方式系统,该系统基于Anthropic最新的MCP架构模式,旨在节省上下文空间。它生成并跟踪创造性的问题解决方案,同时保持高效性。

架构:节约上下文的设计

此服务器展示了Anthropic推荐的减少上下文开销98.7%的模式:

关键的上下文节约特性

  1. 按需加载数据的资源API

    • 思维内容存储为资源(thought://id
    • Claude仅在明确需要时加载完整内容
    • 默认返回元数据,节省令牌
  2. 服务端过滤

    • search_thoughts本地过滤数据,而不是将未过滤的数据集传递给Claude
    • 只返回匹配的结果,而非整个数据集
    • 通过源头过滤减少上下文消耗
  3. 优先返回元数据

    • 工具仅返回必要的元数据和资源URI
    • 完整的思维内容可通过资源API访问
    • Claude根据需求决定是否获取完整内容
  4. 持久化的文件存储

    • 数据保存在.thoughts/目录中
    • 不会在会话之间累积内存膨胀
    • 方便本地检查和调试思维

特性

工具(所有工具都上下文高效)

  • generate_unreasonable_thought - 生成新的非常规思维

    • 返回元数据+资源URI,而非完整内容
    • 可以建立在或反抗之前的思维上
    • 完整的思维内容可通过资源API访问
  • branch_thought - 创建新的思维分支

    • 支持的方向:更极端、相反、相关
    • 仅返回分支元数据以提高效率
  • search_thoughts - 新功能:高效的元数据搜索

    • 按branchId、isRebellion、challengesAssumption筛选
    • 仅返回匹配的ID和元数据
    • 包括限制参数以控制结果大小
    • 展示服务端过滤模式

资源(按需加载内容)

  • 每个思维作为资源可用:thought://[thoughtId]
  • 元数据包括:isRebellion、challengesAssumption、时间戳、分支信息
  • 仅当Claude明确请求时才加载完整的思维内容
  • 当存在大量思维时,显著减少令牌使用

如何实现上下文效率

1. 进行性披露

Claude不需要一开始就获取100个思维的完整内容。相反:

  • search_thoughts仅返回ID和元数据(每个思维约100字节)
  • Claude通过资源API选择性地获取相关的完整内容
  • 类似于文件系统的工作方式:列出文件,然后打开特定文件

2. 服务端过滤

传统的做法(❌低效):

全部1000个思维 → Claude → Claude过滤 → 使用其中10个
(所有1000个都消耗令牌)

此服务器(✅高效):

search_thoughts过滤参数 → 服务端本地过滤 → 返回仅10个结果
(Claude从未看到未使用的990个)

3. 先返回元数据的模式

工具响应包含:

  • 思维ID
  • 访问完整内容的资源URI
  • 简短的元数据(每个约2-3KB)
  • 不是完整的500字符思维(每个节省约5KB)

示例节省:对于100个思维:

  • 旧方法:500KB上下文使用
  • 新方法:约30KB + 只获取所需的内容

开发

安装依赖项:

npm install

构建服务器:

npm run build

开发时自动重建:

npm run watch

安装

要在Claude Desktop中使用,请添加服务器配置:

在MacOS上:~/Library/Application Support/Claude/claude_desktop_config.json 在Windows上:%APPDATA%/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "unconventional-thinking": {
      "command": "/path/to/unconventional-thinking/build/index.js"
    }
  }
}

使用示例

Claude: 生成一个关于扩展问题的非常规思维
→ 工具:generate_unreasonable_thought("扩展问题")
← 返回:thoughtId, resourceUri, 元数据

Claude: 所有反叛的思维是什么?
→ 工具:search_thoughts(isRebellion=true, limit=5)
← 返回:5个匹配的思维ID及其URI(最小上下文)

Claude: 我需要查看thought_xyz的完整内容
→ 资源:读取thought://thought_xyz
← 返回:完整的思维内容(仅在需要时加载)

调试

由于MCP服务器通过标准I/O通信,调试可能具有挑战性。我们建议使用MCP Inspector,这是一个包脚本:

npm run inspector

Inspector将提供一个URL,以便在浏览器中访问调试工具。

参考资料

此服务器实现了以下模式: