Bundlekit

Bundlekit

A standalone local MCP server for managing docs-hub bundle IRs, including splitting, merging, checking, normalizing bundles, rendering design Markdown, validating legacy dynamics YAML, and syncing owned docs skills.

Category
Visit Server

README

Bundlekit

Standalone local MCP for docs-hub bundle IR:

  • split / merge / check / normalize bundles
  • render design Markdown
  • validate legacy-dynamics YAML
  • sync owned docs skills on init

Package is independent of Hubdocs, ArtifactGraph, and CodeGraph. They remain optional accelerators; missing optionals use the documented fallback and measurable bundlekit.missing-optional event contract.

Install

# from a local checkout (dev)
cd /path/to/bundlekit
pnpm install
pnpm build
pnpm link --global   # optional

cd /path/to/docs-hub
bundlekit init

Linux installer (after the repo is published):

curl -fsSL https://raw.githubusercontent.com/raintr91/bundlekit/main/install.sh | bash

Init

cd <docs-hub>
bundlekit init

The TTY wizard runs in three steps:

  1. choose agents (detected agents are pre-selected; choosing none is valid)
  2. optionally configure installed Hubdocs and/or ArtifactGraph toolkits (none means skip and add them later)
  3. when Cursor and machine-local repo maps are present, wire cross-repo CodeGraph servers now or defer to platform-dna codegraph:wire

Bundlekit never downloads another toolkit implicitly. A selected optional toolkit that is not installed is reported as deferred without failing init. CodeGraph wiring is owned and performed by Platform DNA, not reimplemented inside Bundlekit.

Writes/updates:

  • project-local MCP configs for the agents selected by the wizard
  • owned skills/extracts/rules under .cursor/ (commit-worthy; not ignored wholesale)
  • exact machine-local ignore entries (.bundlekit/, legacy-repos.local.json, platform-repos.local.json, written agent MCP paths such as .cursor/mcp.json)
  • both machine-local map skeletons when missing (never overwrite member content)
  • repo-only legacy-repos.json + example for optional brownfield evidence
  • Bundlekit CLI aliases in package.json without replacing existing scripts
  • no portable platform-repos*.json: that config is Platform DNA-owned

Configure repo maps (/configure-repo-maps)

After init, fill machine-local checkouts with natural language — do not hand-edit JSON. Prefer the Platform DNA skill when that toolkit is installed; Bundlekit ships a thin copy for independence. /legacy-spec Gaps when a legacy root is missing hand off here.

Platform example (writes platform-repos.local.json):

docs = base-docs ở ~/ws/base-docs; portal admin ở ~/ws/portal; api core ở ~/ws/api

Legacy example (writes legacy-repos.local.json, key legacy-*):

legacy ERP cũ ở D:\legacy\erp, key legacy-erp

For CI, use bundlekit init --yes; detected agents and the only supported lane (docs) are selected automatically, optional toolkits and CodeGraph are skipped by default. Use --with=hubdocs,artifactgraph (or --with=none) and --codegraph|--no-codegraph for explicit automation. --target, --type, --location, and --project-root remain available.

Tools

Tool Purpose
bundle_split *.bundle.yamlir/*
bundle_merge ir/* → bundle
bundle_check split drift check
bundle_split_all batch split
bundle_normalize normalize gen
docs_render / docs_render_common design MD only
legacy_dynamics_validate legacy dynamics schema

Owned skills

/spec · /update-spec · /update-spec-legacy · /legacy-spec · /configure-repo-maps · /bqa-grill-docs · /dev-grill-docs · /grill-with-docs

Lifecycle

The primary commands are:

bundlekit init                          # install in this docs hub
bundlekit deinit                        # remove this hub's owned harness + local MCP
bundlekit uninstall                     # preview global/all removal from anywhere
bundlekit uninstall --yes               # all tracked hubs + local/global MCP + CLI
bundlekit prune                         # dry-run
bundlekit prune --yes                   # delete only unmodified stale files

Interactive deinit/uninstall preview and confirm. Non-TTY runs are dry-runs unless --yes is passed. init records each destination in the XDG state ledger and records managed-file hashes in .bundlekit/install-manifest.json. Use bundlekit uninstall --discover <dir> to find installs created before the ledger existed.

Customized files and package scripts are preserved and reported. Bundlekit removes legacy-repos.json only when it created the file and its recorded hash is unchanged. Shared MCP/extract registries are unmerged without deleting other toolkits' entries. prune remains stale-only.

See mcp-package.json for tool/harness API compatibility.

Docs

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured