关于 Context Optimizer
Context Optimizer 是一个 MCP 服务,为 GitHub Copilot、Cursor、Claude Desktop 等 AI 编码助手提供上下文优化工具。它通过只提取所需信息,避免大型文件和终端输出占满对话上下文。
主要功能
- 01按需提取文件中的特定信息
- 02执行命令并用 LLM 提取关键结果
- 03基于先前命令输出的追问
- 04基于 Exa.ai 的快速与深入网络研究
- 05路径校验与命令过滤等安全控制
适用场景
- 01检查大型文件中是否包含某个函数或导入语句
- 02从长篇构建或测试日志中提取错误信息
- 03为技术选型收集当前最佳实践的网络资料
MCP 相关
该项目是一个 MCP 服务,向 MCP 客户端暴露 askAboutFile、runAndExtract、askFollowUp、researchTopic 和 deepResearch 等工具。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
Context Optimizer MCP Server
一个 Model Context Protocol(MCP)服务,为 GitHub Copilot、Cursor AI、Claude Desktop 及其他兼容 MCP 的助手提供上下文优化工具,使它们能够提取目标信息,而无需处理大量终端输出和文件,浪费上下文。
此 MCP 服务是 VS Code Copilot Context Optimizer 扩展的演进版本,同时兼容支持 MCP 的应用。
🎯 它解决的问题
你是否在使用 AI 编码助手(例如 Copilot、Claude Code 或 Cursor)时遇到过这些情况?
- 🔄 助手不断压缩/总结对话,并在过程中丢失一些上下文。
- 🖥️ 终端输出塞满上下文,出现数百行内容,而助手只需要关键信息。
- 📄 大文件占满上下文,而助手其实只需要检查某个具体内容。
- ⚠️ **“已达到上下文限制”**的消息打断工作流。
- 🧠 上下文溢出导致助手“忘记”对话前面的内容。
- 😫 对话变长后,推理质量下降。
根本原因:当助手:
- 执行终端命令后,读取构建、测试、代码检查等过程中产生的长日志。
- 为了回答问题而完整读取一个或多个大文件,即使并不需要全部代码。
- 为了学习如何完成某项任务而从网上读取多个网页,搜索某个主题。
- 或者只是在进行长时间对话时。
助手可能会:
- 开始压缩、总结或截断对话历史。
- 推理质量下降。
- 无法跟踪之前的上下文和决策。
- 因为注意力不集中而变得不那么有帮助。
解决方案:
此服务为任何兼容 MCP 的助手提供专用工具,仅提取你需要的具体信息,让聊天上下文保持简洁、专注于高效解决问题,而不是管理数据。
功能
- 🔍 文件分析工具(
askAboutFile)- 从文件中提取具体信息,无需加载全部内容 - 🖥️ 终端执行工具(
runAndExtract)- 执行命令并使用大模型分析提取相关信息 - ❓ 后续问题工具(
askFollowUp)- 继续讨论之前的终端执行结果 - 🔬 研究工具(
researchTopic、deepResearch)- 使用 Exa.ai 的 API 开展网络研究 - 🔒 安全控制 - 路径验证、命令过滤和会话管理
- 🔧 多大模型支持 - 支持 Google Gemini、Claude(Anthropic)和 OpenAI
- ⚙️ 环境变量配置 - 通过系统环境变量管理 API 密钥
- 🏗️ 简单配置 - 仅需环境变量,无需管理配置文件
- 🧪 全面测试 - 单元测试、集成测试和安全验证
快速开始
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- 无需重新运行命令,即可继续询问之前的命令行执行结果。可访问之前runAndExtract调用的完整上下文,包括完整命令输出和执行详情。 -
researchTopic- 使用 Exa.ai 的研究能力,对软件开发主题开展快速、聚焦的网络研究。获取当前最佳实践、实现指南以及不断演进的技术的最新信息。 -
deepResearch- 使用 Exa.ai 的全面研究能力,开展深入研究与分析,为关键决策和复杂架构规划提供支持。适用于技术战略决策、架构规划和长期路线图制定。
如需查看详细的工具文档和示例,请参阅 docs/tools.md 和 docs/guides/usage.md。
文档
所有文档均位于 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
测试
# Run all tests (skips LLM integration tests without API keys)
npm test
# Run tests with API keys for full integration testing
# Set environment variables first:
export CONTEXT_OPT_LLM_PROVIDER="gemini"
export CONTEXT_OPT_GEMINI_KEY="your-gemini-key"
export CONTEXT_OPT_EXA_KEY="your-exa-key"
npm test # Now runs all tests including LLM integration
# Run in watch mode
npm run test:watch
手动测试
如需使用 AI 助手进行全面的端到端测试,请参阅 手动测试设置指南。该指南提供基于工作流的测试流程,通过真实场景验证所有工具。
如需了解详细的测试设置,请参阅 docs/reference/testing.md。
贡献
欢迎贡献!请阅读 docs/reference/contributing.md,了解开发工作流、编码标准、测试和提交拉取请求的相关指南。
社区
- 行为准则:请参阅 docs/reference/code-of-conduct.md
- 安全报告:请遵循 docs/reference/security.md 中的负责任披露指南
- 问题:使用 GitHub Issues 报告错误和提交功能请求
- 拉取请求:请确保测试通过且文档已更新
- 讨论:(如果已启用)用于开放式问题和想法交流
许可证
MIT 许可证 - 详情请参阅 LICENSE 文件。
相关项目
- VS Code Copilot 上下文优化器 – 原始 VS Code 扩展(配套项目)
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。