Skip to content

Feat: 增加公共 MCP 支持#1373

Open
Ryanisgood wants to merge 13 commits into
binaricat:mainfrom
Ryanisgood:public-mcp
Open

Feat: 增加公共 MCP 支持#1373
Ryanisgood wants to merge 13 commits into
binaricat:mainfrom
Ryanisgood:public-mcp

Conversation

@Ryanisgood

Copy link
Copy Markdown

这个 PR 为 Netcatty 增加 Public MCP 支持,让标准 MCP 客户端(例如 Codex、Claude Code)可以连接到 Netcatty,并操作当前已打开的 SSH PTY 会话。
同时补齐了 Public MCP 的运行时控制、权限约束和生命周期处理。

主要改动

1. 新增 Public MCP 运行能力

  • 增加 Public MCP bridge、TCP server、RPC handlers、session registry、terminal handlers、SFTP handlers
  • 增加 discovery 文件与 launcher 路径生成逻辑
  • 增加 netcatty-public-mcp 启动入口及对应 Electron / preload / main 进程接线
  • 支持暴露当前已连接的 SSH PTY 会话,不暴露未连接的 Vault 主机

2. 新增客户端接入与配置辅助

  • 增加 Codex 的 Public MCP 配置检测与一键添加逻辑
  • 增加 Claude Code 的 Public MCP 配置检测与一键添加逻辑
  • 增加 launcher / discovery 展示与状态反馈
  • 处理已存在配置、未安装客户端、配置冲突等状态

3. 新增产品侧 UI 接入

  • 在 AI 设置页增加 Public MCP 配置卡片
  • 在顶部区域增加 Public MCP 快捷开关
  • 展示运行状态、暴露会话数、模式、空闲超时、客户端配置入口等信息
  • 增加 Public MCP 外部写操作审批面板

4. 权限与安全约束

  • Public MCP 写操作遵循 AI Permission Mode
  • 仅监听 127.0.0.1
  • 审批面板改为全局显示,避免请求发生时用户看不到审批入口
  • 禁用时移除 discovery,避免残留入口继续暴露

5. 生命周期与稳定性修复

  • 支持 temporary / persistent 两种模式
  • 支持 temporary 模式下的 idle timeout 自动关闭
  • 刷新 Public MCP SFTP 操作期间的超时/活动时间,避免活动中被误判为空闲
  • 启动时轮换 Public MCP discovery,避免残留状态污染新进程
  • 修复 temporary 模式下,运行中的 Public MCP 会在 AI 设置页或 AI 侧栏首次挂载时被误关的问题
  • 将 Public MCP 的 startup reconcile 收敛到 App 启动路径,避免普通 UI 挂载影响运行态

zheng and others added 11 commits June 10, 2026 09:20
- 新增独立 public MCP bridge,与现有内部 AI MCP 链路并存
- 仅暴露当前打开、可操作、PTY-backed 的 live SSH 会话,不暴露本地终端或未连接主机
- 新增标准 MCP launcher、discovery 文件与 localhost+token 鉴权链路,支持外部标准 MCP 客户端接入
- 在设置页加入 Public MCP 开关、状态展示与 Codex 一键添加入口,并持久化启动恢复状态
- 补充 terminal/sftp/public server/codex setup 等测试,并将 electron/mcp 测试纳入默认 npm test
- 修复 discovery 默认 userData 目录推导、手工 Codex 命令转义、动态命令超时同步与 SFTP 编码状态延续
@chatgpt-codex-connector

Copy link
Copy Markdown

Codex usage limits have been reached for code reviews. Please check with the admins of this repo to increase the limits by adding credits.
Repo admins can enable using credits for code reviews in their settings.

@Ryanisgood Ryanisgood marked this pull request as draft June 10, 2026 07:56
@Ryanisgood Ryanisgood marked this pull request as ready for review June 10, 2026 08:07
@chatgpt-codex-connector

Copy link
Copy Markdown

Codex usage limits have been reached for code reviews. Please check with the admins of this repo to increase the limits by adding credits.
Repo admins can enable using credits for code reviews in their settings.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant