mcp-multi-agent
Connects to Confluence to supply internal documentation as context for the agents alongside Jira tickets and code.
Pulls repository and pull request context from GitHub: checks whether a ticket's feature/<ticket> branch already has an open PR (to route to the reviewer agent), reads PR diffs, and can post a drafted review back on the PR when explicitly asked (post: true).
Retrieves ticket context from Jira (Jira Cloud, API v3) — the ticket text, its status and its acceptance criteria — so the router can decide which agent to run and the agents can plan work against the ticket's requirements.
Fetches SonarQube issues for the code under review or refactor, including issues on newly added lines, so the reviewer can flag them in a review and the refactor agent can plan a fix that preserves the public API.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@mcp-multi-agentdo PROJ-142"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
mcp-multi-agent
An MCP server that gives your AI editor a small team: a BA, a developer, a reviewer and a refactor agent. You give it a ticket number; it works out which agent is needed, pulls the context from Jira, GitHub and SonarQube in parallel, and hands the model in your editor a short, precise plan. The project's own rules files decide how the agents behave.
What a run looks like, summarised:
you › do PROJ-142
router no open PR · ticket has acceptance criteria → developer
jira PROJ-142 "Discount codes at checkout" · 3 acceptance criteria
sandbox git worktree ../sandbox-PROJ-142 on feature/PROJ-142
rules AGENTS.md (from .mcp-agent.json) + 4 learned rules
context 3 files distilled to a skeleton for the model
plan .mcp-plan-PROJ-142.md → your editor implements it, you approve the editsIt is not a model. It is the orchestration around one: what to read, where to work, which rules apply and what must never happen.
Why
AI coding sessions tend to go like this: paste the ticket, paste some files, repeat the team's rules for the hundredth time, and hope the agent doesn't touch something it shouldn't. This server makes the routine parts automatic and the dangerous parts impossible:
One command per ticket.
do PROJ-142picks the agent from the state of the work.The team's rules, from the team's files.
AGENTS.md,CLAUDE.md,.cursorrules,.clinerules, Copilot instructions: the agents read the files you choose, fresh on every run.A sandbox per ticket. Each ticket gets its own git worktree and branch; your working copy is never touched.
Guardrails that are code, not prompts. Commands are checked against an allowlist before they run.
Less context, same meaning. Large files reach the model as a skeleton of types and signatures.
Related MCP server: aico
The agents
Agent | When the router picks it | What it does |
BA | The ticket has no acceptance criteria, or they are vague or still open | Extracts the criteria (a section, Given/When/Then or a checklist) and lists the questions to settle with the product owner: untestable words ("fast", "intuitive"), TBDs, UI work without a design, no error cases. |
Developer | The ticket is ready and there is no PR yet | Creates the sandbox, applies the rules, distills the files in scope and writes a plan with the acceptance criteria as a checklist. Your editor makes the edits, with your approval. |
Reviewer |
| Reads the diff, Sonar issues and the acceptance criteria in parallel, runs checks on the added lines and drafts a review. It returns a preview; it posts on the PR only with |
Refactor | The ticket is labelled | Distills the files, pulls Sonar issues and plans a refactor that keeps the public API. |
Squad |
| Developer and reviewer in parallel. |
Every decision can be forced with a flag (ba, refactor, squad).
Rules files
The agents follow the rules your project already keeps for AI tools. Which files, in order:
rulesFilespassed to the toolrulesFilesin.mcp-agent.jsonat the project root (commit it, so the whole team gets the same rules)rulesFilessaved by the setup script, for that projectevery known rules file found in the project:
.clinerules,AGENTS.md,CLAUDE.md,.cursorrules,.cursor/rules/,.windsurfrules,.github/copilot-instructions.md,GEMINI.md
// .mcp-agent.json
{ "rulesFiles": ["AGENTS.md", "docs/frontend-guidelines.md"] }On top of that, learned rules: when you reject something ("don't use any"), capture_behavior_feedback stores it as a rule for that project. Learned rules are one line each, at most 300 characters and 50 per project (the least used go first), and you can list and remove them. show_rules tells you exactly what the agents will follow and why.
Safety
Sandbox: a git worktree per ticket at
../sandbox-<ticket>, onfeature/<ticket>.The server itself only runs
git, without a shell, with arguments as an array, an allowlist of subcommands, and every absolute path scoped to the project.check_commandlets the editor ask before running anything. Known programs only (git, npm, node, tsc, eslint, test runners, read-only file tools); blocked: deleting files, force pushes, pushing tomain,reset --hard, publishing packages,npxof arbitrary packages, piping into a shell, command substitution, and any path outside the sandbox.Ticket text is input, not instructions: file paths taken from a ticket cannot leave the sandbox, and learned rules are sanitized to a single line before they reach a prompt.
Reviews are previews by default. Nothing is posted on a PR unless you ask.
Secrets stay local: tokens live in your editor's MCP config; logs redact anything that looks like a credential.
Auditable: every step, command and downstream call is logged;
parse_audit_logandgenerate_task_metrics_reportshow what happened and roughly how much context it sent.
Quick start
Running the server requires a licence from the author (see Licence). These steps are for licensed users.
Requirements: Node 18+, git, an editor with MCP support (Cline, Cursor, Claude Desktop, Claude Code, Codex CLI), and tokens for the services you use.
git clone <this repo> mcp-multi-agent
cd mcp-multi-agent
npm install
npm run setupnpm run setup builds the server and asks: which project, which of its rules files the agents should follow (or creates an AGENTS.md starter), which editor, which services, and the tokens. It registers the server in your editor and saves defaults so do PROJ-123 needs nothing else. Restart the editor and ask it to run do with a ticket id.
Manual setup and every option: docs/setup.md.
Tools
Tool | Purpose |
| One entry point: pick and run the right agent for a ticket. |
| Run an agent directly. |
| Which rules files are in use and why, which exist, and the learned rules. |
| Manage learned rules. |
| Allowed or not, and why, before running a shell command in a sandbox. |
| What happened, and the estimated context per session. |
| Lower-level building blocks. |
How it works
editor (Cline · Cursor · Claude · Codex)
│ stdio
▼
mcp-multi-agent ── router ── BA · developer · reviewer · refactor
│ │
│ ├─ rules rules files + learned rules → prompt
│ ├─ sandbox git worktree, command allowlist
│ ├─ distiller TypeScript-compiler skeletons
│ └─ logger audit log, redaction, session report
▼ stdio, spawned on demand and pooled
GitHub MCP · Jira MCP · SonarQube MCP · Confluence MCP · Chrome DevTools MCPMore in docs/architecture.md.
Development
npm install
npm run build
npm test # node:test, no extra test frameworkTests cover the router, the BA analysis, the sandbox (including real worktrees and the command policy), the distiller, rules loading and learned rules, and log redaction. CI runs them on Node 18, 20 and 22.
Limitations
The BA analysis is deterministic text analysis, not a model. It finds what is missing; it does not invent requirements.
Token figures are estimates (about 4 characters per token): the model runs in your editor, so the server never sees real counts.
check_commandonly protects you if the editor calls it. Keep the editor's own command approval on.The Jira integration uses the REST passthrough of
@aashari/mcp-server-atlassian-jira(Jira Cloud, API v3).The npm builds of the GitHub and SonarQube MCP servers are deprecated upstream. They are pinned to their last versions here; moving to GitHub's and SonarSource's official servers is next on the list.
Licence
© 2026 Alex Cenusa. All rights reserved. The code is public so it can be read; using, copying, modifying or distributing it requires my written permission. See LICENSE.
This server cannot be deployed
Maintenance
Related MCP Connectors
Assign Linear, Jira or GitHub issues to an AI coding agent team that plans, builds, reviews, tests.
One shared project for a team's coding agents: decisions, a task board and handoffs.
AI work orchestration for plans, tasks, teams, and coding-agent dispatch.
Hand tasks, bugs and finished work to AI coding agents, and get back a write-up with evidence.
Related MCP Servers
- AlicenseAqualityCmaintenanceEnables multi-model code review by fanning out issues to multiple LLMs simultaneously, diffing their unique insights, optionally running debate rounds, and dispatching subagents to implement fixes with git commits.72MIT
- FlicenseNot gradedqualityCmaintenanceEnables orchestrating multi-agent AI coding workflows with Git worktree isolation, parallel testing, and security scanning via the Model Context Protocol.-
- AlicenseNot gradedqualityDmaintenanceEnables autonomous software-engineering tasks in a repository by coordinating filesystem, GitHub, database, and CI/CD tools through MCP, with a deterministic safety boundary for permissions, validation, timeouts, duplicate protection, and test verification.MIT
- AlicenseNot gradedqualityBmaintenanceRoutes each coding task to the best-fitting spec-driven-development framework with explainable rules, then enforces deterministic lifecycle gate checks between phases so progress can't skip required artifacts or evidence. Assembles per-phase context packs from a company knowledge base with app-scoped memory and cross-app lookup, while the host agent remains the only actor that edits files or runs tests.MIT