Coding Tools MCP
Coding Tools MCP 是一个 Rust + Tauri 2 桌面应用。选择项目目录并启动服务后,AI Agent 就能通过 MCP 读取文件、修改代码、运行命令和测试、查看 Git 状态,并把关键进度保存为项目内的历史会话。它更接近“AI 打开一个会记住开发进度的 IDE 工作区”;普通开发工具不要求先创建 Task,历史会话则负责在新对话中恢复上下文。

一个桌面端同时管理工作区、MCP 服务、连接信息与会话恢复提示词。
30 秒看懂怎么用
下载安装桌面端
→ 添加项目目录
→ 启动 MCP 和公网隧道
→ 复制“公网 MCP 地址”
→ ChatGPT 开启开发人员模式
→ 新建 MCP 插件并粘贴地址
→ 完成授权,在新对话中开始开发第一次使用只需要记住两件事:桌面端负责把项目变成 MCP 工作区,ChatGPT 负责通过公网 /mcp 地址连接它。
五分钟开始使用
1. 安装桌面客户端
打开 Releases 并下载对应安装包:
系统 | 安装包 |
Windows 10/11 x64 |
|
macOS Apple Silicon |
|
macOS 安装包目前未签名。如果系统阻止首次打开,请在“系统设置 → 隐私与安全性”中确认打开。
2. 添加项目工作区
点击左侧的“添加工作区”。
选择项目根目录。
设置工作区名称、MCP 端口和认证方式。
保存后,工作区会长期保留在左侧列表中。
3. 配置公网隧道
如果 AI 客户端不在本机,需要把本地 MCP 暴露为 HTTPS 地址:
在“软件管理”中安装或识别
frpc/cloudflared。在“FRP 配置”中保存服务器、端口和 Token,或在工作区选择 Cloudflare。
每个工作区填写独立子域名。应用会统一管理 FRP 进程和多条代理线路。

FRP 服务器配置集中保存,各工作区只需选择配置并填写自己的子域名。
如果还没有可用的 FRPS 服务端,可以参考:FRPS 服务端安装教程(微信公众号)。安装完成后,把服务端地址、端口和 Token 填入客户端的“FRP 配置”即可。
4. 启动 MCP
进入工作区并点击 MCP 的“启动”。客户端会显示:
本地 MCP 地址,例如
http://127.0.0.1:28766/mcp;公网 HTTPS MCP 地址;
ChatGPT 连接所需的认证信息;
实时日志和健康检查结果。

启动后可以直接检查本地与公网端点、OAuth 元数据和 MCP 受保护资源:

健康检查会逐项显示连接和认证元数据是否可用。
遇到连接问题时,无需离开桌面端即可查看最近的 MCP 请求日志:

日志可快速确认工具列表、历史初始化和检查点调用是否真正到达服务端。
5. 连接 AI 客户端
支持 MCP 的客户端使用界面中的公网 MCP URL。使用 OAuth 时,客户端会通过服务端元数据进入授权流程;授权口令、Client ID 和 Secret 均可在桌面端集中生成和管理。当前版本使用预配置 OAuth 客户端,创建 ChatGPT 插件时应选择静态/手动 OAuth 凭据,不需要选择 CIMD。
首次连接建议先调用历史初始化,再检查工作区:
history_session_bootstrap
server_info
get_default_cwd
git_status
check_exec_environment这样 Agent 不需要依赖聊天上下文猜测当前项目、工作目录和执行能力。
ChatGPT 的两种接入方式
方式 | 适合场景 | 在客户端中使用什么 |
MCP Connector | ChatGPT 直接使用文件、命令和 Git 工具 | 工作区的公网 |
GPT Actions | 在自定义 GPT 中导入 OpenAPI 工具 | Actions 面板中的 |
MCP Connector
配置前请先确认:
工作区的 MCP 服务和公网隧道均处于运行状态。
“健康检查”中的公网 MCP 检查通过;如果使用 OAuth,再确认 OAuth 受保护资源和授权元数据检查通过。
从桌面端“GPT 配置”卡片复制“公网 MCP 地址”;如果使用 OAuth,同时准备 OAuth Client ID、OAuth Client Secret 和授权口令。
ChatGPT 必须使用公网 HTTPS
/mcp地址,不能使用http://127.0.0.1:28766/mcp之类的本地地址。ChatGPT 的菜单名称可能随版本和语言设置略有变化。
1. 开启 ChatGPT 开发人员模式
打开 ChatGPT 设置,进入“账户安全与登录”,开启“开发人员模式”。该开关允许添加未经验证的 MCP 连接器。

