返回 MCP 目录
public公开dns本地运行

context-optimizer-mcp-server

一个MCP服务器,为AI编程助手提供上下文优化工具,通过精准提取信息而非处理大量终端输出和文件来节省上下文空间,提升助手效率。

article

README

🚀 上下文优化器MCP服务器

这是一个模型上下文协议(MCP)服务器,为包括GitHub Copilot、Cursor AI、Claude Desktop等在内的AI编码助手提供上下文优化工具。借助该服务器,这些助手能够提取目标信息,避免处理大量终端输出和文件而浪费上下文资源。

此MCP服务器是 VS Code Copilot上下文优化器扩展 的升级版,具备跨MCP支持应用的兼容性。

🚀 快速开始

1. 全局安装

npm install -g context-optimizer-mcp-server

2. 设置环境变量

(具体操作系统的设置说明请参考 docs/guides/usage.md

export CONTEXT_OPT_LLM_PROVIDER="gemini"
export CONTEXT_OPT_GEMINI_KEY="your-gemini-api-key"
export CONTEXT_OPT_EXA_KEY="your-exa-api-key"
export CONTEXT_OPT_ALLOWED_PATHS="/path/to/your/projects"

3. 添加到MCP客户端配置

例如,在 claude_desktop_config.json(Claude Desktop) 中的 "mcpServers"mcp.json(VS Code) 中的 "servers" 里添加:

"context-optimizer": {
  "command": "context-optimizer-mcp"
}

如需完整的设置说明,包括特定操作系统的环境变量配置和AI助手设置,请参考 docs/guides/usage.md

✨ 主要特性

  • 🔍 文件分析工具 (askAboutFile):无需加载整个文件内容,即可从中提取特定信息。
  • 🖥️ 终端执行工具 (runAndExtract):执行命令并通过大语言模型(LLM)分析提取相关信息。
  • ❓ 后续问题工具 (askFollowUp):继续关于之前终端执行的对话。
  • 🔬 研究工具 (researchTopic, deepResearch):通过Exa.ai的API进行网络研究。
  • 🔒 安全控制:包括路径验证、命令过滤和会话管理。
  • 🔧 多LLM支持:支持Google Gemini、Claude(Anthropic)和OpenAI。
  • ⚙️ 环境变量配置:通过系统环境变量管理API密钥。
  • 🏗️ 简单配置:仅需设置环境变量,无需管理配置文件。
  • 🧪 全面测试:包含单元测试、集成测试和安全验证。

📦 安装指南

全局安装

npm install -g context-optimizer-mcp-server

设置环境变量

请参考 docs/guides/usage.md 进行特定操作系统的环境变量设置。

添加到MCP客户端配置

在相应的配置文件中添加服务器配置。

💻 使用示例

基础用法

# 安装服务器
npm install -g context-optimizer-mcp-server

# 设置环境变量
export CONTEXT_OPT_LLM_PROVIDER="gemini"
export CONTEXT_OPT_GEMINI_KEY="your-gemini-api-key"
export CONTEXT_OPT_EXA_KEY="your-exa-api-key"
export CONTEXT_OPT_ALLOWED_PATHS="/path/to/your/projects"

# 添加到MCP客户端配置
# 在claude_desktop_config.json或mcp.json中添加如下配置
"context-optimizer": {
  "command": "context-optimizer-mcp"
}

高级用法

# 运行所有测试(无API密钥时跳过LLM集成测试)
npm test

# 使用API密钥运行完整集成测试
# 先设置环境变量
export CONTEXT_OPT_LLM_PROVIDER="gemini"
export CONTEXT_OPT_GEMINI_KEY="your-gemini-key"
export CONTEXT_OPT_EXA_KEY="your-exa-key"
npm test  # 现在运行包括LLM集成在内的所有测试

# 以监视模式运行测试
npm run test:watch

📚 详细文档

所有文档都组织在 docs/ 目录下:

| 主题 | 位置 | 描述 | |------|------|------| | 架构 | docs/architecture.md | 系统设计和组件概述 | | 工具参考 | docs/tools.md | 完整的工具文档和示例 | | 使用指南 | docs/guides/usage.md | 完整的设置和配置说明 | | VS Code设置 | docs/guides/vs-code-setup.md | VS Code特定配置 | | 故障排除 | docs/guides/troubleshooting.md | 常见问题及解决方案 | | API密钥 | docs/reference/api-keys.md | API密钥管理 | | 测试 | docs/reference/testing.md | 测试框架和流程 | | 更新日志 | docs/reference/changelog.md | 版本历史 | | 贡献指南 | docs/reference/contributing.md | 开发指南 | | 安全 | docs/reference/security.md | 安全策略 | | 行为准则 | docs/reference/code-of-conduct.md | 社区指南 |

快速链接

  • 开始使用:查看 docs/guides/usage.md 获取完整设置说明。
  • 工具参考:查看 docs/tools.md 获取详细的工具文档。
  • 故障排除:查看 docs/guides/troubleshooting.md 解决常见问题。
  • VS Code设置:遵循 docs/guides/vs-code-setup.md 进行VS Code配置。

🔧 技术细节

解决的问题

你是否在使用AI编码助手(如Copilot、Claude Code或Cursor)时遇到过以下情况?

  • 🔄 助手不断压缩/总结对话,在此过程中丢失部分上下文。
  • 🖥️ 终端输出用数百行内容淹没上下文,而助手只需要关键信息。
  • 📄 大文件使上下文不堪重负,而助手只需要检查一个特定的内容。
  • ⚠️ “达到上下文限制” 消息中断你的工作流程。
  • 🧠 助手因上下文溢出而“忘记”对话的早期部分
  • 😫 长时间对话时推理质量下降

根本原因:当你的助手:

  • 在执行终端命令后,读取构建、测试、代码检查等过程中的长日志。
  • 为了回答一个问题而完整读取一个(或多个)大文件,而实际上并不需要整个代码。
  • 从网络上读取多个网页来搜索一个主题,以学习如何做某件事。
  • 或者只是在长时间对话中。

助手可能会:

  • 开始压缩、总结或截断对话历史。
  • 降低推理质量。
  • 失去对早期上下文和决策的跟踪。
  • 由于失去焦点而变得不那么有用。

解决方案: 此服务器为任何MCP兼容的助手提供专门的工具,仅提取你需要的特定信息,使你的聊天上下文保持简洁,专注于解决实际问题,而非数据管理。

📄 许可证

本项目采用MIT许可证,详情请参阅 LICENSE 文件。

相关项目

help

运行方式说明

cloud

托管运行

托管运行通常表示这个 MCP Server 由服务方环境承载,用户一般按页面提供的连接方式或授权流程接入,不需要在本地长期启动一个 MCP 进程

  1. 打开服务方连接页
  2. 完成授权或复制端点
  3. 在 MCP 客户端中连接
terminal

本地运行 / 其它方式

本地运行通常需要用户在自己的电脑或服务器上安装依赖,把 server_config 复制到 MCP 客户端,并按 env_schema 补齐环境变量、密钥或其它配置

  1. 复制 server_config
  2. 安装所需依赖
  3. 补齐环境变量后重启客户端