DeepSeek 网页版远程调用本地MCP脚本
该项目提供了一个强大的解决方案,使用模型上下文协议 (MCP) 为 AI 聊天界面(如 DeepSeek)扩展本地系统功能。它弥合了基于 Web 的 AI 与本地机器之间的鸿沟,允许 AI 读取/写入文件、执行命令以及使用各种专门的工具。
·
可配置 MCP 代理服务器 (Configurable MCP Proxy Server)
该项目提供了一个强大的解决方案,使用模型上下文协议 (MCP) 为 AI 聊天界面(如 DeepSeek)扩展本地系统功能。它弥合了基于 Web 的 AI 与本地机器之间的鸿沟,允许 AI 读取/写入文件、执行命令以及使用各种专门的工具。
🚀 核心特性
- 多服务代理:集中的 FastAPI 服务器,用于管理并转发请求至各种 MCP 服务。
- DeepSeek 集成:自定义 Tampermonkey 脚本,直接在 DeepSeek 聊天 UI 中注入工具调用功能。
- 强大的内置工具:
- 全局搜索:使用
grep进行高性能多线程文本预览。 - 高级编辑:支持语义化文件编辑(
search_replace和line_edit)。 - 终端会话:持久化交互式 Shell 会话。
- Git 集成:全面控制 Git 状态、差异对比和提交。
- 全局搜索:使用
- 大数据量支持:针对 Windows 环境进行了优化,通过跳过命令行长度限制,支持高达 2MB 的数据传输。
- 错误容错:4 层延时保护机制,确保工具执行的可靠性。
🏗️ 架构设计
� 目录结构与代码说明
1. server/ - 后端核心
该目录包含代理服务器的所有逻辑。
servers.py: 核心入口文件。- 使用 FastAPI 搭建交互接口。
- 管理外部服务的启动、停止与调用映射。
- 实现了内置工具:多线程
grep搜索、Git 管理、交互式终端 (TerminalSession)、文件大纲生成。
mcp.json: 配置文件。定义了需要代理的外部 MCP 服务(如 Bing 搜索、本地 Shell),包括其启动命令、参数和工具列表。todos.json: 任务管理数据文件,存储待办事项信息。工具示例文档.txt: 供 AI 参考的工具使用指南和示例。
2. server/mcp/ - 外部服务实现
fastmcp-shell/: 万能工具管道实现。windows_compatible_universal_pipe_v2.py: 专为 Windows 优化的执行器。解决了 PowerShell 命令行长度限制问题,支持大文件的可靠写入。role_card.txt: 角色卡/提示词。告诉 AI 它拥有哪些能力以及如何正确调用这些工具。adapter.py: MCP 协议适配器逻辑。
bing-cn-mcp/: Bing 搜索接口的 MCP 实现(Node.js 版)。
3. js/ - 前端插件
js2.js: Tampermonkey 脚本。- 拦截逻辑:通过劫持
XMLHttpRequest和监听Server-Sent Events (SSE),实时检测 DeepSeek 返回的工具调用指令。 - UI 注入:在 DeepSeek 页面右上角添加 “MCP 初始化” 按钮。
- 通信网桥:将 AI 的工具请求转发给本地 Python 服务器,并将执行结果反馈回对话框。
- 缓冲优化:内置 2MB 的文本缓冲区,确保大代码库在传输过程中不被截断。
- 拦截逻辑:通过劫持
4. MD/ - 技术文档
记录了开发过程中攻克的重大难题方案。
Windows命令行长度限制问题修复流程.md: 详细记录了如何通过临时文件方案突破 Windows 的 25KB 命令行长度限制。大文件写入问题修复总结.md: 对 JS 端缓冲区扩容和 Python 端统一写入方法的最终总结。超时修复流程图.md: 描述了 4 层超时保护机制(网络超时、请求锁超时、工具执行超时、轮询超时)的逻辑流。
🛠️ 安装指南
1. 后端设置
- 确保已安装 Python 3.10+。
- 进入
\server\mcp\fastmcp-shell目录并安装依赖:
pip install -r requirements.txt
- 启动服务器:
python servers.py
2. 前端设置
- 在浏览器安装 Tampermonkey或者脚本猫。
- 将
js/js2.js内容复制到新脚本并保存。 - 刷新 DeepSeek 即可看到初始化按钮。
📖 具体使用方法

-
下载源码,进入到
server目录
-
安装好油猴或者脚本猫,添加好js文件

-
初始化:打开DeepSeek(
https://chat.deepseek.com/),点击 “MCP 初始化” 按钮。
-
交互:直接让 DeepSeek “搜索文件”、“修改代码” 或 “查看 Git 状态”。
-
自动化:系统会自动解析响应格式并执行本地操作,完成后将结果自动填入输入框发送。










更多推荐



所有评论(0)