Token导航 LogoToken导航TokenDH.com
Context Rot Detection logo
AI代理stdio官方级别未说明来源级核验

Context Rot Detection

MCP Server

context-rot-detection

一款为AI代理提供实时认知健康监测的服务,通过分析令牌利用率、检索准确性和会话疲劳等指标,帮助AI代理识别和缓解上下文退化问题。

工具数

3

提示词数

0

GitHub Stars

9

资源数

0
AI代理机器学习TypeScriptClaudeClaude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

milos-product-maker

提供方

milos-product-maker

最后核验

2026/5/17 20:19

运行时

Node.js

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

npx context-rot-detection

详细介绍

上下文腐烂检测

MCP服务,使AI代理对其认知状态有自我意识。

每个长时间运行的AI代理都会遭受 语境腐化 --随着上下文窗口的填满,可测量的性能下降。研究来自 色度, 斯坦福 (“lost-in-the-midle”),以及 瑞迪斯 这证实了这是生产代理系统中排名第一的实际故障模式。

经历上下文腐烂的代理不会 *知道* 这是有辱人格的——它只是开始做出更糟糕的决定。此工具为代理提供 实时了解自己的认知健康状况.

特性

  • 健康评分(0-100) 基于令牌利用率、检索准确性和会话疲劳
  • 特定型号的退化曲线 适用于15+个精选型号(克劳德、GPT、双子座、o系列)
  • 自动解析任何HuggingFace模型 --传递一个repo ID,如下所示 meta-llama/Llama-3.1-70B 并且自动检测上下文窗口,结果缓存在SQLite中
  • 中间损失风险评分 基于斯坦福大学的研究
  • 工具调用负担会话疲劳 分析
  • 可采取行动的恢复建议 --紧凑上下文、卸载到内存、检查点、分解为子任务
  • 每个代理的健康历史 跟踪(SQLite)
  • 全服务利用率统计

快速开始

npx(零安装)

npx context-rot-detection

npm(全局安装)

npm install -g context-rot-detection
context-rot-detection

MCP客户端配置

克劳德代码

增添 .mcp.json 在项目根目录中:

{
  "mcpServers": {
    "context-rot-detection": {
      "command": "npx",
      "args": ["-y", "context-rot-detection"],
      "env": {
        "HEALTH_HISTORY_DB": "./health.db"
      }
    }
  }
}

克劳德桌面

增添 claude_desktop_config.json:

{
  "mcpServers": {
    "context-rot-detection": {
      "command": "npx",
      "args": ["-y", "context-rot-detection"],
      "env": {
        "HEALTH_HISTORY_DB": "/path/to/health.db"
      }
    }
  }
}

码头工人

{
  "mcpServers": {
    "context-rot-detection": {
      "command": "docker",
      "args": [
        "run", "-i", "--rm",
        "-v", "context-rot-data:/data",
        "ghcr.io/milos-product-maker/context-rot-detection:latest"
      ]
    }
  }
}

配置

环境变量描述默认值
HEALTH_HISTORY_DB健康历史SQLite数据库的路径。使用 :memory: 用于临时存储。:memory:
LOG_FILE附加结构化JSON日志行的路径。省略禁用文件日志记录。*(无)*

工具

check_my_health

分析当前上下文窗口的运行状况。在长时间会议期间或关键决策之前定期调用此功能。

参数:

参数类型必填说明
token_countinteger上下文窗口中当前估计的令牌计数
modelstringNoLLM模型标识符——一个策划的名称(例如。, claude-opus-4, gpt-4o)HuggingFace回购ID(例如。, meta-llama/Llama-3.1-70B),或任何字符串(恢复到保守默认值)
session_duration_minutesinteger此会话已运行多长时间
tool_calls_countinteger此会话中进行的工具调用数
context_summarystring当前任务和最近行动的简要总结
agent_idstring历史跟踪的唯一代理标识符

