brew install mcs-cli/tap/mcsBrowse available packs at techpacks.mcs-cli.dev, then add them:
mcs pack add owner/pack-namecd ~/Developer/my-project
mcs syncmcs doctorThat's it. Your MCP servers, plugins, hooks, skills, commands, agents, settings, and templates are all in place.
Prefer a declarative setup? Drop a mcs.yaml at the project root and run mcs bootstrap:
# ./mcs.yaml
schemaVersion: 1
packs:
- source: mcs-cli/dev
ref: main
values:
BRANCH_PREFIX: feature
- source: mcs-cli/memorymcs bootstrapBootstrap adds any missing packs, seeds prompt answers from values, and syncs the project. Add --trust-all to approve packs without the interactive trust prompt, for any run with no terminal to answer it. See mcs bootstrap for the full reference.
You've spent hours getting Claude Code just right β MCP servers, plugins, hooks, skills, custom commands, fine-tuned settings. Then:
- π₯οΈ New machine? Start over from scratch.
- π₯ Onboarding a teammate? "Just follow this 47-step wiki page."
- π Different projects? Copy-paste configs, hope nothing drifts.
- π Something broke? Good luck figuring out what changed.
mcs is a configuration engine for Claude Code β like Ansible for your AI development environment. Package everything into shareable tech packs (Git repos with a techpack.yaml manifest), then sync them across any project, any machine, in seconds.
Without mcs |
With mcs |
|---|---|
| Install MCP servers one by one | mcs pack add + mcs sync |
Hand-edit settings.json per project |
Managed settings composition |
| Copy hooks between projects manually | Auto-installed per-project from packs |
| Configuration drifts silently | mcs doctor --fix detects and repairs |
| Rebuild from memory on new machines | Fully reproducible in minutes |
| No way to share your setup | Push a pack, anyone can mcs pack add it |
Packs are modular β mix and match what you need instead of one monolith. Browse the full catalog, search by category, and find install commands:
π‘ Can't find what you need? Build your own β see Creating Tech Packs.
Tech Packs mcs sync Your Project
(Git repos) -----> (engine) -----> (configured)
|
.---------.
| |
v v
Per-Project Global
artifacts artifacts
- Select which packs to apply (interactive multi-select or
--all) - Resolve prompts (auto-detect project files, ask for config values)
- Install artifacts to the right locations (skills, hooks, commands, agents, settings, MCP servers)
- Track everything for convergence β re-running
mcs syncadds what's missing, removes what's deselected, and updates what changed
Use mcs sync --global for global-scope components (Homebrew packages, plugins, global MCP servers). See Architecture for artifact locations and the full sync flow.
A tech pack is a Git repo with a techpack.yaml manifest. It can bundle MCP servers, plugins, hooks, skills, commands, agents, settings, templates, and doctor checks β anything mcs can install, verify, and uninstall.
Use mcs pack validate to check your pack for structural errors and best practices before sharing.
π Full guide: Creating Tech Packs Β· Schema reference: techpack-schema.md
- π§βπ» Solo Developer β New Mac? One
mcs pack add+mcs syncand your entire Claude Code environment is back. No wiki, no notes, no memory required. - π₯ Teams β Create a team pack with your org's MCP servers, approved plugins, and coding standards. Every developer gets the same setup with
mcs sync --all. - π Open Source β Use
mcs exportto create a tech pack from your repo's config. Contributors runmcs syncand get the right MCP servers, skills, and conventions automatically. - π§ͺ Experimentation β Try a different set of MCP servers, swap packs, roll back.
mcsconverges cleanly β deselected packs are fully removed, no leftovers.
mcs is designed to be non-destructive and transparent. Timestamped backups before modifying user content, --dry-run to preview changes, section markers to preserve your edits in CLAUDE.local.md, and SHA-256 trust verification for pack scripts.
π Full details: Architecture > Safety & Trust
After mcs sync, want to confirm everything landed correctly? Poirot is a native macOS companion that gives you a visual overview of your Claude Code configuration β MCP servers, settings, sessions, and more β all in one place.
The perfect complement to mcs: configure your environment with mcs, then use Poirot to see exactly what's installed and running.
| Document | Description |
|---|---|
| π CLI Reference | Complete command reference (sync, pack, doctor, export, cleanup, check-updates, config) |
| π Creating Tech Packs | Step-by-step guide to building your first pack |
| π Tech Pack Schema | Complete techpack.yaml field reference |
| ποΈ Architecture | Internal design, sync flow, safety guarantees, and extension points |
| π§ Troubleshooting | Common issues and fixes |
swift build # Build
swift test # Run tests
swift build -c release --arch arm64 --arch x86_64 # Universal binarySee Architecture for project structure and design decisions.
Tech pack ideas and engine improvements are welcome!
- Fork the repo
- Create a feature branch
- Run
swift test - Open a PR
For building new packs, start with Creating Tech Packs.
If mcs saves you time, consider sponsoring the project.
MIT License Β· Made with β€οΈ by Bruno Guidolim Β· mcs-cli