Token导航 LogoToken导航TokenDH.com
MCP Electron Agent logo
运维云端未说明官方级别未说明来源级核验

MCP Electron Agent

MCP Server

一个嵌入本地HTTP服务器的Electron桌面应用程序,提供基于用户交互同意的文件操作工具集。

工具数

0

提示词数

0

GitHub Stars

0

资源数

0
本地服务器JavaScript文件管理

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

el-noir

提供方

el-noir

最后核验

2026/5/17 20:23

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

MCP电子试剂

一个嵌入本地HTTP服务器的最小Electron桌面应用程序,该服务器公开了一个小型的模型上下文协议(MCP)样式的清单和工具,用于在交互式用户同意的情况下进行文件操作。

特性

  • 带有强化默认值的电子外壳(GPU+硬件加速禁用,上下文隔离启用)。
  • 上的本地Express服务器 http://127.0.0.1:8371.
  • MCP发现清单位于 /.well-known/mcp-manifest.
  • 工具:

- file.read:在白名单和同意后返回文件内容(\. | AGENT_API_TOKEN=secret123 | | AUTOCONSENT |如果 1,绕过交互式同意(仅限测试)。 | AUTOCONSENT=1 | | NODE_ENV |运行时模式(影响启动脚本)。 | NODE_ENV=development` |

使用自定义白名单+令牌运行:

ALLOWED_BASE_DIRS="$HOME:/tmp" AGENT_API_TOKEN="secret123" npm run dev

完全操作系统访问权限(危险:授予跨系统的读/写/删除权限):

ALLOW_FULL_OS=1 ENABLE_WRITE=1 ENABLE_DELETE=1 npm run dev

端点

  • GET /.well-known/mcp-manifest → 清单(工具+配置标志)。
  • POST /mcp/tool/file.read JSON: { path, clientName }{ content }.
  • POST /mcp/tool/file.stat JSON: { path, clientName }{ size, mtime, isDirectory, path }.
  • POST /mcp/tool/file.write JSON: { path, content, clientName, mode }{ status, path, bytes }.
  • POST /mcp/tool/file.delete JSON: { path, clientName, recursive? }{ status, path, recursive? }.
  • POST /mcp/tool/file.list JSON: { path, clientName, pattern?, limit? }{ entries:[{name,isDirectory}], truncated }.
  • POST /mcp/tool/dir.create JSON: { path, clientName, recursive? }{ status, path, recursive }.
  • POST /mcp/tool/file.rename JSON: { from, to, clientName, overwrite? }{ status, from, to }.

同意流程

  1. 客户端请求工具。
  2. 服务器验证路径(白名单或完全访问标志)。
  3. 对话框显示按钮:允许一次/始终允许 /始终允许读写删除/拒绝。
  4. 用于未来操作(特定于操作或全局)的存储决策。

安全说明

  • nodeIntegration 残疾人;通过预加载控制API。
  • contextIsolation 启用。
  • 令牌认证可选;建议在启用全操作系统访问时使用。
  • 白名单或完整操作系统访问标志控制范围;出于安全考虑,更喜欢白名单。
  • 不得在测试自动化之外启用AUTOCONSENT。
  • 启用删除+完全访问时,请考虑在包含的VM内运行。

测试

手册:

curl -s http://127.0.0.1:8371/.well-known/mcp-manifest | jq
curl -s -X POST http://127.0.0.1:8371/mcp/tool/file.stat \
  -H 'Content-Type: application/json' \
  -d '{"path":"'$HOME'/.bashrc","clientName":"TestClient"}'

首次访问将显示同意对话框。

令牌启用测试:

export AGENT_API_TOKEN=secret123
npm run dev &
# In another terminal
curl -s -H 'Authorization: Bearer secret123' http://127.0.0.1:8371/.well-known/mcp-manifest | jq

路线图/建议改进

  • 同意管理UI(查看/撤销决定)。
  • 高级搜索(内容和全局)+索引。
  • 增量/分块大文件支持。
  • 结构化日志记录和日志查看器面板。
  • 可选TLS终止。
  • IPC工具事件流。
  • TypeScript转换。
  • 自动化测试(Jest用于API,Playwright用于对话框流)。
  • 包装方式 electron-builderelectron-forge.
  • 覆盖/删除时的备份/还原机制。
  • 补丁工具(应用统一差异)以实现更安全的编辑。

代理集成(SDK)

使用 agent-client.js 以编程方式进行交互:

const client = require('./agent-client');
(async () => {
  await client.init({ baseUrl: 'http://127.0.0.1:8371', token: process.env.AGENT_API_TOKEN });
  // Create directory
  await client.createDir('/tmp/mcp-agent-demo');
  // Write file
  await client.writeFile('/tmp/mcp-agent-demo/hello.txt', 'Hello World', 'create');
  // List directory
  const listing = await client.listDir('/tmp/mcp-agent-demo');
  console.log(listing);
  // Rename file
  await client.renamePath('/tmp/mcp-agent-demo/hello.txt', '/tmp/mcp-agent-demo/greeting.txt');
  // Read file
  const file = await client.readFile('/tmp/mcp-agent-demo/greeting.txt');
  console.log(file.content);
  // Delete directory recursively
  await client.deletePath('/tmp/mcp-agent-demo', true);
})();

故障排除

症状原因修复
libva错误线视频加速探测可接受;或安装VA-API驱动程序/删除GPU禁用(如果已修复)
403路径不允许白名单外调整 ALLOWED_BASE_DIRS 有人是。
401未经授权已启用令牌包括 Authorization: Bearer 头球
对话框重复选择“允许”一次选择“始终允许”
托盘警告丢失/无效 icon.png添加有效的PNG(建议使用64x64)

许可证

内部/未指定。如果分发,请添加许可证文件。

______________________________________________________________________

生成的改进通道:安全强化、配置、令牌认证、第二个工具、README。上面列出的未来增强功能。

目录标签

目录标签

本地服务器JavaScript文件管理本地部署交互同意Electron应用

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

token

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明token部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP