Batuta Mcp

io.github.vorlunoPublished by GitHub account vorlunov0.1.0Updated Oct 24, 2026

Split a task into plans with disjoint file boundaries; scaffold a git worktree per plan.

Overview

AI-generated overview

A stateless local MCP server that splits a task into plans with non-overlapping file boundaries and scaffolds a git worktree for each plan.

What you can do
Decompose a brain dump into 2–5 plans with disjoint file boundaries, retrying once if boundaries overlap, using the logged-in claude CLI. Check whether a set of plans shares any files. Scaffold one isolated git worktree per plan with a ready-to-paste prompt, optionally as a dry run that writes nothing.
When to use it
When you want to run several coding agents in parallel on one repository and need each agent to work on a separate set of files so they do not clobber each other. Note the project is retired and archived: Claude Code now handles this itself, though the published package still installs.
Requirements
Runs locally over stdio via npm package @vorluno/batuta-mcp. Needs Bun 1.3+, git 2.x for worktree scaffolding, and a logged-in claude CLI for plan decomposition. No API key or environment variables declared; any MCP client works.
Before you install
The repository is archived and read-only, so it will not be maintained. Scaffold_worktrees creates git worktrees on disk in the given repository; use dryRun to preview first. It relies on your logged-in claude CLI session for decomposition.

Installation

In SourceWeft

  1. Open Batuta Mcp in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

[batuta-mcp — disjoint plans and git worktrees for parallel agents]

batuta-mcp

Split a task into plans with disjoint file boundaries, then scaffold a git worktree per plan — so parallel agents never step on each other.

A stateless MCP server that turns a brain dump into conflict-free parallel work.

[License: Apache 2.0] [Bun] [Model Context Protocol] [Built with Claude Code]


Retired

Claude Code now does this itself. Splitting work across isolated worktrees so parallel agents do not collide is built in, which is what this existed to provide.

The repository is archived and read-only. It still works — nothing was removed from npm, and the last published version keeps installing — but it will not be maintained, and it does not need to be. If you want the idea rather than the package, the whole design is in docs/ and the licence lets you take it.

Why

Running several coding agents in parallel is fast — until two of them edit the same file and silently clobber each other's work. The fix isn't live coordination; it's separation: give each agent a set of files that don't overlap, and the conflict can't happen by design.

batuta-mcp is the brain that does that split. You hand it a brain dump; it returns plans with disjoint file boundaries, and scaffolds an isolated git worktree for each one.

How it works

It's a stateless MCP server (stdio). No database, no daemon, no web UI — just three tools that compose:

  1. Decompose a brain dump into 2–5 plans whose fileBoundaries don't overlap (auto-corrects once if they do).
  2. Check that the boundaries are truly disjoint.
  3. Scaffold a git worktree per plan, returning a ready-to-paste prompt for each — open them in separate terminals/tabs and let one agent work each, conflict-free.

The "muscle" (running the agents, the terminals) stays in your editor; batuta-mcp is just the planning brain.

Features

  • 🧠 Disjoint decomposition — plans are generated so no file appears in two plans.
  • ♻️ Auto-correction — if the model returns overlapping boundaries, it retries once to separate them.
  • 🌳 Worktree scaffolding — one isolated git worktree per plan, with a ready-to-paste prompt.
  • 🔒 Safe by design — pre-flight checks (valid git repo, no overlaps, no path traversal) before touching disk; dryRun previews without writing.
  • 🪶 Stateless — nothing persisted; uses your logged-in claude CLI (no API key needed).

Requirements

  • Bun 1.3+
  • git 2.x (for scaffold_worktrees)
  • The claude CLI, logged in (for decompose_into_plans)
  • Claude Code or any MCP client

Installation

From npm — nothing to clone:

bash
claude mcp add batuta -- bunx --bun @vorluno/batuta-mcp

From source — if you want to change it:

bash
git clone https://github.com/vorluno/batuta-mcp.gitcd batuta-mcpbun installclaude mcp add batuta -- bun run /absolute/path/to/batuta-mcp/src/index.ts

Configuration

Any MCP client works. The mcpServers entry:

json
{  "mcpServers": {    "batuta": {      "command": "bun",      "args": ["run", "/absolute/path/to/batuta-mcp/src/index.ts"]    }  }}

For Claude Code, claude mcp add (above) writes this for you. For Warp or Cursor, paste the snippet into their MCP settings.

Tools

ToolDescription
decompose_into_plans{ brainDump, projectHint?, repoPath? } → { plans, overlapsResolved, attempts }. Splits the work into plans with disjoint boundaries (auto-corrects overlaps once).
check_boundary_overlaps{ plans } → { overlaps, ok }. Pure check: do any plans share files?
scaffold_worktrees{ repoPath, plans, dryRun? } → { results }. Pre-flight, then git worktree add per plan + a ready-to-paste prompt.

Typical flow

  1. decompose_into_plans → plans with disjoint boundaries.
  2. check_boundary_overlaps → confirm ok: true (or adjust).
  3. scaffold_worktrees → creates the worktrees; open each in its own terminal/tab and paste its suggestedPrompt.

Development

bash
bun test          # full suitebunx tsc --noEmit # type-check

Built test-first across 10 TDD tasks with per-task and whole-branch review.

Contributing and security

Read CONTRIBUTING.md first — its first line tells you whether your pull request will be considered. Vulnerabilities go to [email protected], never to an issue: see SECURITY.md, where the 72-hour acknowledgement is the one response time we commit to.

License

Apache-2.0 © 2026 Vorluno. See NOTICE.

Up to and including 0.1.0 this was MIT. Those releases stay MIT — a licence already granted cannot be withdrawn. From 0.2.0 on it is Apache-2.0, which grants patent rights explicitly.


Built by Vorluno — a software studio from Panamá 🇵🇦

Part of the mcp-s family of MCP servers. Looking for live coordination between sessions instead of separation? See agora.

Source: README.md at commit c41087d

Tools

0
SourceWeft has not started this package in its sandbox yet, so its tools are not known.

Version history

1
  1. v0.1.0LatestSep 16, 2026

Score

50% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts