Universal Brute Workpack

Official registry Search and web

Stdio-first Agent MCP workpack for local tools, audit chains, search, memory, and pipelines.

Install

Add this to your client's MCP configuration (Claude Desktop: claude_desktop_config.json; Cursor: .cursor/mcp.json; VS Code and others use the same "mcpServers" shape).

NPM package universal-brute-workpack
Claude Code
claude mcp add universal-brute-workpack -e 'UBW_CONFIG=<UBW_CONFIG>' -e 'UBW_PROFILES=<UBW_PROFILES>' -e 'UBW_ROOTS=<UBW_ROOTS>' -e 'TAVILY_API_KEY=<your tavily_api_key>' -e 'EXA_API_KEY=<your exa_api_key>' -e 'UBW_MEMORY_URL=<UBW_MEMORY_URL>' -e 'LLM_BASE_URL=<LLM_BASE_URL>' -e 'LLM_API_KEY=<your llm_api_key>' -e 'LLM_MODEL=<LLM_MODEL>' -- npx -y universal-brute-workpack@0.1.4
JSON configuration (Claude Desktop, Cursor, VS Code)
{
    "mcpServers": {
        "universal-brute-workpack": {
            "command": "npx",
            "args": [
                "-y",
                "universal-brute-workpack@0.1.4"
            ],
            "env": {
                "UBW_CONFIG": "<UBW_CONFIG>",
                "UBW_PROFILES": "<UBW_PROFILES>",
                "UBW_ROOTS": "<UBW_ROOTS>",
                "TAVILY_API_KEY": "<your tavily_api_key>",
                "EXA_API_KEY": "<your exa_api_key>",
                "UBW_MEMORY_URL": "<UBW_MEMORY_URL>",
                "LLM_BASE_URL": "<LLM_BASE_URL>",
                "LLM_API_KEY": "<your llm_api_key>",
                "LLM_MODEL": "<LLM_MODEL>"
            }
        }
    }
}

Environment variables

  • UBW_CONFIG Optional path to a custom Universal Brute Workpack config JSON.
  • UBW_PROFILES Optional path to a custom profile and deny-list JSON.
  • UBW_ROOTS Optional semicolon-separated filesystem roots for local file tools.
  • TAVILY_API_KEY secret Optional Tavily key for search.web before fallback providers.
  • EXA_API_KEY secret Optional Exa key for search.web before fallback providers.
  • UBW_MEMORY_URL Optional memory or vector service endpoint for memory.search.
  • LLM_BASE_URL Optional OpenAI-compatible base URL for Agent tasks.
  • LLM_API_KEY secret Optional model API key for Agent tasks.
  • LLM_MODEL Optional model name for Agent tasks.

Documentation

From the project's README on GitHub, refreshed weekly. Links open on GitHub.

Contents
  1. Plus 不够用,Pro 又用不完?
  2. 能做什么
  3. 接入
  4. 配套 Skill
  5. 工具
  6. 开发
  7. 许可证

Plus 不够用,Pro 又用不完?

接上自己的模型 API,把 Codex 额度留给核心任务。

功能介绍 · 快速接入 · 配套 Skill · 反馈问题

读文件 · 查资料 · 审代码
自选模型分担,Codex 复核交付。

如果用得上,欢迎点个 Star ⭐


UBW 是一个 MCP 服务。Codex 分配任务、限定目录,用户自主配置的大模型通过 API 只负责调用只读工具,返回报告与证据。联网搜索通过配置的搜索服务完成。

Plus 额度不够用,又用不完 Pro?UBW 支持接入自选模型 API,分担读取、搜索和代码审查等任务,让原本交给 Codex 子 Agent 的只读工作走自定义模型的 API 计费。Codex 负责判断、修改和交付,把订阅额度留给核心任务。

更多用法,欢迎探索,也欢迎提交 Issue 或 PR。

能做什么

  • 列目录、找文件、搜索文本、读取文件、查看 Git 差异。
  • 搜索公开网页,保留来源链接。
  • 查看进度、补充指令、暂停、恢复和取消任务。
  • 保存阶段结果;失联或预算耗尽时暂停。

不提供文件写入、Shell 执行或子 Agent 派生。

接入

需要 Node.js ≥ 20.3、DeepSeek API Key;读取 Git 差异需要 Git。

复制 配置示例,将 roots 设为允许读取的项目目录:

{
  "roots": ["D:/projects/example"],
  "search": { "backend": "deepseek" }
}

MCP 客户端配置:

{
  "mcpServers": {
    "ubw": {
      "command": "node",
      "args": ["D:/tools/ubw/src/bridge.js"],
      "env": {
        "UBW_CONFIG": "D:/config/ubw.json",
        "DEEPSEEK_API_KEY": "<API_KEY>"
      }
    }
  }
}

路径改为实际位置。密钥保存在本机配置或环境变量中,不提交到仓库。

配套 Skill

ubw:任务委派、进度跟进和结果复核。使用时将 skills/ubw 目录放入宿主的 Skill 目录。

工具

工具用途
delegate.start分配任务,指定目录、预算和联网权限
delegate.inspect查看进度并续租,可等待状态变化
delegate.control补充指令、暂停、恢复、取消
delegate.result获取完整任务的报告或当前阶段结果

读取的文件内容会发送到 DeepSeek API。联网任务需设置 allowNetwork: true;官方搜索另计 API 用量。

默认租约为 120 秒,需在到期前调用 delegate.inspect。任务记录含文件摘录和报告,保存在 ~/.ubw/tasks;重启后保持暂停。Token 预算用于停止后续请求,不是账户金额上限。

开发

npm test
npm run doctor

已通过 Windows / Node.js 26 的本地模拟测试。真实 API 联调尚未完成。

许可证

Apache-2.0

欢迎按需修改和扩展,也欢迎提交 Issue 或 PR。

Frequently asked questions

What is Universal Brute Workpack?

Stdio-first Agent MCP workpack for local tools, audit chains, search, memory, and pipelines.

How do I install Universal Brute Workpack?

It runs on your machine. In Claude Code: claude mcp add universal-brute-workpack -e 'UBW_CONFIG=<UBW_CONFIG>' -e 'UBW_PROFILES=<UBW_PROFILES>' -e 'UBW_ROOTS=<UBW_ROOTS>' -e 'TAVILY_API_KEY=<your tavily_api_key>' -e 'EXA_API_KEY=<your exa_api_key>' -e 'UBW_MEMORY_URL=<UBW_MEMORY_URL>' -e 'LLM_BASE_URL=<LLM_BASE_URL>' -e 'LLM_API_KEY=<your llm_api_key>' -e 'LLM_MODEL=<LLM_MODEL>' -- npx -y universal-brute-workpack@0.1.4. For other clients, paste the JSON configuration from this page into their MCP settings.

Does Universal Brute Workpack need an API key?

Yes. It expects TAVILY_API_KEY, EXA_API_KEY, LLM_API_KEY, which you set in its configuration.

Is Universal Brute Workpack open source?

Yes. Its code is on GitHub under the Apache-2.0 license.

Who maintains Universal Brute Workpack?

It is published by haoyun18881-beep. AI.tn lists it but does not maintain or endorse it.

From the official MCP Registry. Listing is not an endorsement: review a server's code and permissions before giving it access to your data.