agent-team-mcp
A reusable AI software development team built on MCP. 13 specialized agents (Project Manager, Backend, Frontend, QA, Security, DevOps, UX, and more) collaborate via shared SQLite state. Exposes 44 MCP tools across 12 domains. All discussions and decisions are stored in the database so agents get back up to speed immediately when re-loaded.
README
AgentTeam
AgentTeam is a reusable AI software development team built on the Model Context Protocol (MCP). Thirteen specialized agents — Product Manager, Project Manager, UX Researcher, UX/UI Designer, Frontend, Backend, Full-Stack, Mobile, DevOps, QA, Security, Data Engineer, and Data Scientist — collaborate on software projects through a shared SQLite database, each constrained strictly to their role.
The Project Manager orchestrates: it creates the project, recruits the specialists it needs, breaks work into tasks, and returns a dispatch manifest — a JSON array that the calling session uses to spawn each specialist as an independent parallel agent. Specialists read the project summary on joining, log their work and decisions as they go, and share structured research artifacts so no agent re-researches what another has already found.
All project state is persisted in SQLite (44 MCP tools across 12 domains: projects, summaries, team members, tasks, work entries, task comments, discussions, decisions, artifacts, and a user journal). Projects are UUID-scoped and lifecycle-managed (active → paused → archived → closed), so teams can pause and resume work across sessions without losing context.
Designed to be called from any Claude Code project via MCP — point your claude_desktop_config.json at the server and any project can spin up a full team.
User Journal
As the team works, the Project Manager captures your decisions, preferences, and reasoning from the conversation into a persistent user journal — things like devices considered and rejected, cost constraints, form factor preferences, and next-step intentions. These are stored as structured entries scoped to the project (or globally, for cross-project preferences) and reviewed at close-out so nothing important is lost between sessions. The journal is queryable via list_journal_entries so future agents can read what past conversations established before starting new work.
Project Structure
AgentTeam/
├── agents/ # Agent prompt files — one per role
│ ├── _base-protocol.md # Shared team protocol, constraints, efficiency rules
│ ├── project-manager.md
│ ├── product-manager.md
│ ├── backend-developer.md
│ └── ...
├── mcp-server/ # TypeScript MCP server
│ └── src/
│ ├── index.ts # Server entry — all 44 tools registered
│ ├── db/
│ │ ├── schema.ts # Table definitions and migrations
│ │ └── connection.ts
│ └── tools/ # One file per domain
└── docs/ # Design specs and reference guides
MCP Tool Domains
| Domain | Tools |
|---|---|
| Projects | create_project, get_project, update_project_status, list_projects, delete_project |
| Summaries | update_project_summary, get_project_summary, get_summary_version, list_summary_history |
| Team Members | add_team_member, remove_team_member, list_team_members |
| Tasks | create_task, update_task, get_task, list_tasks |
| Work Entries | log_work, get_my_work, get_work_history |
| Task Comments | add_task_comment, list_task_comments, list_my_comments |
| Discussions | create_discussion, add_discussion_participant, add_discussion_message, update_discussion_summary, get_discussion, list_discussions |
| Decisions | log_decision, list_decisions, get_decision |
| Artifacts | share_artifact, update_artifact, list_artifacts, get_artifact |
| Team Protocol | get_team_protocol |
| User Journal | log_journal_entry, list_journal_entries |
| User Questions | ask_user_question, list_user_questions, answer_user_question |
| Expansion Requests | request_team_expansion, list_expansion_requests, resolve_expansion_request |
Getting Started
1. Install the MCP server
One command (recommended):
claude mcp add agent-team -- npx agent-team-mcp
That's it. Claude Code will now launch the server automatically when needed.
Or manually edit your MCP config (~/.claude/settings.json or project .claude/settings.json):
{
"mcpServers": {
"agent-team": {
"command": "npx",
"args": ["agent-team-mcp"]
}
}
}
Or from a local clone:
git clone https://github.com/RichardLemmon/AgentTeam.git
cd AgentTeam/mcp-server
npm install
npm run build
claude mcp add agent-team -- node /path/to/AgentTeam/mcp-server/dist/index.js
Token-Efficient Architecture
Agent prompt files contain only the role-specific Identity section (~100 words each). Shared team protocol, constraints, and efficiency rules live in a single agents/_base-protocol.md file, served on demand via the get_team_protocol MCP tool. This lazy-loading approach saves ~6,000 words of context when spawning a full team compared to duplicating the protocol in every agent file. The artifact JSON schema is embedded in the share_artifact tool description so agents discover it from the tool itself.
2. Install the /team skill (optional, Claude Code only)
Install the /team slash command globally so it works in any project:
mkdir -p ~/.claude/skills/team && npx agent-team-mcp --print-skill > ~/.claude/skills/team/SKILL.md
Or copy it manually from the repo:
mkdir -p ~/.claude/skills/team
curl -o ~/.claude/skills/team/SKILL.md https://raw.githubusercontent.com/RichardLemmon/AgentTeam/main/.claude/skills/team/SKILL.md
Then use /team <goal> to spin up a full team from any project.
Without the skill, you can still use AgentTeam — just tell Claude to "spin up the team" and the MCP server's get_orchestration_instructions tool will guide it through the process.
Quick Start
With the /team skill (Claude Code):
/team build me a REST API for task management
Without the skill:
"Spin up the Project Manager and ask them to investigate [subject]"
Manage projects:
/team --projects # list all projects
/team --projects active # filter by status
/team --projects delete <name> # delete a project
How It Works
- PM sets up the project — creates the project record, recruits the specialists it needs, creates tasks, writes the project summary, and returns a dispatch manifest.
- Calling session spawns specialists — each specialist in the manifest is launched as an independent agent with its
project_idandmember_id. - Specialists work in parallel — each reads the project summary, logs work entries, shares artifacts, and communicates via task comments and discussions.
- State persists across sessions — any agent can rejoin a project by reading the current summary and picking up where the team left off.
- PM closes out — on completion, the PM writes a close-out summary and logs key user decisions and preferences to the journal for future reference.
Recommended Servers
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.
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.
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.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
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.
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.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
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.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.