开发人员模式具有较高权限,只应连接你自己部署或明确可信的 MCP 服务。
2. 创建 MCP 插件
在 ChatGPT 左侧进入“插件”,点击右上角的 + 新建插件,然后选择 MCP(测试版)并填写:
ChatGPT 字段 | 填写内容 |
名称 | 自定义一个容易识别的名称,例如 |
描述 | 简要说明它连接的项目或用途 |
连接 | 粘贴桌面端“GPT 配置”中的公网 MCP 地址,URL 应以 |
身份验证 | 与桌面端保持一致;截图以 OAuth 为例 |

使用 OAuth 时,展开“高级 OAuth 设置”,选择静态/手动 OAuth 凭据并填写桌面端提供的 Client ID 和 Client Secret,不需要选择 CIMD。保存或连接后,ChatGPT 会打开授权页面;输入桌面端“GPT 配置”卡片中的授权口令完成首次授权。
Client Secret、授权口令和 Bearer Token 都属于敏感信息,不要粘贴到对话、Issue 或公开截图中。若桌面端使用 Bearer 或不启用认证,请在 ChatGPT 中选择当前界面提供的对应认证方式。
3. 验证连接
创建一个启用了该插件的新对话,并发送:
请使用 Coding Tools MCP 调用 server_info、get_default_cwd 和 git_status,
告诉我当前连接的工作区、默认目录和 Git 状态。如果能够返回当前项目的信息,说明“桌面端 → 公网隧道 → OAuth → ChatGPT → MCP 工具”链路已经打通。首次正式开发时,再调用 history_session_bootstrap 初始化或恢复项目历史。
如果 ChatGPT 仍显示旧的工具列表,请断开并重新连接插件,或创建一个新对话后再次验证。
常见问题
现象 | 优先检查 |
ChatGPT 无法连接 | 是否使用公网 HTTPS |
OAuth 授权失败 | Client ID、Client Secret 和授权口令是否来自同一个工作区;OAuth 元数据检查是否通过 |
看不到新增工具 | 断开并重新连接插件,然后创建一个新对话 |
工具调用失败 | 打开桌面端“日志”和“健康检查”,确认请求是否到达 MCP 服务 |
GPT Actions
启动工作区的 Actions 服务。
复制 Actions 面板中的 OpenAPI URL。
在 GPT 编辑器的 Actions 页面导入该 URL。
根据桌面端配置选择 None、API Key 或 OAuth。
MCP 和 Actions 可以为同一个工作区同时运行,也可以分别使用不同端口和子域名。
为什么需要它
面向真实开发:文件、命令、Git、测试和长时间运行的进程都在同一个 Workspace 中。
跨会话持续开发:新对话先获得有界的当前状态,需要精确旧上下文时按关键词定位并读取原始档案,无需反复向 AI 解释项目背景和当前进度。
进度可追溯:每轮任务完成后可保存结构化检查点,决策、修改、测试结果和下一步都留在项目目录中。
多工作区管理:一个桌面客户端可以保存多个项目,并管理各自的 MCP、Actions 和公网地址。
连接 ChatGPT 更直接:内置 Streamable HTTP、OAuth、Bearer Token、OpenAPI、FRP 和 Cloudflare 隧道。
默认工具面保持简单:稳定的核心工具默认可用,高级 Harness 能力按需开启。
让项目记住每次对话
普通聊天记录适合回看交流内容,但不适合作为长期开发交接。Coding Tools MCP 将会话进度写入当前项目的 docs/history-session/,让上下文跟随项目,而不是困在某一个聊天窗口里。

