Claude Code Team Collaboration Guide: Shared CLAUDE.md, MCP Config & Auto Code Review
🩺 Summary
Solo, Claude Code is a productivity beast. Two people? Start...
📝 Details
Solo, Claude Code is a productivity beast. Two people? Starts to get messy. Three or more—everyone has their own CLAUDE.md, MCP configs are a jumble, coding styles clash, and bugs get reverted across branches. This isn't Claude Code's fault—it's the lack of team discipline. Here's a battle-tested playbook to turn Claude Code from a personal tool into team infrastructure.
## 1. Centralize CLAUDE.md: One Source of Truth
CLAUDE.md is your project's behavior guide for Claude Code. **Rule #1: CLAUDE.md lives in the project root, version-controlled, no one modifies it solo.**
### 1.1 Standard Template
A team-ready CLAUDE.md should include:
```markdown
# Project Conventions
## Stack
- Frontend: React 18 + TypeScript + Tailwind
- Backend: Python 3.12 + FastAPI
- Database: PostgreSQL 16
- Package Manager: pnpm (frontend) / uv (backend)
## Code Style
- TypeScript: strict mode
- Python: ruff formatter, line-length=100
- All API returns must include type definitions
- Components: PascalCase, utilities: camelCase
## Testing
- Every new feature needs unit tests
- Minimum 80% coverage
- Test files go in `__tests__/`
## Commit Convention
- feat: new feature
- fix: bug fix
- refactor: code change
- docs: documentation
- test: testing
```
### 1.2 Git Hook Protection
Commit CLAUDE.md to Git and add a pre-commit hook:
```bash
# .git/hooks/pre-commit
if git diff --cached --name-only | grep -q "CLAUDE.md"; then
echo "⚠️ CLAUDE.md modified—discuss changes with the team first"
exit 1
fi
```
Now everyone's Claude Code behaves the same way. No more "A tells Claude to use tabs while B tells it to use spaces."
## 2. Share MCP Config: Project-Level > Personal
MCP (Model Context Protocol) extends Claude Code's capabilities. The team pitfall: **each member installs different MCP servers, so Claude generates code depending on different external capabilities.**
### 2.1 Project-Level MCP Config
Claude Code supports project-level `.mcp.json`:
```json
{
"mcpServers": {
"playwright": {
"command": "npx",
"args": ["@playwright/mcp"]
},
"git": {
"command": "npx",
"args": ["@anthropic-ai/mcp-git"]
}
}
}
```
Check this into Git. Now everyone's Claude has the exact same toolset.
### 2.2 Declare MCP Requirements in CLAUDE.md
```markdown
## MCP Config
- Default MCP servers: playwright (browser testing), git (version queries)
- Adding a new MCP server requires team discussion
- Third-party MCP servers must be documented with source and purpose
```
### 2.3 Recommended Team MCP Servers
| MCP Server | Purpose | Pick |
|:----------|:--------|:----:|
| `@playwright/mcp` | Browser testing | ⭐ |
| `@anthropic-ai/mcp-git` | Git operations | ⭐ |
| `@modelcontextprotocol/mcp-sqlite` | Database queries | |
| `@anthropic-ai/mcp-filesystem` | File operations | ⭐ |
| `@modelcontextprotocol/mcp-github` | GitHub API | |
## 3. Automate Code Review
Claude Code's most underrated team feature: **automated code review.**
### 3.1 Local Review Command
Before pushing a PR:
```bash
claude -p "Review the diff between current branch and main. Check for: 1) CLAUDE.md violations 2) potential bugs 3) missing type definitions 4) outdated comments"
```
Wrap it in a Makefile:
```makefile
review:
git diff main...HEAD | claude -p "Review against @CLAUDE.md rules"
```
### 3.2 CI Auto-Review with GitHub Actions
```yaml
name: Claude Code Review
on: [pull_request]
jobs:
review:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Claude Review
env:
ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }}
run: |
git diff origin/main...HEAD | \
npx @anthropic-ai/claude-code review - \
--context CLAUDE.md \
--output review.md
- uses: actions/upload-artifact@v4
with:
name: claude-review
path: review.md
```
### 3.3 Review Checklist in CLAUDE.md
```markdown
## Review Checklist
### Security
- [ ] No hardcoded API keys
- [ ] Parameterized SQL queries
- [ ] Input validation
- [ ] No known vulnerable dependencies
### Quality
- [ ] Unit tests included
- [ ] Error handling complete
- [ ] Adequate logging
- [ ] No magic numbers
### Performance
- [ ] No unnecessary I/O in loops
- [ ] Caching considered
- [ ] No N+1 database queries
```
## 4. Real Team Workflow
A 3-person team's typical Claude Code day:
| Time | Member A | Member B | Member C |
|:----|:---------|:---------|:---------|
| 09:00 | `claude "look at issue #42, add export feature"` | `claude "review PR #40"` | `claude "write unit tests"` |
| 10:00 | Claude generates code, git commit | Submits review | Tests pass, 85% coverage |
| 11:00 | Push PR, CI auto-reviews | Starts new feature | Reviews PR #41 |
| 14:00 | Handles review feedback | `claude "fix review issues"` | Merges PR #40 |
Key takeaways:
- **Unified CLAUDE.md** → consistent code style across the team
- **Shared MCP config** → identical Claude behavior everywhere
- **Automated review** → human reviewers focus on business logic, not formatting
## 5. Caveats
1. **CLAUDE.md evolves** — update it as the project grows, but discuss changes first
2. **MCP server security** — don't install unvetted third-party MCP servers
3. **AI review ≠ final review** — catches style issues, but business correctness needs a human
4. **Introduce gradually** — start with unified CLAUDE.md for a week, add auto-review later
5. **Lowered communication overhead, not eliminated** — Claude handles formatting, humans debate design
---
*More from the Claude Code series:*
- [Hands-on: Build a Web App in 10 Minutes with AI](/post/claude-code-todo-project-2026)
- [Advanced: CLAUDE.md & MCP Configuration](/post/claude-code-advanced-2026)
- [Pitfalls: 10 Mistakes Beginners Make](/post/claude-code-pitfalls-2026)
- [2026 AI Coding Tools Buyers Guide](/post/ai-coding-tools-guide-2026)
- [Can Claude Code Be Used in Hong Kong?](/post/claude-code-xianggang-2026)
💬 Comments (0)