Claude-Project-Coordinator
Claude Project Coordinator is a Swift-powered MCP (Model Context Protocol) server designed to streamline multi-project Xcode development. It lets you track project status, auto-detect frameworks, search code patterns, and maintain a structured development knowledge base — all locally, with Claude Desktop as your assistant.
Documentation
CPC is an MCP server that gives Claude a structured, on-disk view of your projects: status, notes, tech stack, activity, and health. It runs on macOS beside Claude Desktop, Cursor, or Claude Code. Data never leaves your machine.
v1.4.0 · official Swift MCP SDK · MIT · local JSON knowledge base
Who is this for?
Pick the path that matches you. Same binary, different first questions.
1. Multi-project Swift hobbyist
You have several apps and packages. Context switches burn time, and you forget which repo was mid-refactor.
Start with:
- "Add my WeatherApp at ~/Developer/WeatherApp"
- "Show me all my tracked projects"
- "Which projects need my attention?"
- "Update WeatherApp status to 'Core Data models half done'"
What you get: a living roster with status, notes, auto-detected tech (SwiftUI, SPM, Xcode project/workspace), and a health score so quiet projects surface again.
2. Claude Desktop daily driver
Claude is your coding desk. You want continuity between chats without pasting the same project list.
Start with:
- "List my projects and their current status"
- "What's going on with TodoApp?"
- "Find all SwiftUI patterns we've stored"
- "Show my project activity this week"
What you get: Claude can call nine MCP tools against your KnowledgeBase instead of guessing from conversation memory.
3. Cursor or Claude Code agent user
Agents write code well but lose the portfolio view. You want the agent to know *which* project it is in and whether that project is healthy.
Start with:
- Wire CPC into Cursor / Claude Code MCP settings (see Installation)
- "Get project status for Claude-Project-Coordinator"
- "Get technology trends across my tracked projects"
- "Show a 14-day activity heat map"
What you get: project health and timelines as tool results the agent can act on, next to the files it already sees.
4. Privacy-first / local-only setup
You will not send a project inventory to a cloud PM tool. Everything should live beside the binary.
Start with:
- Build from source, point MCP at `.build/release/project-coordinator`
- Optional: `CPC_KNOWLEDGE_BASE=~/Library/Application Support/CPC` for data outside the git tree
- Keep `KnowledgeBase/projects/*.json` out of public repos (already gitignored)
What you get: JSON on disk, path allowlisting, no account, no telemetry.
5. Already using a memory MCP
You store decisions and people in Memory Service (or similar). You do not want a second conversation dump.
How they fit together:
| CPC | Memory MCP | |
|---|---|---|
| Job | Project artefacts and status | Conversational context and decisions |
| Shape | Structured tools + JSON files | Notes, tags, search |
| Ask | "Which projects are stale?" | "What did we decide about onboarding?" |
Use both. Do not replace one with the other.
Full feature list
Project desk
| Capability | Detail |
|---|---|
| Track many projects | Name, path, description, status, notes, current tasks, last modified |
| Add from a path | Validates path, scans the folder, stores a JSON record |
| Update status / notes | Keeps the desk current without a separate app |
| List everything | One prompt → full roster with tech stack |
| Per-project deep dive | Status, notes, tasks, path, detected technologies |
Auto-detection
When you add a project, CPC inspects the folder and tags what it finds:
- Swift Package Manager (`Package.swift`)
- Xcode project (`.xcodeproj`)
- Xcode workspace (`.xcworkspace`)
- SwiftUI (`import SwiftUI` in scanned Swift files)
- Falls back to `Swift` when nothing else matches
Search and knowledge base
| Capability | Detail |
|---|---|
| Pattern search | Search across tracked projects and KnowledgeBase markdown |
| Built-in guides | Swift patterns, SwiftUI practices, Xcode shortcuts, troubleshooting |
| Templates | Starter docs under `KnowledgeBase/templates/` |
| Your own docs | Drop markdown into `patterns/`, `tools/`, or `templates/` and search will pick it up |
Analytics (automatic)
No separate timer app. Status updates and tool use feed analytics in the background.
| Tool | What it answers |
|---|---|
| `get_project_timeline` | How long has this project been in each status? How old is it? |
| `get_activity_heatmap` | Which projects were hot in the last N days? |
| `get_technology_trends` | Which frameworks dominate? What is emerging? |
| `get_project_health` | 0–100 score plus recommendations (activity, freshness, docs, tasks) |
Sample chat output: ANALYTICS-EXAMPLES.md.
Safety and storage
| Capability | Detail |
|---|---|
| Local JSON | `KnowledgeBase/projects/` and analytics files on your Mac |
| Path allowlist | Only under configured roots (default: Developer, Documents, GitHub, Projects, …) |
| Input limits | Name, path, notes, and search length capped |
| Injection checks | Search patterns screened for shell-like payloads |
| Env override | `CPC_KNOWLEDGE_BASE` for a custom data directory |
| Stdio-safe logs | Diagnostics go to stderr only (MCP hosts own stdout) |
All MCP tools
| Tool | Parameters | Purpose |
|---|---|---|
| `list_projects` | — | List every tracked project |
| `add_project` | `name`, `path`, optional `description` | Register a project and auto-detect tech |
| `get_project_status` | `projectName` | Full detail for one project |
| `update_project_status` | `projectName`, optional `status`, `notes` | Update the desk entry |
| `search_code_patterns` | `pattern` | Search projects + knowledge base |
| `get_project_timeline` | `projectName` | Status history and durations |
| `get_activity_heatmap` | optional `days` (default 7) | Activity heat map |
| `get_technology_trends` | — | Framework usage across the portfolio |
| `get_project_health` | — | Health scores and recommendations |
You talk in natural language. The host maps your words onto these tools.
Example workflow
You: Add my new SwiftUI project FinanceTracker at ~/Developer/FinanceTracker
Claude: Successfully added… Detected tech stack: Swift Package Manager, SwiftUI
You: Update FinanceTracker status to 'Working on Core Data models'
Claude: Updated.
You: Which of my projects use Core Data or SwiftUI?
Claude: [search + roster]
You: Which projects need my attention?
Claude: [health report with scores and recommendations]
You: Show my activity this week
Claude: [heat map]Prerequisites
- macOS 13+
- Swift 6.0+ (Xcode 16+)
- An MCP host: Claude Desktop, Cursor, or Claude Code
Installation
Build from source
git clone https://github.com/M-Pineapple/Claude-Project-Coordinator.git
cd Claude-Project-Coordinator
swift build -c releaseExecutable:
.build/release/project-coordinatorClaude Desktop
Settings → Developer → Model Context Protocol:
{
"mcpServers": {
"project-coordinator": {
"command": "/absolute/path/to/Claude-Project-Coordinator/.build/release/project-coordinator",
"args": []
}
}
}Cursor
Add the same server entry to your Cursor MCP settings JSON, using the absolute path to `.build/release/project-coordinator`.
Claude Code
Register the same `command` path in your Claude Code MCP config.
Optional: set `CPC_KNOWLEDGE_BASE` to a custom KnowledgeBase directory (useful if the clone is public and your project JSON should stay private).
Restart the host after changing the config.
Security configuration
Defaults live in `Sources/ProjectCoordinator/SecurityValidator.swift` (compiled in).
Allowed roots: `~/Developer`, `~/Documents`, `~/GitHub`, `~/Projects`, `~/Desktop/Development`, `~/Xcode`
Limits: project name 100 · path 500 · description 2,000 · notes 10,000 · search pattern 300 characters
To change allowlists or limits, edit the source, rebuild (`swift build -c release`), and restart the host.
Project structure
Claude-Project-Coordinator/
├── Sources/
│ ├── ProjectCoordinator/ # Library (MCP, manager, analytics, security)
│ └── project-coordinator/ # Executable entry point
├── Tests/ProjectCoordinatorTests/
├── KnowledgeBase/ # Patterns, templates, local project/analytics data
├── scripts/ # Build and repair helpers
├── ANALYTICS-EXAMPLES.md # Sample analytics output
├── Package.swift
└── README.mdUpgrading from v1.3.x
1. `git pull` and rebuild with Swift 6: `swift build -c release`
2. Point your MCP host at the new binary
3. If creation dates were corrupted by the old re-migration bug:
./scripts/repair-analytics-dates.sh💖 Support This Project
If CPC has helped streamline your development workflow or saved you time managing projects, consider supporting its development:
Your support helps me:
- Maintain and improve CPC with new features
- Keep the project open-source and free for everyone
- Dedicate more time to addressing user requests and bug fixes
- Explore new tools that enhance developer productivity
Thank you for considering supporting my work! 🙏
Contributing
Contributions are welcome. Report bugs, suggest features, open pull requests, or share patterns and templates under `KnowledgeBase/`.
License
MIT License.
Acknowledgments
Built for the MCP ecosystem. Protocol stack: modelcontextprotocol/swift-sdk.
Made with ❤️ from 🍍 Pineapple
Frequently asked questions
What is Claude-Project-Coordinator?
Claude-Project-Coordinator is Claude Project Coordinator is a Swift-powered MCP (Model Context Protocol) server designed to streamline multi-project Xcode development. It lets you track project status, auto-detect frameworks, search code patterns, and maintain a structured development knowledge base — all locally, with Claude Desktop as your assistant.
How do I install Claude-Project-Coordinator?
Open the GitHub repository and follow its README. Most MCP servers are added to your client's MCP config, then called by your agent.
Is Claude-Project-Coordinator open source?
Yes — it is hosted on GitHub at https://github.com/m-pineapple/claude-project-coordinator and has 41 stars.
Related MCP tools
MCP server for Apple Developer Documentation - Search iOS/macOS/SwiftUI/UIKit docs, WWDC videos, Swift/Objective-C APIs & code examples in Claude, Cursor & A...
Shell and coding agent on claude desktop app for the Model Context Protocol. Enhance AI assistants with powerful integrations. Python-based implementation.
This MCP server allows Claude and other AI assistants to access your LinkedIn. Scrape LinkedIn profiles and companies, get your recommended jobs, and perform...
A Model Context Protocol server that executes commands in the current iTerm session - useful for REPL and CLI assistance
Enhanced ChatGPT Clone: Features Agents, MCP, DeepSeek, Anthropic, AWS, OpenAI, Responses API, Azure, Groq, o1, GPT-5, Mistral, OpenRouter, Vertex AI, Gemini...
FastGPT is a knowledge-based platform built on the LLMs, offers a comprehensive suite of out-of-the-box capabilities such as data processing, RAG retrieval, ...
Run your own MCP server? See who uses it and what to fix.
Measure it with TrackMCP