复制完整提示词到新会话,即可初始化或恢复历史;每轮任务完成后再保存检查点。
它提供五个互相配合的历史工具:
工具 | 作用 |
| 新对话开始时初始化或恢复项目会话;保存逐字的 |
| 每轮任务完成后按 bootstrap 返回的稳定目标追加结构化进度,并保存逐字的 |
| 检查历史编号、文件和会话映射;必要时重建派生索引,不删除已有历史 |
| 按确定性关键词搜索长期 Markdown 档案,返回有界的命中位置和短片段 |
| 按编号或搜索结果位置,无损、UTF-8 安全地分页读取一份原始 Markdown 档案;默认每页 |
典型效果:
对话 1:分析项目 → 修改代码 → 运行测试 → 保存检查点
↓
对话 2:读取有界当前状态 → 搜索并精读需要的旧档案 → 从上次进度继续 → 保存新检查点历史档案使用可读的 Markdown 格式,可以随项目备份或纳入 Git,也方便开发者直接审阅和修订。memory/state.json 是有界当前状态投影,memory/manifest.json 只保存位置、哈希与关键词,不复制正文;Markdown 才是长期、无损的事实来源。首次输入和每轮输入必须由 ChatGPT 作为 initial_user_input、raw_user_input 工具参数传入,服务端无法读取未传入的远程聊天文本。检查点采用幂等追加,同一 turn_id 内容变化时保留 revision 与 supersedes 证据,并要求返回 ok=true 且会话目标一致后才确认保存成功。
历史持久化由 AI 调用 MCP 工具完成,并非桌面端在后台录制聊天内容。若客户端未触发工具调用,服务端无法凭空感知新的对话或任务进度。
Agent 可以做什么
默认 core profile 提供一组稳定、可组合的开发工具:
类别 | 主要工具 |
文件读取 |
|
文件修改 |
|
命令执行 |
|
Git |
|
环境 |
|
历史会话 |
|
典型开发过程:
打开 Workspace
→ 理解项目和 Git 状态
→ 搜索并读取代码
→ 事务化应用 Patch
→ 运行命令和测试
→ 检查 diff 并提交高级 profile 还保留项目状态、操作记录等 Harness 能力,但普通文件修改和命令执行不要求先创建 Task。
权限与恢复模型
项目采用 Workspace-first 权限模型:
Workspace 内普通文件可以读取、创建、修改、删除和执行。
Workspace 外允许完整只读:
read_file、list_dir、list_files、search_text、view_image。Workspace 外写入、删除和执行会被阻止。
.git和.github不能被普通文件工具、Patch 或解释器命令破坏。Patch 在单次操作内进行预检和失败恢复;长期恢复统一使用 Git,不创建全量 Workspace Snapshot。
Windows 子进程目前仍是
policy_only执行边界,返回中的sandbox_enforced: false是真实状态。静态命令策略不能等同于完整的操作系统文件系统沙箱。
本地开发
环境要求:Node.js 20+、Rust stable,以及当前系统的 Tauri 2 prerequisites。
npm install
npm run desktop常用验证命令:
npm run check
npm run build
cd src-tauri && cargo test
cd src-tauri && cargo clippy --all-targets -- -D warningsWindows 也可以双击 dev-desktop.cmd。不要只用 npm run dev 验证桌面应用,它只启动 Vite,不会启动 Tauri 外壳。
项目结构
路径 | 作用 |
| 文件、Patch、Exec、Git 等共享工具内核 |
| MCP Streamable HTTP 服务 |
| ChatGPT Actions OpenAPI 网关 |
| FRP / Cloudflare 隧道和进程管理 |
| SvelteKit 桌面界面 |
| Python 参考实现和兼容性基线 |
致谢
感谢 Linux.do 社区对项目推广与反馈的支持。
License
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Cross-agent artifact workspace with provenance across Claude Code, Codex, Cursor, LangGraph.
Git-backed platform for skills, tools, and context for AI agents
Securely search and manage workspace context files for AI agents and teams.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/R-HUA/coding-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server