最近尝试利用 Cursor 来重构一个规模较大的前端项目代码。然而,在面对大量代码时,Cursor 的原生能力显得有些力不从心。尽管我尝试了各种 Prompt 优化策略(Cursor Rules)并持续更新上下文文档,但在多次迭代交互后,整体体验并不理想。
为此,我进行了一系列提升 Cursor 使用效果的实践,并准备通过几篇文章来分享我的经验。本文将聚焦在重构过程中表现最为出色的三个 模型上下文协议(MCP)工具。
Cursor 不可避免的存在严重的代码幻觉,经常写出过时的活着根本不存在的接口。结果就是 Cursor 写的代码很快,但是却花费了大量的时间用在调试和排查问题上。
为了解决上面的痛点,Context7 直接从源头提取最新版本的具体文档和代码示例,并将其直接放入 AI 编程工具的提示上下文中。这样我们能确保 Cursor 使用最新最准确的版本库的最佳实践,依赖于确定存在的接口或者函数,降低代码幻觉。
Context7 官方提供了远程服务器连接:
json复制代码{ "mcpServers": { "context7": { "url": "https://mcp.context7.com/mcp" } } }
也可以下载代码本地安装:
perl复制代码{ "mcpServers": { "context7": { "command": "npx", "args": ["-y", "@upstash/context7-mcp"] } } }
使用也很简单,在每次让 Cursor 生成或者修改代码是,指定其使用 context7。比如我希望 Cursor 帮我使用@antv/x6
画一个关系图:
erlang复制代码根据后端返回的响应报文结构,zen画出各个节点的关系图。use context7. 响应报文结构描述: ... ...
可以看到 Cursor 先从 context7 MCP 获取对于库的文档和代码示例,再进行代码生成:
context7 官方列出来他们索引的所有代码库。地址:https://context7.com/
Sequential Thinking 是结构化思考工具 MCP。通过定义阶段促进结构化、渐进式思考的模型上下文协议(MCP)服务器。此工具有助于将复杂问题分解为连续的思考,跟踪您思考过程的进展,并生成摘要。
主要 Features:
• 分步式问题解决: 将复杂问题拆解成可管理的子步骤。• 动态思考演进: 支持在理解深入时回溯、修改和完善思考路径。• 探索分支思路: 允许创建并探索不同的解决方案分支。• 弹性规划: 动态调整解题所需的思考步骤总数。• 方案验证: 辅助生成并验证潜在的解决方案。
需要 Python 环境,clone 仓库代码后使用 uv 安装依赖:
bash复制代码git clone https://github.com/arben-adm/mcp-sequential-thinking.git cd mcp-sequential-thinking uv venv # 创建并激活虚拟环境 uv venv .venv\Scripts\activate # Windows source .venv/bin/activate # Unix # 安装依赖项 uv pip install -e . # 实际使用发现启动回报错缺少依赖,需要安装: uv pip install portalocker
配置 Cursor MCP:
json复制代码"sequential-thinking": { "command": "uv", "args": [ "--directory", "/Users/xxx/Repositories/github.com/mcp-sequential-thinking", "run", "run_server.py" ] }
详细的使用方式,可以参考官方仓库说明:https://github.com/arben-adm/mcp-sequential-thinking?tab=readme-ov-file#1-process_thought
• 交互时调用: 在单次 Cursor 请求中,指令其通过 sequential-thinking
进行结构化思考 (use sequential-thinking
或类似指令)。• 集成到 Cursor Rules (推荐): 将其定义为一个规则(Rule),让 Cursor 在特定类型任务中自动应用此思维方式。• 核心工具指令:• process_thought
: 开始进行结构化的分步思考。• generate_summary
: 获取当前思考链的阶段性摘要。• clear_history
: 清除当前会话的历史思考内容,重置状态。
这个 MCP 是让 Cursor 在结束本次交互前,询问用户,用户可以继续在本次交互追问和反馈,达到一次 Cursor 请求多次交互的效果。具体参考之前的文章:mp.weixin.qq.com/s/eJPggHek7…
通过组合运用上述三个 MCP:
Context7 从源头提供了精准、最新的知识参考,有效抑制代码幻觉,大幅降低生成的代码出错率;Sequential Thinking 增强了 Cursor 的结构化推理能力,让分析复杂重构任务变得条理清晰、步步为营;Interactive Feedback 则显著提升了单次请求的利用率,通过持续交互减少整体请求次数。
三者协同作用,能在大型项目的 Cursor 辅助重构过程中形成一个更可靠、更深入且更经济高效的 AI 增强工作流,有效弥补了 Cursor 在原生能力上的局限性,让开发者真正享受到 AI 编程助手在大型项目中的潜力。在后续文章中,我将探讨更多的组合策略与高级技巧。
有话要说...