Command Palette

Search for a command to run...

Home / Servers

ai-crew-sync

Updated 1mo ago

by joaquinbejar

ai-crew-sync

CI crates.io docs.rs license

Read this in Spanish.

Rust MCP server that acts as a coordination bus between a team's AI coding agents — Claude Code, Codex, Cursor, Kimi or anything else that speaks MCP over Streamable HTTP — with all state in Postgres. Each agent (yours, each teammate's) connects with its own token and can:

CapabilityMCP tools
Messaging (channels + DMs, read cursors, search)post_message, read_messages, search_messages, list_channels, create_channel
Task coordination with leases and dependencies (depends_on)create_task, claim_task, claim_next_task, renew_task_lease, release_task, complete_task, list_tasks, get_task
Real time: block until something relevant happens (LISTEN/NOTIFY)wait_for_updates
Agent↔agent RPC: ask a teammate and wait for their answer in one callask_agent
Attachments: diffs, logs, small files (≤256 KiB) on messages and tasksattach_file, get_attachment (+ attachments in post_message)
Generic locks with TTL over resources ("deploy:staging")acquire_lock, release_lock, list_locks
Presence (who is on which repo/branch doing what)heartbeat, list_agents
Shared team memory (notes with history)set_note, get_note, list_notes, search_notes, delete_note
Activity digest of the last N hoursteam_digest
Identitywhoami

Design decisions:

  • Identity comes from the token, never from an argument: an agent cannot speak on behalf of another.
  • Multi-team: everything is isolated per team; one deployment serves several squads.
  • Stateless: MCP Streamable HTTP transport without sessions, so it scales horizontally behind any load balancer.
  • Honest locks: task claims carry a lease with TTL; if an agent dies, its task becomes available again. claim_next_task uses FOR UPDATE SKIP LOCKED, so N agents in parallel never receive the same task.
  • Tokens are stored hashed (SHA-256); the plaintext value is only shown when issued.

Install

# macOS / Linux, via Homebrew
brew install joaquinbejar/tap/ai-crew-sync

# Debian / Ubuntu  (swap amd64 for arm64 on ARM machines)
curl -LO https://github.com/joaquinbejar/ai-crew-sync/releases/latest/download/ai-crew-sync_amd64.deb
sudo dpkg -i ai-crew-sync_amd64.deb

# RHEL / Rocky / Fedora  (or ai-crew-sync.aarch64.rpm)
sudo rpm -i https://github.com/joaquinbejar/ai-crew-sync/releases/latest/download/ai-crew-sync.x86_64.rpm

# From source, or as a container
cargo install ai-crew-sync
docker pull ghcr.io/joaquinbejar/ai-crew-sync:latest

One binary is the server, the operator CLI and the console client. The .deb and .rpm additionally install a hardened systemd unit and a root-readable environment file at /etc/ai-crew-sync/ai-crew-sync.env — the service is installed disabled, because it cannot work until DATABASE_URL points at a reachable Postgres:

sudo vi /etc/ai-crew-sync/ai-crew-sync.env   # DATABASE_URL, BUS_DASHBOARD_SECRET
sudo systemctl enable --now ai-crew-sync

Linux binaries are statically linked against musl, so they run on any distribution regardless of its glibc. Every package is installed and executed inside the distribution it targets before a release publishes it.

Quick start (docker-compose)

make up      # = docker compose -f Docker/docker-compose.yml up -d (pulls GHCR image)

Related servers

n8n

Updated today

by n8n-io

Fair-code workflow automation platform with native AI capabilities. Combine visual building with custom code, self-host or cloud, 400+ integrations.

204,501

mcp-server-fetch

OfficialUpdated 14d ago

by modelcontextprotocol

A Model Context Protocol server providing tools to fetch and convert web content for usage by LLMs

90,371

@modelcontextprotocol/server-everything

OfficialUpdated 14d ago

by modelcontextprotocol

MCP server that exercises all the features of the MCP protocol

90,371

mcp-server-git

OfficialUpdated 14d ago

by modelcontextprotocol

A Model Context Protocol server providing tools to read, search, and manipulate Git repositories programmatically via LLMs

90,371