Skip to content

How to Use MCP with Multiple Projects

This guide shows you how to use a single Aichaku MCP server installation across all your projects. You’ll learn the global installation model and how to manage MCP for multiple projects efficiently.

Ensure you have:

  • Aichaku installed on your system
  • Claude Code configured and working
  • Access to multiple projects that need code review
  • Basic understanding of command-line operations

The Aichaku MCP server works as a global service, not a per-project tool. This means:

  • Install once - The MCP server lives in ~/.aichaku/mcp-server/
  • Use everywhere - All projects on your machine can use the same server
  • Single configuration - Configure Claude Code once for all projects
  • Automatic availability - Projects with Aichaku can use the MCP server
  • No port conflicts - MCP uses stdio by default (HTTP/SSE mode available on port 7182)
graph TB
subgraph "Your Machine"
MCP[MCP Server<br/>~/.aichaku/mcp-server/]
subgraph "Claude Code"
CC[Claude Client]
end
subgraph "Projects"
P1[Project A<br/>.claude/]
P2[Project B<br/>.claude/]
P3[Project C<br/>.claude/]
end
end
CC -->|stdio| MCP
MCP -->|reads| P1
MCP -->|reads| P2
MCP -->|reads| P3

Key points:

  • Claude Code spawns the MCP server as needed
  • Communication uses stdio (no network ports)
  • The server reads project configurations dynamically
  • No background services or daemons required

If you haven’t already, install the MCP server globally:

Terminal window
aichaku mcp --install

This installs to ~/.aichaku/mcp-server/ - a location accessible from any project.

Add the MCP configuration to Claude Code:

Terminal window
aichaku mcp --config

This configuration in Claude’s settings file works for all projects:

{
"mcpServers": {
"aichaku-reviewer": {
"command": "/Users/yourname/.aichaku/mcp-server/mcp-code-reviewer",
"args": [],
"env": {}
}
}
}

For each project that needs code review, initialize Aichaku:

Terminal window
cd /path/to/project-a
aichaku init
aichaku integrate
aichaku standards --add nist-csf,tdd
cd /path/to/project-b
aichaku init
aichaku integrate
aichaku standards --add owasp-web,solid

Each project gets its own:

  • .claude/ directory with methodologies
  • .claude/.aichaku-standards.json with selected standards
  • Custom CLAUDE.md with project rules

How the MCP server finds project configuration

Section titled “How the MCP server finds project configuration”

When Claude asks the MCP server to review a file, the server:

  1. Identifies the project root by looking for .claude/ directory
  2. Reads project standards from .claude/.aichaku-standards.json
  3. Detects methodologies from project structure
  4. Applies the correct rules for that specific project

Example project identification:

/Users/yourname/projects/web-app/src/auth.ts
Finds .claude/ here
Reads this project's standards

Each project can have completely different standards:

Terminal window
cd ~/projects/web-app
aichaku standards --add owasp-web,clean-arch,tdd

Configuration in .claude/.aichaku-standards.json:

{
"version": "1.0.0",
"selected": ["owasp-web", "clean-arch", "tdd"],
"methodologies": ["scrum"]
}
Terminal window
cd ~/projects/cli-tool
aichaku standards --add nist-csf,solid,conventional-commits

Configuration in .claude/.aichaku-standards.json:

{
"version": "1.0.0",
"selected": ["nist-csf", "solid", "conventional-commits"],
"methodologies": ["shape-up"]
}
Terminal window
cd ~/projects/microservice
aichaku standards --add 15-factor,dora,test-pyramid

The MCP server automatically applies the right standards for each project.

For monorepos with multiple sub-projects:

monorepo/
├── .claude/ # Shared configuration
│ └── .aichaku-standards.json
├── packages/
│ ├── frontend/
│ ├── backend/
│ └── shared/

All packages share the same standards.

monorepo/
├── packages/
│ ├── frontend/
│ │ └── .claude/ # Frontend-specific standards
│ ├── backend/
│ │ └── .claude/ # Backend-specific standards
│ └── shared/
│ └── .claude/ # Shared library standards

Each package has its own standards.

The MCP server handles project switching automatically:

Terminal window
# Work on project A
cd ~/projects/web-app
# Ask Claude to review auth.ts - uses web-app standards
# Switch to project B
cd ~/projects/cli-tool
# Ask Claude to review parser.ts - uses cli-tool standards
# No restart needed - it just works!

Using HTTP/SSE mode for better performance

Section titled “Using HTTP/SSE mode for better performance”

When you frequently switch between projects or run multiple terminals:

Terminal window
# Start the shared HTTP/SSE server once
aichaku mcp --start-server
# Now in any project, reviews are faster:
cd ~/projects/web-app
aichaku review src/auth.ts # Uses shared server automatically
# In another terminal simultaneously
cd ~/projects/cli-tool
aichaku review src/parser.ts # Also uses the same shared server

The HTTP/SSE server:

  • Eliminates process startup time
  • Handles multiple concurrent requests
  • Maintains project isolation
  • Runs on port 7182

When updating Aichaku, update the MCP server for all projects:

Terminal window
# Check current version
aichaku mcp --status
# Update Aichaku
aichaku upgrade
# Reinstall MCP server with new version
aichaku mcp --install

All projects automatically use the updated server.

Problem: MCP server doesn’t find project configuration

Solution: Ensure each project has:

project-root/
├── .claude/ # Required
│ ├── .aichaku-standards.json # Required for standards
│ └── CLAUDE.md # Required for methodology configuration

Problem: Project A standards used in Project B

Solution: Check the working directory:

  1. Ensure you’re in the correct project root
  2. Run pwd to verify location
  3. Check .claude/.aichaku-standards.json exists

The MCP server is stateless and lightweight:

  • No background processes
  • No memory usage when not reviewing
  • Fast startup (< 100ms)
  • No cleanup needed

Create a script for new projects:

init-aichaku-project.sh
#!/bin/bash
aichaku init
aichaku integrate
aichaku standards --add nist-csf,tdd,conventional-commits
echo "✅ Aichaku configured with security-first standards"

In each project’s README:

## Code Standards
This project uses Aichaku with:
- NIST CSF - Security framework
- TDD - Test-driven development
- Conventional Commits - Standardized commit messages
Run `aichaku standards --list --selected` to see current standards.

Share standards across team:

Terminal window
# Export standards
cat .claude/.aichaku-standards.json > project-standards.json
# Import on teammate's machine
cp project-standards.json .claude/.aichaku-standards.json

While MCP is for local development, document standards for CI:

.github/workflows/standards.yml
name: Verify Standards
on: [push]
jobs:
check:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Check standards file exists
run: test -f .claude/.aichaku-standards.json

The MCP server installation is secure because:

  • User-specific - Installed in your home directory
  • No elevated privileges - Runs as your user
  • No network access - Communicates via stdio only
  • Read-only - Only reads files, never modifies

Each project is isolated:

  • Standards are project-specific
  • No cross-project data sharing
  • File access limited to project directory
  • No persistent state between reviews

Track MCP usage across projects:

Terminal window
# See all projects with Aichaku
find ~ -maxdepth 10 -name ".aichaku-standards.json" -type f 2>/dev/null | \
xargs -I {} dirname {} | \
xargs -I {} dirname {}

The Aichaku MCP server’s global installation model provides:

Simplicity - Install once, use everywhere ✅ Flexibility - Different standards per project ✅ Performance - No overhead or background services ✅ Security - Isolated, read-only operation ✅ Maintainability - Single binary to update

Remember: Think of the MCP server as a tool like git or npm - installed globally but aware of project context.