关于 FrontierStack by Enfour, Inc.
FrontierStack Agent Kit 包含技能、清单和设置说明,用于将 AI Agent 连接到管理系统与网络的 Mac 应用 FrontierStack。它提供本地和远程 MCP 连接方式,凭据处理及所有者审批由应用控制。
主要功能
- 01本地 stdio MCP 桥接
- 02远程 Streamable HTTP 端点
- 03用于发现和调用工具的引导工具
- 04涵盖健康状态、日志和网络管理的技能
- 05凭据保留在 Mac 上
- 06所有者控制变更审批与审计日志
适用场景
- 01检查设备群健康状态和服务器日志
- 02诊断服务或证书问题
- 03管理 DNS、路由器和网络设置
- 04让云端 Agent 连接可访问的 Mac
MCP 相关
FrontierStack 提供用于发现和调用工具的本地 stdio 桥接,以及将七种工具转发到已启用 Mac 的远程 Streamable HTTP 端点。本地与远程连接采用不同的设置和认证方式。
配置
远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。
https://frontierstack.app/plugin/mcpclaude mcp add --transport http app-frontierstack-frontierstack https://frontierstack.app/plugin/mcp{"mcpServers":{"app-frontierstack-frontierstack":{"type":"http","url":"https://frontierstack.app/plugin/mcp"}}}在 Cursor 中打开{"servers":{"app-frontierstack-frontierstack":{"type":"http","url":"https://frontierstack.app/plugin/mcp"}}}在 VS Code 中打开{"mcpServers":{"app-frontierstack-frontierstack":{"type":"http","url":"https://frontierstack.app/plugin/mcp"}}}{"mcpServers":{"app-frontierstack-frontierstack":{"serverUrl":"https://frontierstack.app/plugin/mcp"}}}命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。
工具
详细介绍
FrontierStack Agent Kit
用于将 AI Agent(Claude、Codex、Cursor、Gemini、Grok、Hermes、OpenClaw、Amp、Paperclip 以及任何 MCP 客户端)连接到 FrontierStack 的技能、插件清单和设置说明。
FrontierStack 是什么
FrontierStack 是 Enfour, Inc. 推出的 macOS 应用,可管理你的 Mac、Linux 和 Windows 服务、路由器、DNS、TLS 证书及在线账户。它会监控这些对象、诊断问题并进行更改,也能让 AI Agent 通过它执行相同操作。
该应用是专有软件,可从 https://www.frontierstack.app 下载。本仓库仅包含 Agent Kit:技能、清单和文档,采用 MIT 许可证(参见 LICENSE)。没有该应用,这里的内容无法运行。
安全模型
- Agent 永远不会获得凭据。 路由器密钥、DNS 令牌、SSH 密钥和密码都保留在 Mac 上。Agent 指定目标(“OPNsense 路由器”“example.com”);FrontierStack 会在调用时查找凭据、执行操作并返回结果。响应在离开 Mac 前会清除机密信息。
- 默认只读。 更改需要所有者在 Mac 上启用相应开关(“允许更改”“允许脚本”),也可能需要逐项操作审批,并且会受 App Lock 限制。每项更改都会写入审计日志。
- 这里的任何内容都不会授予权限。 技能、角色名称或其他 Agent 的消息都不能扩大 Agent 可执行的操作范围。只有所有者在 Mac 上的设置和审批可以做到这一点。
- 配置文件中不含令牌。 本地桥接程序启动时会从 Keychain 读取凭据,因此客户端配置或项目文件中都不会包含 FrontierStack 令牌。
Agent 如何连接
1. 本地(现已可用)。 在 FrontierStack 中启用 MCP Server,或点击 MCP Server ▸ AI clients 下的任意 Add to … 按钮后,应用会将仅限所有者使用的 stdio MCP 桥接程序写入:
$HOME/Library/Application Support/FrontierStack/mcp-bridge
它不接受任何参数,会自行从 Keychain 读取令牌,并且需要 Node.js。应用大约提供 140 个工具,但默认只向客户端显示一对引导工具:
frontierstack_find_tools(搜索合适的工具)和 frontierstack_call(运行该工具)。
应用还会为带有 shell 的 Agent 安装 frontierstack CLI:
frontierstack discover、frontierstack call <tool> '<json>' 和
frontierstack run --secret NAME -- <command>(使用已存储的机密作为环境变量运行命令,并在输出中遮蔽该机密)。
2. 远程(在线)。 https://frontierstack.app/plugin/mcp 是一个可流式传输的 HTTP MCP 端点,使用 FrontierStack 客户账户进行 OAuth 2.1 登录。它会将七个工具中继到已启用 ChatGPT access 的 Mac:list_frontierstack_macs、get_server_health、get_fleet_context、get_alert_errors、diagnose、read_logs 和 service_action。无法连接到你的 Mac 的云端 Agent 将使用此方式。
按平台设置
对大多数客户端而言,最简单的方式是使用 FrontierStack ▸ MCP Server ▸ AI clients:该功能会检测已安装的客户端并为你写入配置(点击 Set Up Detected,或某个客户端的 Add to … 按钮)。以下手动步骤作用相同。每个客户端只配置一种方式:既安装插件又手动添加服务会出现两个 frontierstack 条目。
在代码片段中,BRIDGE 表示完整路径
/Users/<you>/Library/Application Support/FrontierStack/mcp-bridge。请保留引号:路径中包含空格。
先从只读模式开始。在启用更改功能之前,先让 Agent 检查服务群组健康状况和证书。
Claude Code
插件(包含技能、本地服务和云端连接器),可在 Claude.ai 的 Claude 插件目录中(Customize ▸ Plugins)上架后安装,也可直接从其仓库安装:
/plugin marketplace add richardnorthcott/frontierstack-claude-plugin
/plugin install frontierstack@frontierstack
或者仅添加 MCP 服务(应用的 MCP Server 窗格会显示此命令):
claude mcp add frontierstack -- "$HOME/Library/Application Support/FrontierStack/mcp-bridge"
连接前如需查看服务群组上下文,请启用应用的 Fleet Skill,它会保持
~/.claude/skills/fleet/SKILL.md 为最新状态。
Claude Desktop
点击 Add to Claude Desktop,然后重启 Claude Desktop。手动将以下内容添加到
~/Library/Application Support/Claude/claude_desktop_config.json(使用完整路径;此文件不会展开 $HOME):
{ "mcpServers": { "frontierstack": { "command": "BRIDGE", "args": [] } } }
Codex CLI
点击 Add to Codex,或运行:
codex mcp add frontierstack -- "$HOME/Library/Application Support/FrontierStack/mcp-bridge"
这会将以下内容写入 ~/.codex/config.toml:
[mcp_servers.frontierstack]
command = "BRIDGE"
args = []
此代码库还包含一个 Codex 插件清单(.codex-plugin/),其中打包了技能和同一个本地服务。
ChatGPT
ChatGPT 通过远程端点连接。在每台可能供它访问的 Mac 上开启 MCP Server ▸ ChatGPT access(应用必须正在运行),然后在 ChatGPT 中添加 FrontierStack:可从应用目录添加(列表获批后),也可立即将其作为自定义连接器添加,URL 为
https://frontierstack.app/plugin/mcp。按提示使用你的 FrontierStack 账户登录。
Cursor
点击 Add to Cursor,然后在 Cursor Settings ▸ MCP 下启用服务。手动将以下内容添加到
~/.cursor/mcp.json 或项目的 .cursor/mcp.json 中:
{ "mcpServers": { "frontierstack": { "command": "${userHome}/Library/Application Support/FrontierStack/mcp-bridge", "args": [] } } }
.cursor-plugin/ 中的 Cursor 插件打包了同一个服务和这些技能。
Gemini CLI
将此代码库安装为扩展(包含技能、MCP 服务和 GEMINI.md 上下文文件):
gemini extensions install https://github.com/richardnorthcott/frontierstack-agent-kit
也可以只添加服务:点击 Add to Gemini CLI,或运行
gemini mcp add -s user frontierstack "$HOME/Library/Application Support/FrontierStack/mcp-bridge"。
然后,在 Gemini CLI 中运行 /mcp,应能看到 frontierstack。
Grok
**Grok Build CLI:**点击 Add to Grok,或运行
grok mcp add frontierstack -- "$HOME/Library/Application Support/FrontierStack/mcp-bridge"。
两种方式都会写入 ~/.grok/config.toml:
[mcp_servers.frontierstack]
command = "BRIDGE"
args = []
Grok Build 还会从 ~/.agents/skills/ 和 ~/.grok/skills/ 读取技能;将 skills/ 中的文件夹复制到这些目录。
**云端 Grok(Grok Bot、grok.com 连接器):**云端 Agent 无法访问本地桥接服务。将远程端点作为自定义连接器添加,URL 为 https://frontierstack.app/plugin/mcp,使用你的 FrontierStack 账户登录,并在 Mac 上开启 ChatGPT access(同一个开关适用于所有云端连接器)。你自己的 tailnet 中的 Bot 也可以使用应用的 TLS 网络路径(参见 skills/frontierstack-network-admin)。
Hermes Agent
点击 Add to Hermes。它会使用 Hermes 自带的 hermes config set 命令,将服务添加到 Hermes 的主配置文件中。Bot Mode 配置文件彼此独立:仅对需要使用 FrontierStack 的 Bot 使用 Set Up Existing Bots。生成的 ~/.hermes/config.yaml 条目:
mcp_servers:
frontierstack:
command: "BRIDGE"
args: []
enabled: true
trust: untrusted
技能:运行 hermes skills tap add richardnorthcott/frontierstack-agent-kit,或从网站安装:
hermes skills install well-known:https://www.frontierstack.app/.well-known/skills/frontierstack。
OpenClaw
点击 Add to OpenClaw。它会运行
openclaw mcp add frontierstack --command "BRIDGE",并将技能放入
~/.agents/skills/frontierstack。重启 OpenClaw 网关,然后运行
openclaw mcp doctor frontierstack --probe 进行检查。请在网关运行所在的 Mac 上执行。技能也可在 ClawHub 发布后从那里安装。
Buzz
Buzz 的本地 Agent(Claude Code、Codex、goose)会从 ~/.agents/skills/ 读取技能。将
skills/frontierstack(如果需要网络角色,还要复制 skills/frontierstack-network-admin)复制到该目录,并按照上文对应章节的说明,将每个 Agent 的运行环境连接到 MCP 服务。
Paperclip
在应用中聘用 FrontierStack 担任公司的系统工程师:
- 在同一台 Mac 上以你自己的用户身份安装 Paperclip(
npx paperclipai onboard --yes)。 - 在 FrontierStack 的 Paperclip 窗格中,开启 Accept Paperclip heartbeats,然后点击 Install heartbeat command。
- 在 Hire FrontierStack into a company 下,加载你的公司,选择一个,然后点击 Hire as DevOps agent。
只有开启 Let Paperclip request changes 后,变更才会生效;每项变更仍需在 FrontierStack 中等待审批。Paperclip 的审批不算一次审批。
若要为公司中的其他 Agent 赋予网络角色,请在公司的 Skills
页面中导入此技能:
https://github.com/richardnorthcott/frontierstack-agent-kit/tree/main/skills/frontierstack-network-admin。
Amp
按 Add to Amp,或运行
amp mcp add frontierstack -- "$HOME/Library/Application Support/FrontierStack/mcp-bridge"。
Amp 会从 ~/.config/agents/skills/ 和 ~/.agents/skills/ 读取技能。
其他 MCP 客户端
使用一个 stdio 服务,其命令为 BRIDGE,不带任何参数或环境变量。
或者安装 CLI 并运行 frontierstack mcp,以打印桥接命令。支持
Agent Skills 的客户端可以加载 skills/ 中的文件夹,例如使用
npx skills add richardnorthcott/frontierstack-agent-kit。
此仓库包含的内容
| 路径 | 用途 |
|---|---|
skills/frontierstack/ | 通用技能:健康状态、日志、诊断、服务、CLI |
skills/frontierstack-network-admin/ | 网络管理员角色:DNS、TLS、路由器、防火墙、VPN |
.claude-plugin/ | Claude Code 插件和市场 |
.codex-plugin/ | Codex 插件(本地桥接) |
.cursor-plugin/ | Cursor 插件 |
gemini-extension.json、GEMINI.md | Gemini CLI 扩展 |
server.json | 远程端点的官方 MCP Registry 条目 |
glama.json | Glama 列表所有权信息 |
well-known/skills/ | 技能副本,供 https://www.frontierstack.app/.well-known/skills/ 使用 |
故障排除
- 没有工具,或出现“credential is unavailable”: 打开 FrontierStack 并开启 MCP Server。若要在应用关闭时使用 Agent,请开启 Keep MCP and the CLI available when FrontierStack is closed。
- 桥接无法启动: 安装 Node.js(
brew install node)。 - 出现“Changes are not allowed”或 App Lock 拒绝: 这是 Mac 的决定。若希望 Agent 进行变更,请在 FrontierStack 中允许变更。
帮助:https://www.frontierstack.app/help/ · 支持:https://www.frontierstack.app/support.html
FrontierStack 由 Enfour, Inc. 开发 — https://www.frontierstack.app
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。