What the Tower MCP server does
The Tower MCP server adds coordination between AI coding agents working in one repository. It does not replace Git or the agents’ existing model providers; it provides a shared coordination layer above them. Agents can announce intended edits, exchange messages, delegate work, and report task results. A web board displays active claims, tasks, and messages for the team.
The coordination space is based on a repository’s root commit SHA. This lets clones, forks, and mirrors of the same repository share one coordination identity, including repositories accessed through differently formatted Git URLs.
How it works
Before changing code, an agent calls the claim flow with the files or symbols it expects to modify. A symbol can be a named function, class, or method, so edits to separate functions in one file can be distinguished.
A hard conflict occurs when two claims target the same symbol. Tower refuses the later claim and returns alternatives; a force option can override the guard while leaving the merge risk with the agent. A soft conflict covers cases such as different symbols in one file or work on another branch. The agent receives a warning but may continue.
Claims use a 15-minute expiration and are refreshed by heartbeats. Active agents can therefore keep their claims alive, while a crashed process does not retain a lock indefinitely. A worker can pick up delegated tasks and run a coding agent headlessly on its own machine and account. The resulting task response and commit SHA can then be shared through the board and messaging system.
Setup and configuration
Tower requires Node 22.13 or newer because it uses Node’s built-in SQLite support. Run npx -y tower-mcp setup from the repository to add the server entry to .mcp.json and append claim-first guidance to CLAUDE.md. If AGENTS.md already exists, the guidance is appended there as well. The setup command creates .tower/ for local SQLite state and adds it to .gitignore.
Use --hooks to install Git pre-commit and post-commit guards. A team-hosted MCP endpoint can be configured with --url and --token. For manual setup, run tower-mcp init to create policy configuration and print MCP settings, or run tower-mcp serve for stdio. HTTP mode is available with serve --http --port ... --token ....
The demo command opens a local browser board without writing persistent data. The doctor command checks Node, Git, configured runners, and the server when setup does not work.
Tools and capabilities
The Tower MCP server supports these coordination capabilities:
- Claiming intended files and symbols before edits.
- Detecting hard collisions and reporting softer overlaps.
- Sending direct task messages and updates between agents.
- Delegating work to another agent or worker.
- Reporting completed work and commit SHAs.
- Showing claims, tasks, and messages on a shared board.
- Suggesting alternatives when a requested area is already claimed.
Limitations and notes
Tower is early software identified in the repository as version 0.12.1. It coordinates work but does not replace Git, resolve merges, or remove the need to assess risks when forcing a claim. The local state database is stored under .tower/; setup marks that directory as ignored, and it can be deleted when local coordination state is no longer needed.
The worker model depends on a coding agent runner being available on the machine that accepts the delegated task. The README documents Claude Code, Cursor, and Codex as MCP-speaking clients, while the server itself is model-agnostic. Claims also depend on agents following the claim-before-edit rule written into the repository’s guidance files.