workbuddy-mcp
workbuddy-mcp
Lassen Sie jeden KI-Coding-Agenten WorkBuddy als Sub-Agenten steuern – Installation mit einem Befehl, funktioniert mit vier Clients.
让任意 AI 编程助手(Claude Code / Codex / Cursor / OpenCode)把 WorkBuddy 当「子 Agent」调用——一条命令装好,四大客户端通吃。
English · 简体中文
Was es tut / 它做什么
workbuddy-mcp ist ein winziger MCP-Server (Model Context Protocol), der die offizielle WorkBuddy-CLI (codebuddy) kapselt. Er stellt ein einziges Tool bereit – run_workbuddy_task –, sodass jeder MCP-fähige Agent echte Arbeit an WorkBuddy delegieren kann, ohne dass Sie zwischen Apps kopieren und einfügen müssen.
workbuddy-mcp 是一个极小的 MCP(模型上下文协议)服务器,封装了官方的 WorkBuddy 命令行(codebuddy)。它只暴露一个工具 run_workbuddy_task,让任何支持 MCP 的 Agent 都能把真实任务委托给 WorkBuddy,不必在多个应用之间来回复制粘贴。
Sie müssen nicht MCP verstehen, um es zu nutzen: npx -y workbuddy-mcp --install erkennt Ihre installierten Agenten und registriert den Server für Sie.
你不需要懂 MCP 就能用:一条 npx -y workbuddy-mcp --install 会自动检测你装了的 Agent 并注册好。
Related MCP server: all-agents-mcp
Inhaltsverzeichnis / 目录
Architektur / 架构
Your agent (Claude Code / Codex / Cursor / OpenCode)
│ calls MCP tool: run_workbuddy_task(prompt)
▼
workbuddy-mcp (this server, stdio MCP)
│ shells out:
▼
codebuddy -p "<prompt>" --dangerously-skip-permissions
│
▼
WorkBuddy (does the actual work, returns text)Funktionen / 特性
Funktion | Warum es wichtig ist |
Installation mit einem Befehl |
|
4 Clients, 1 Server | Claude Code, Codex, Cursor, OpenCode teilen sich dasselbe Tool. |
Kapselt die offizielle CLI | Verwendet |
| Jeder Aufruf kann ein Arbeitsverzeichnis ansteuern, sodass WorkBuddy Dateien genau dort schreibt, wo Sie es möchten. |
Konfigurierbar |
|
Kein Build-Schritt | Reines ESM-JavaScript, Node 18+. Kein TypeScript-Compile. |
特性 | 价值 |
一条命令安装 |
|
一个 Server,四个客户端 | Claude Code、Codex、Cursor、OpenCode 共用同一个工具。 |
封装官方 CLI | 用 |
可控的工作目录 | 每次调用可指定 |
可配置 |
|
零构建 | 纯 ESM JavaScript,Node 18+,无需编译 TypeScript。 |
Schnellstart / 快速开始
Voraussetzung: Installieren und melden Sie sich einmalig (interaktiv) bei der WorkBuddy-CLI an. 前置:先装好并登录一次 WorkBuddy 命令行(仅需一次,会打开登录流程)。
# 1. Install & log in the WorkBuddy CLI
npm install -g @tencent-ai/codebuddy-code
codebuddy -p "hello" --dangerously-skip-permissions # first run opens a login flow
# 2. Install the MCP server into every agent you have
npx -y workbuddy-mcp --installSagen Sie dann in einem beliebigen Agenten einfach z. B. „Lass workbuddy data.csv lesen und einen Wochenbericht entwerfen" – der Agent ruft run_workbuddy_task für Sie auf.
然后,在任意 Agent 里说「让 workbuddy 读取 data.csv 写一份周报」即可——Agent 会自动调用 run_workbuddy_task。
Installation / 安装
Option A – ein Befehl (empfohlen)
npx -y workbuddy-mcp --installErkennt Claude Code / Codex / Cursor / OpenCode auf Ihrem Rechner und registriert den Server. Nach der Installation eines neuen Agenten erneut ausführen.
Option B – von npm, dann installieren
npm install -g workbuddy-mcp
workbuddy-mcp --installOption C – manuell (beliebiger MCP-Client)
Weisen Sie Ihren Client auf node <path>/server.js. Beispiele:
Claude Code
claude mcp add -s user workbuddy -- node /abs/path/to/workbuddy-mcp/server.jsCodex
codex mcp add workbuddy -- node /abs/path/to/workbuddy-mcp/server.jsCursor – schreiben Sie in ~/.cursor/mcp.json:
{ "mcpServers": { "workbuddy": { "command": "node", "args": ["/abs/path/to/workbuddy-mcp/server.js"] } } }OpenCode – schreiben Sie in opencode.json (Projektwurzel oder ~/.config/opencode/opencode.json):
{ "mcp": { "workbuddy": { "type": "local", "command": ["node", "/abs/path/to/workbuddy-mcp/server.js"], "enabled": true } } }Siehe opencode.json.example für eine gebrauchsfertige Vorlage mit cwd / WB_*-Umgebungsvariablen.
Verwendung / 用法
Der Server stellt ein Tool bereit. Ihr Agent ruft es für Sie auf; Sie können es auch direkt aufrufen.
// Tool: run_workbuddy_task
{
prompt: "读取 ./reports 下的 CSV,生成一份中文月度总结", // required 必填
cwd: "/path/to/your/project", // optional 可选: where WorkBuddy reads/writes files
model: "sonnet", // optional 可选: model alias
json: true // optional 可选: request --output-format json
}Dinge, die Sie Ihrem Agenten geben könnten:
"让 workbuddy 在我仓库根目录跑测试,把失败日志整理成 Markdown"
„Lass workbuddy src/utils.ts refaktorieren und die Änderungen erklären"
Wohin gehen die Dateien? Textantworten kommen in den Chat zurück. Dateien, die WorkBuddy schreibt, landen in seinem
cwd(dascwddes Aufrufs → sonstWB_CWD→ sonst der Arbeitsordner des Agenten). Sie werden nicht automatisch zum Kontext Ihres Agenten hinzugefügt – lesen Sie sie von der Festplatte.
Konfiguration / 配置
Alle Einstellungen erfolgen über Umgebungsvariablen – setzen Sie sie im environment-Block der MCP-Konfiguration Ihres Agenten.
Variable | Default | Bedeutung |
|
| Die zu steuernde CLI. Wenn |
|
|
|
|
| Timeout pro Aufgabe in ms (10 Min.). Aufgaben, die es überschreiten, werden beendet. |
| (unset) | Standard-Arbeitsverzeichnis, das verwendet wird, wenn ein Aufruf kein |
| (unset) | Standardmodell, das verwendet wird, wenn ein Aufruf kein |
| (unset) | Modell, zu dem automatisch gewechselt wird, wenn das primäre überlastet/ratenbegrenzt ist (entspricht |
Modelle wechseln / 切换模型
Die codebuddy-CLI bietet --model <id> und --fallback-model <id> (letzteres wirkt nur unter --print, was dieser Server immer verwendet). Dieser Server stellt beide bereit:
Pro Aufruf – übergeben Sie
modelund/oderfallbackModelanrun_workbuddy_task.Global – setzen Sie
WB_MODELund/oderWB_FALLBACK_MODELimenvironment-Block des Agenten; sie gelten, wenn der Aufruf sie nicht übergibt.
Verfügbare Modelle (aus codebuddy --help): auto, hy3, hy3-x, glm-5.3, glm-5.2, glm-5.1, glm-5v-turbo, minimax-m3, kimi-k3-1, kimi-k2.7, kimi-k2.6, deepseek-v4-flash, deepseek-v4-pro.
Wird das kostenlose Modell ratenbegrenzt? Wechseln Sie nicht hart – fügen Sie einen Fallback hinzu, sodass hy3 primär bleibt, aber bei Überlastung automatisch umschaltet:
// opencode.json / claude mcp config environment
{
"WB_MODEL": "hy3",
"WB_FALLBACK_MODEL": "deepseek-v4-flash"
}Oder pro Aufruf: run_workbuddy_task({ prompt: "...", fallbackModel: "deepseek-v4-flash" }).
切换模型 / 模型切换
codebuddy 自带 --model <id> 与 --fallback-model <id>(--fallback-model 仅在 --print 下生效,而本服务始终用 -p,所以可用)。本服务把两者都暴露出来:
单次调用:给
run_workbuddy_task传model和/或fallbackModel。全局默认:在 Agent 的 MCP
environment里设WB_MODEL/WB_FALLBACK_MODEL,调用未传时使用。
免费模型被限流时,建议不要硬性切走,而是加一个回退:hy3 仍是首选,过载时自动切到 deepseek-v4-flash 等,等限流恢复又自动用回 hy3。
Sicherheitshinweis / 安全提示
Standardmäßig ist WB_SKIP_PERMISSIONS=true, wodurch codebuddy ohne interaktive Berechtigungsabfragen läuft. Das ermöglicht es einem Agenten, es unbeaufsichtigt zu steuern – bedeutet aber auch, dass alles, was der Agent anfordert, automatisch ausgeführt wird. Für persönliche, vertrauenswürdige Automatisierung ist das in Ordnung; wenn Sie einen Menschen im Loop behalten möchten, setzen Sie WB_SKIP_PERMISSIONS=false in Ihrer MCP-Konfiguration.
默认 WB_SKIP_PERMISSIONS=true,即 codebuddy 会跳过交互式授权自动执行。这正是「让 Agent 无人值守地驱动它」所必需的;但也意味着 Agent 请求的任何操作都会自动执行。个人可信自动化场景下没问题;若你想保留人工确认,把 WB_SKIP_PERMISSIONS 设为 false。
Warum / 为什么做这个
WorkBuddy ist ein leistungsfähiger Agent, aber jedes Produkt (Claude Code, Codex, Cursor, OpenCode…) lebt in seiner eigenen Box. Es gibt kein offizielles „Reverse MCP", um diesen Produkten den Zugriff auf WorkBuddy als Sub-Agenten zu ermöglichen. Dieses Projekt ist der dünne Kleber: Es verpackt WorkBuddy's eigene CLI hinter einem standardmäßigen MCP-Tool, sodass die vier beliebtesten Coding-Agenten ein WorkBuddy gemeinsam nutzen können.
WorkBuddy 本身能力很强,但 Claude Code、Codex、Cursor、OpenCode 各成孤岛,官方并没有提供「反向 MCP」让这些产品把 WorkBuddy 当子 Agent 调用。本项目就是那层薄胶水:把 WorkBuddy 自己的命令行封装成一个标准 MCP 工具,让最主流的几个编程 Agent 共用同一个 WorkBuddy。
FAQ
Muss die WorkBuddy-Desktop-App laufen?
Nein. Es steuert die codebuddy-CLI, die eigenständig ist (gleiche Engine, Terminalform). Ein Desktop-Login genügt.
Funktioniert das offline?
Der MCP-Server ist lokal; die codebuddy-Aufrufe erreichen den WorkBuddy-Dienst, daher ist für die eigentliche Aufgabe eine Internetverbindung erforderlich.
Wird mein WorkBuddy-Desktop-Chat anzeigen, was der Agent gefragt hat?
codebuddy läuft als eigene Sitzung; Unterhaltungen erscheinen möglicherweise nicht im Verlauf der Desktop-App. Das ist zu erwarten.
Roadmap / 路线图
Auto-Installation für Claude Code / Codex / Cursor / OpenCode
Streaming-Ausgabe (Fortschritt anzeigen, statt auf das vollständige Ergebnis zu warten)
Optionale strukturierte JSON-Ergebnisanalyse
codebuddynicht gefunden → geführter Installationshinweis
Mitwirken / 贡献
PRs und Ideen sind willkommen! Issues mit dem Label good first issue sind ein guter Einstieg. Siehe CONTRIBUTING.md.
Jeder Push / PR führt einen Smoke-Test aus (.github/workflows/smoke.yml), der die Syntax auf Node 18/20/22 prüft und verifiziert, dass der Server einen MCP-initialize → tools/list-Handshake abschließt. So führen Sie ihn lokal aus:
npm install
node test/smoke.mjs每提交 / 开 PR 都会跑一个冒烟测试(.github/workflows/smoke.yml),在 Node 18/20/22 上检查语法并验证 Server 能完成 MCP initialize → tools/list 握手。本地自测:
欢迎 PR 和想法!可以从 good first issue 标签的议题入手。
Lizenz / 许可证
MIT © LinHaiJ. Siehe LICENSE für Details.
Available Tools
1 toolrun_workbuddy_taskA
委托 WorkBuddy(codebuddy CLI)以非交互方式执行一个任务,返回结果文本。
| Name | Required | Description | Default |
|---|---|---|---|
| cwd | No | 可选:codebuddy 的工作目录(它在此目录读写文件)。不传则用 WB_CWD 或当前目录 | |
| json | No | 可选:true 时追加 --output-format json(取决于 codebuddy 版本是否支持) | |
| model | No | 可选:指定本次会话模型,如 hy3 / hy3-x / deepseek-v4-flash / glm-5.3 / kimi-k3-1 / auto。不传则用 WB_MODEL 或 codebuddy 默认 | |
| prompt | Yes | 交给 WorkBuddy 执行的任务描述 / 提示词。可包含多行内容(通过 stdin 传递,不会被截断) | |
| timeoutMs | No | 可选:本次调用的超时毫秒数。不传则用 WB_TIMEOUT(当前 900000ms)。长调研任务建议 1800000(30 分钟) | |
| fallbackModel | No | 可选:过载/限流时自动回退的模型(接到 --fallback-model,仅 --print 生效)。不传则用 WB_FALLBACK_MODEL |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
无注解,描述需承担行为披露。描述说明任务以非交互方式执行、返回结果文本,并通过 schema 提及 stdin 传 prompt 不会截断,但这些细节主要来自 schema 而非描述本身。缺少如权限、副作用、失败模式等行为信息。
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
描述只有一句话,直接说明工具做什么、如何调用(非交互)以及输出类型。信息密度高,无冗余。
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
无输出 schema,描述只提到返回结果文本,未说明返回格式/错误结构。但 6 个参数都在 schema 中充分解释了,整体对调用而言基本足够。缺少返回值细节和退出码/错误提示。
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
schema 覆盖 100%,每个参数在 schema 中已有详细中文说明,描述本身无需补充参数含义。描述未重复 schema,因此可以给予基线 3。
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
描述包含明确的动词“委托/执行”和资源“WorkBuddy(codebuddy CLI)”,并指出返回结果文本。虽然无兄弟工具,但“以非交互方式”等限定语使其与其他可能的 CLI 工具区分开。
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
描述隐含了使用场景(委托 WorkBuddy 非交互执行任务),但没有明确说明何时不使用它,也没有指出替代工具或前置条件。无兄弟工具且参数如 cwd/model/timeout 提供了运行时选择上下文。
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
1 tool update
v0.2.0- First observed
run_workbuddy_task
TDQS
Scored across 1 tool
With only one tool, there is no possibility of overlapping purposes. The single action is clearly scoped to running a WorkBuddy task and cannot be confused with anything else.
The tool name follows a clear verb_noun convention: run_workbuddy_task. It accurately describes the action and is easily predictable.
A single tool is functional but feels thin for a server, even though it directly covers its stated purpose. There is no secondary surface for configuration, status, or task management, placing it at the borderline of acceptable scope.
The server covers its core workflow: executing a non-interactive WorkBuddy task and returning result text. It lacks lifecycle or management operations, but for a one-shot CLI delegation tool these are not necessarily required, so only minor gaps exist.
Maintenance
Related MCP Connectors
Talk to your public-facing AI from any MCP client — Claude, ChatGPT, Cursor, Cline, Windsurf.
One MCP endpoint for Claude, GPT & Gemini: 100+ tools + no-code connectors + agent workers.
Zero-setup MCP gateway securely connecting AI to your tools with authentication and workflows
MCP server for your apps' tools and custom tools, plus hosted AI agents and approval-gated workflows
Related MCP Servers
- AlicenseAqualityDmaintenanceEnables the creation and execution of task-specific AI sub-agents defined in markdown across any MCP-compatible tool like Cursor or Claude Desktop. It integrates with execution engines such as Claude Code, Cursor CLI, and Gemini CLI to provide portable and reusable specialized agent workflows.1377 npmMIT
- AlicenseBqualityFmaintenanceEnables orchestrating multiple AI CLI agents (Claude Code, Codex, Gemini CLI, Copilot CLI) through a unified MCP interface for task delegation, cross-agent comparison, and specialized tools like code review and debugging.149 npm14MIT
- AlicenseNot gradedqualityAmaintenanceEnables AI chat clients to delegate self-contained coding tasks to opencode's free-tier models as a one-shot subagent through a native MCP tool, without requiring shell commands or API keys.MIT
- FlicenseNot gradedqualityBmaintenanceEnables MCP clients like Claude Code to delegate coding tasks to a local model through a configurable coding-agent CLI backed by any OpenAI-compatible endpoint, with tools for health checks, task execution, and context-aware file modifications.-