示例响应:

{
  "health_score": 62,
  "status": "warning",
  "token_utilization": {
    "current": 155000,
    "max_effective": 170000,
    "percentage": 91.2,
    "danger_zone_starts_at": 170000
  },
  "quality_estimate": {
    "retrieval_accuracy": "degrading",
    "middle_content_risk": "high",
    "estimated_hallucination_risk": "moderate"
  },
  "session_fatigue": {
    "tool_call_burden": "moderate",
    "session_length_risk": "low",
    "recommendation": "Consider breaking into sub-tasks if complexity increases."
  },
  "recommendations": [
    {
      "priority": "high",
      "action": "compact_context",
      "reason": "You are approaching the effective quality threshold. Summarize older context and remove completed task details.",
      "estimated_quality_gain": 15
    },
    {
      "priority": "high",
      "action": "offload_to_memory",
      "reason": "High risk of lost-in-the-middle effect. Store critical information to external memory before it is effectively lost.",
      "estimated_quality_gain": 8
    }
  ]
}

get_health_history

检索特定代理的健康检查历史记录。

参数:

参数类型必填说明
agent_idstring唯一代理标识符
limitinteger要返回的最大记录数(默认值:20,最大值:100)

get_service_stats

获取服务范围内的利用率统计数据。无需参数。

返回总呼叫数、唯一代理、平均健康评分、模型分布、状态分布和最近活动(最近一小时/最近24小时)。

支持的型号

模型最大代币危险区中等损失风险
claude-opus-4-5200K175K
claude-opus-4200K170K
claude-sonnet-4200K165K
claude-3.7-sonnet200K160K低-中
claude-3.5-sonnet200K152K中等
claude-haiku-3.5200K130K中等
gpt-4.11M500K中等
gpt-4.1-mini1M450K中等
gpt-4o128K105K中等
gpt-4o-mini128K95K中等-高等
o3200K160K低-中
o4-mini200K150K中等
gemini-2.5-pro1M600K中等
gemini-2.5-flash1M520K中高
gemini-2.0-flash1M500K

HuggingFace自动分辨率

包含以下内容的任何模型字符串 / 被视为HuggingFace仓库ID。服务器获取 config.json 从repo中提取上下文窗口大小(max_position_embeddings, n_positions,或 max_seq_len),并生成保守的退化曲线:

  • 65% 最大令牌数→ 退化开始
  • 80% 最大令牌数→ 危险区

结果缓存在SQLite中——后续查找是即时的。

model: "meta-llama/Llama-3.1-70B"       → 131K context, danger at 105K
model: "mistralai/Mistral-7B-v0.1"      → 32K context, danger at 26K
model: "mosaicml/mpt-7b"                → 65K context, danger at 52K

如果获取失败(网络错误、门控模型、缺少配置),服务器将自动恢复到保守的默认值。

后备方案

任何未识别的模型字符串 / 回落到保守的默认值(最大128K,100K危险区)。

运作原理

健康评分是四个信号的加权组合:

信号权重来源
代币使用质量40%模型特定的S形退化曲线
检索精度25%基本准确度减去中间损失惩罚
工具调用负担20%10多次工具调用后质量损失加剧
会话长度15%基于时间的疲劳启发式

降解曲线来自实证研究:

发展

git clone https://github.com/milos-product-maker/context-rot-detection.git
cd context-rot-detection
npm install
npm run dev        # Run with tsx (hot reload)
npm test           # Run unit tests
npm run build      # Compile TypeScript

MCP检验员测试

npx @modelcontextprotocol/inspector node dist/index.js

许可证

麻省理工学院

目录标签

目录标签

AI代理机器学习TypeScriptClaude本地部署性能监测上下文管理健康评分

支持客户端

Claude

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

运行时(runtime,运行环境)

Node.js

来源包(packageName,安装包名)

context-rot-detection

工具数量(toolCount,工具数)

3

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP