@burdenoff/mcp-libs

中文文档
2026.1108.1发布于 2026/11/08UNLICENSEDTypeScriptESM + CJS近 30 天下载 6700

Modular MCP SDK shared across all Burdenoff product MCPs (vibecontrols, botlit, fluidgrids, bigconsole, healthybowl, workspaces). Each module exports an McpModule contract; product MCPs become thin shells that pick which modules to mount.

原始使用文档
文档目录6 节
  1. Status — 1.0.0
  2. Install
  3. Quick start (product MCP shell)
  4. Repository layout
  5. License
  6. FluidGrids code-first and durable tools

@burdenoff/mcp-libs

Modular MCP SDK shared across all Burdenoff product MCPs.

Each module under src/modules/<name>/ exports an McpModule. Product MCPs become thin shells (~125 lines) that pick which modules to mount, build an McpContext, pick a transport, and ship the binary.

Status — 1.0.0

23 modules cover the full surface of vibecontrols-app's microfrontends (~317 tools / 7 resources / 7 prompts):

DomainModules
Identityauth (full surface incl. mfa, api-keys, sso, delegations), rbac, organizations, tours
Workspace primitivesworkspaces, groups, tags, files, conversations, security
Operationsintegrations, channels, scheduler, export, notifications, support, products, devportal
Commercebilling, store
Product surfacevibecontrols (rich; 16 sub-entities), sandbox, health

Mounted in 6 product MCPs: vibecontrols, botlit, fluidgrids, bigconsole, healthybowl, workspaces — each consumes the same 23-module catalogue with product-prefixed tool names via mcpToolName(productName, …).

Beyond the platform catalogue, one domain module per product shell carries that product's own surface (32 today, e.g. vibecontrols, healthybowl, bigconsole — the latter the 16-tool least-privilege console-authoring set: data sinks, dashboards/pages, parsers, widgets, export/import, generate-from-prompt).

Install

bun add @burdenoff/mcp-libs @modelcontextprotocol/sdk graphql graphql-request zod

For HTTP transport:

bun add express cors

Quick start (product MCP shell)

#!/usr/bin/env node
import { buildContext, createMcpServer } from '@burdenoff/mcp-libs/core';
import { startStdioServer, startHttpServer } from '@burdenoff/mcp-libs/transports';
import authModule from '@burdenoff/mcp-libs/modules/auth';
import vibecontrolsModule from '@burdenoff/mcp-libs/modules/vibecontrols';
// ... import the rest of the 23 modules as needed
import pkg from '../package.json' with { type: 'json' };

const ctx = buildContext({
  productName: 'vibecontrols',
  productVersion: pkg.version,
  serverName: 'vibecontrols-mcp',
  serverVersion: pkg.version,
  defaults: {
    configDirName: 'vibecontrols-mcp',
    oidcClientId: 'burdenoff_mcp_vibecontrols',
    workspaceEndpointDefault: 'http://localhost:4003/workspaces/graphql',
    globalEndpointDefault: 'http://localhost:4000/global/graphql',
    httpPortDefault: 3000,
  },
});

const server = createMcpServer(ctx, [authModule, vibecontrolsModule], {
  name: 'vibecontrols-mcp',
  version: pkg.version,
});

await startStdioServer(server, ctx);

Repository layout

  • src/core/ — McpModule, McpContext, error classes, gql client, auth, config, output helpers.
  • src/transports/ — stdio + HTTP transport factories (express dynamic-imported).
  • src/modules/<name>/ — one folder per module: index.ts (McpModule export), tools.ts, resources.ts (optional), prompts.ts (optional), operations.ts.

See CLAUDE.md for the full architecture, hard rules, and adding-a-module guide.

License

UNLICENSED — Burdenoff Consultancy Services Pvt. Ltd.

FluidGrids code-first and durable tools

The FluidGrids module includes the SDK's code-first and durable-run operations: runs_by_workflow_id, runs_count, runs_describe, runs_determinism, runs_history, runs_pending, runs_signal, runs_stack_trace, runs_terminate, workflows_create_version, workflows_export, workflows_import, workflows_import_template, workflows_interface, workflows_start, and workflows_validate. Tool names receive the host's product prefix, for example fluidgrids_runs_history.

Run tools that accept run support either a run ID or a { workflowKey, workflowId, firstRunId? } target. History is bounded to one page (1–1,000 events); pass nextAfter as after to continue. File and offloaded payload URLs are returned without being downloaded. Imports accept exactly one of definitionJson or inline JSON/TypeScript source files. URL-based source imports are not exposed because the backend reserves and rejects that mode.

Starts and signals can execute external actions, and termination stops a run without cancellation handlers. They explicitly advertise destructiveHint: true; hosts must enable enforceDestructiveConfirmation to require confirm: true before the handler runs. The FluidGrids MCP host already enables this option. TERMINATE_EXISTING also requires workflowId and is sent to the separate startWorkflowTerminateExisting gateway mutation, which enforces delete permission. Confirmation never grants a missing gateway permission or feature entitlement. Draft import/version creation does not activate or execute a workflow.

The library's exact MCP SDK peer is 1.32.1. Zod ^3.25.0 remains supported for existing consumers, while new hosts should install patched Zod ^4.6.6. Dependency vulnerability checks and host installation tests must cover the actual resolved graph; a peer range is not a security clearance for old versions.

版本与发布记录

@burdenoff/mcp-libs 共发布 87 个版本,首次发布于 2026/05/11;过去 12 个月发布了 87 个版本。

版本发布日期距今
2026.1108.1latest2026/11/08今天
2026.1107.52026/11/08今天
2026.1107.42026/11/081 天前
2026.1107.32026/11/081 天前
2026.1107.22026/11/081 天前
2026.1107.12026/11/081 天前

其他发布通道:alpha → 2026.523.1。

关于 @burdenoff/mcp-libs 的常见问题

@burdenoff/mcp-libs 是什么?

Modular MCP SDK shared across all Burdenoff product MCPs (vibecontrols, botlit, fluidgrids, bigconsole, healthybowl, workspaces). Each module exports an McpModule contract; product MCPs become thin shells that pick which modules to mount.

如何安装 @burdenoff/mcp-libs?

在项目目录运行 npm install @burdenoff/mcp-libs,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:zod(^3.25.0 || ^4.6.6)、graphql(^16.0.0)、graphql-request(^7.0.0)、@modelcontextprotocol/sdk(1.32.1)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。

@burdenoff/mcp-libs 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@burdenoff/mcp-libs 支持 ESM 还是 CommonJS?

同时提供 ES Module 与 CommonJS 入口,import 和 require() 都可以使用,打包工具会自动选择合适的版本。

@burdenoff/mcp-libs 需要什么版本的 Node.js?

package.json 的 engines 字段要求 Node.js >=24.11.0。版本不符时 npm 默认只给出警告,开启 engine-strict 后会拒绝安装。

@burdenoff/mcp-libs 可以商用吗?

@burdenoff/mcp-libs 使用 UNLICENSED 许可。作者声明为 UNLICENSED,即不授予公开使用许可(与公共领域的 Unlicense 不同)。使用前需获得作者授权。以上为概括,不构成法律意见,请以许可原文为准。

@burdenoff/mcp-libs 的下载量有多少?

根据 npm 官方下载统计,@burdenoff/mcp-libs 在 2026/10/09 – 2026/11/07 这 30 天内被下载 6,700 次,日均约 223 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@burdenoff/mcp-libs 还在维护吗?

最新版本 2026.1108.1 发布于 2026/11/08(今天);至今共发布 87 个版本,其中过去 12 个月发布了 87 个;首次发布于 2026/05/11。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。