Skip to content
2 changes: 1 addition & 1 deletion .agents/skills/mcpbridge-workflow/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ python3 scripts/pick_next_task.py --list

## Workplan Structure

The workplan at `SPECS/Workplan.md` contains 65 tasks across 7 phases.
The workplan at `SPECS/Workplan.md` contains 66 tasks across 8 phases.

**When to read the full workplan:**
- Before starting work on a task (to see full acceptance criteria)
Expand Down
16 changes: 8 additions & 8 deletions AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,13 +10,13 @@ Xcode's `mcpbridge` returns tool responses in the `content` field but omits the

### The Solution

A Python wrapper (`mcpbridge-wrapper`) that intercepts responses from `xcrun mcpbridge` and copies the data from `content` into `structuredContent`, making Xcode's MCP tools fully compatible with all MCP clients.
A Python wrapper (`xcodemcpwrapper`) that intercepts responses from `xcrun mcpbridge` and copies the data from `content` into `structuredContent`, making Xcode's MCP tools fully compatible with all MCP clients.

## Architecture

```
┌─────────────┐ MCP Protocol ┌──────────────────┐ MCP Protocol ┌────────────┐ XPC ┌─────────┐
│ Cursor │ ◄────────────────► │ mcpbridge-wrapper│ ◄──────────────► │ mcpbridge │ ◄───────► │ Xcode │
│ Cursor │ ◄────────────────► │ xcodemcpwrapper │ ◄──────────────► │ mcpbridge │ ◄───────► │ Xcode │
│ (MCP Client)│ │ (This Project) │ │ (Bridge) │ │ (IDE) │
└─────────────┘ └──────────────────┘ └────────────┘ └─────────┘
```
Expand All @@ -34,8 +34,8 @@ A Python wrapper (`mcpbridge-wrapper`) that intercepts responses from `xcrun mcp
| Phase 5: Testing & Verification | 14/14 | ✅ Complete |
| Phase 6: Packaging & Distribution | 8/8 | ✅ Complete |
| Phase 7: Documentation | 11/11 | ✅ Complete |
| Phase 8: Documentation Publishing | 0/1 | 📝 Planned |
| **Total** | **65/66** | **📊 98%** |
| Phase 8: Documentation Publishing | 2/2 | ✅ Complete |
| **Total** | **67/67** | **✅ 100%** |

### Metrics

Expand Down Expand Up @@ -115,7 +115,7 @@ A Python wrapper (`mcpbridge-wrapper`) that intercepts responses from `xcrun mcp
```bash
# Clone the repository
git clone https://github.com/SoundBlaster/XcodeMCPWrapper.git
cd mcpbridge-wrapper
cd XcodeMCPWrapper

# Run the install script
./scripts/install.sh
Expand All @@ -131,7 +131,7 @@ Edit `~/.cursor/mcp.json`:
{
"mcpServers": {
"xcode-tools": {
"command": "/Users/YOUR_USERNAME/bin/mcpbridge-wrapper"
"command": "/Users/YOUR_USERNAME/bin/xcodemcpwrapper"
}
}
}
Expand All @@ -140,13 +140,13 @@ Edit `~/.cursor/mcp.json`:
#### Claude Code

```bash
claude mcp add --transport stdio xcode -- /Users/YOUR_USERNAME/bin/mcpbridge-wrapper
claude mcp add --transport stdio xcode -- /Users/YOUR_USERNAME/bin/xcodemcpwrapper
```

#### Codex CLI

```bash
codex mcp add xcode -- /Users/YOUR_USERNAME/bin/mcpbridge-wrapper
codex mcp add xcode -- /Users/YOUR_USERNAME/bin/xcodemcpwrapper
```

## Available Xcode MCP Tools
Expand Down
2 changes: 1 addition & 1 deletion CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Contributing to mcpbridge-wrapper
# Contributing to xcodemcpwrapper

Thank you for your interest in contributing! This document outlines the development workflow and quality gates.

Expand Down
24 changes: 19 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -81,7 +81,7 @@ or use shortcut:

### Uninstallation

To remove mcpbridge-wrapper from your system:
To remove xcodemcpwrapper from your system:

```bash
./scripts/uninstall.sh
Expand All @@ -101,7 +101,7 @@ Edit `~/.cursor/mcp.json` with replacing `YOUR_USERNAME` with your real username
{
"mcpServers": {
"xcode-tools": {
"command": "/Users/YOUR_USERNAME/bin/mcpbridge-wrapper",
"command": "/Users/YOUR_USERNAME/bin/xcodemcpwrapper",
"args": []
}
}
Expand All @@ -111,13 +111,13 @@ Edit `~/.cursor/mcp.json` with replacing `YOUR_USERNAME` with your real username
#### Claude Code

```bash
claude mcp add --transport stdio xcode -- ~/bin/mcpbridge-wrapper
claude mcp add --transport stdio xcode -- ~/bin/xcodemcpwrapper
```

#### Codex CLI

```bash
codex mcp add xcode -- ~/bin/mcpbridge-wrapper
codex mcp add xcode -- ~/bin/xcodemcpwrapper
```

#### Zed Agent
Expand All @@ -127,7 +127,21 @@ Edit `~/.zed/settings.json` (or use the Zed > Settings menu):
```json
{
"xcode-tools": {
"command": "/Users/YOUR_USERNAME/bin/mcpbridge-wrapper",
"command": "/Users/YOUR_USERNAME/bin/xcodemcpwrapper",
"args": [],
"env": {}
}
}
```

#### Kimi CLI

Edit `~/.kimi/mcp.json`:

```json
{
"xcode-tools": {
"command": "/Users/YOUR_USERNAME/bin/xcodemcpwrapper",
"args": [],
"env": {}
}
Expand Down
4 changes: 4 additions & 0 deletions SPECS/ARCHIVE/INDEX.md
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,7 @@
| P7-T11 | [P7-T11_CHANGELOG/](P7-T11_CHANGELOG/) | 2026-02-08 | PASS |
| P8-T1 | [P8-T1_DocC_Documentation_Publishing/](P8-T1_DocC_Documentation_Publishing/) | 2026-02-08 | PARTIAL |
| P8-T2 | [P8-T2_Restruct_DocC_Canonical/](P8-T2_Restruct_DocC_Canonical/) | 2026-02-08 | PASS |
| P8-T3 | [P8-T3_Change_Deployment_Path/](P8-T3_Change_Deployment_Path/) | 2026-02-08 | PASS |

## Historical Artifacts

Expand All @@ -81,6 +82,7 @@
| [REVIEW_P4-T2_no_text_content.md](_Historical/REVIEW_P4-T2_no_text_content.md) | Review report for P4-T2 |
| [REVIEW_P8-T1_DocC_Documentation_Publishing.md](P8-T1_DocC_Documentation_Publishing/REVIEW_P8-T1_DocC_Documentation_Publishing.md) | Review report for P8-T1 |
| [REVIEW_P8-T2_DocC_Restructure.md](_Historical/REVIEW_P8-T2_DocC_Restructure.md) | Review report for P8-T2 |
| [REVIEW_P8-T3_Deployment_Path_Change.md](_Historical/REVIEW_P8-T3_Deployment_Path_Change.md) | Review report for P8-T3 |

## Archive Log

Expand Down Expand Up @@ -118,3 +120,5 @@
| 2026-02-08 | P4-T8 | Archived with PASS verdict |
| 2026-02-08 | P8-T1 | Archived DocC_Documentation_Publishing (PARTIAL) |
| 2026-02-08 | P8-T2 | Archived with PASS verdict |
| 2026-02-08 | P8-T3 | Archived with PASS verdict |
| 2026-02-08 | P8-T3 | Archived REVIEW_P8-T3_Deployment_Path_Change report |
Original file line number Diff line number Diff line change
@@ -0,0 +1,86 @@
# P8-T3: Change Deployment Path to xcodemcpwrapper

## Overview

Update all public-facing documentation, scripts, and configuration templates to use the new deployment path `/Users/YOUR_USERNAME/bin/xcodemcpwrapper` instead of `/Users/YOUR_USERNAME/bin/mcpbridge-wrapper`. The Python package name (`mcpbridge_wrapper`) remains unchanged - only the deployed executable name changes.

## Background

The current deployment path uses `mcpbridge-wrapper` which contains a hyphen. The new name `xcodemcpwrapper` is cleaner and more consistent. This is a documentation and script update task - no Python source code changes are required.

## Scope

### In Scope
- Update installation script to create `xcodemcpwrapper` executable
- Update uninstall script to remove `xcodemcpwrapper` executable
- Update all configuration templates (Cursor, Claude, Codex, Zed)
- Update all public documentation files
- Update AGENTS.md and CONTRIBUTING.md

### Out of Scope
- Python package name (`mcpbridge_wrapper` module stays unchanged)
- Historical archives in SPECS/ARCHIVE/
- Source code in `src/mcpbridge_wrapper/`
- Internal test files referencing the module

## Files to Modify

| File | Changes |
|------|---------|
| `scripts/install.sh` | Change `mcpbridge-wrapper` to `xcodemcpwrapper` in script creation and output messages |
| `scripts/uninstall.sh` | Change `mcpbridge-wrapper` to `xcodemcpwrapper` in removal logic |
| `config/cursor-mcp.json` | Update command path to use `xcodemcpwrapper` |
| `config/claude-code.txt` | Update command examples |
| `config/codex-cli.txt` | Update command examples |
| `config/zed-agent.json` | Update command path |
| `README.md` | Update all executable references |
| `AGENTS.md` | Update configuration examples |
| `CONTRIBUTING.md` | Update references |
| `docs/installation.md` | Update executable name |
| `docs/cursor-setup.md` | Update configuration examples |
| `docs/claude-setup.md` | Update command examples |
| `docs/codex-setup.md` | Update command examples |
| `docs/troubleshooting.md` | Update error messages and paths |
| `docs/architecture.md` | Update references |
| `docs/tools-reference.md` | Update references |
| `docs/environment-variables.md` | Update references |
| `Sources/XcodeMCPWrapper/Documentation.docc/*.md` | Update all DocC documentation |

## Acceptance Criteria

1. **Installation Script**
- Creates `~/bin/xcodemcpwrapper` executable
- All output messages reference the new name
- Verification step checks for `xcodemcpwrapper` in PATH

2. **Uninstall Script**
- Removes `~/bin/xcodemcpwrapper`
- References updated pip package removal (name stays `mcpbridge-wrapper`)

3. **Configuration Templates**
- All JSON templates use `/Users/USERNAME/bin/xcodemcpwrapper`
- All text-based configs use new path

4. **Documentation**
- No references to `~/bin/mcpbridge-wrapper` remain in active docs
- All setup instructions use new executable name
- Troubleshooting guides reference correct paths

5. **Quality Gates**
- All tests pass: `pytest`
- No lint errors: `ruff check src/`
- Coverage maintained: `pytest --cov` ≥ 90%

## Implementation Notes

- The Python package name `mcpbridge-wrapper` (pip) and `mcpbridge_wrapper` (Python module) remain unchanged
- Only the deployed executable name in `~/bin/` changes from `mcpbridge-wrapper` to `xcodemcpwrapper`
- This is purely a documentation and script naming change

## Validation Steps

1. Run `scripts/install.sh` and verify it creates `~/bin/xcodemcpwrapper`
2. Run `scripts/uninstall.sh` and verify it removes `~/bin/xcodemcpwrapper`
3. Verify all config templates have updated paths
4. Run test suite: `pytest`
5. Verify coverage: `pytest --cov`
Original file line number Diff line number Diff line change
@@ -0,0 +1,86 @@
# P8-T3 Validation Report

## Task: Change Deployment Path to xcodemcpwrapper

**Date:** 2026-02-08
**Validator:** Automated + Manual Review
**Status:** ✅ PASSED

---

## Files Modified

| File | Change |
|------|--------|
| `scripts/install.sh` | ✅ Creates `~/bin/xcodemcpwrapper`, updated all messages |
| `scripts/uninstall.sh` | ✅ Removes `~/bin/xcodemcpwrapper`, updated messages |
| `config/cursor-mcp.json` | ✅ Updated path to `xcodemcpwrapper` |
| `config/claude-code.txt` | ✅ Updated command examples |
| `config/codex-cli.txt` | ✅ Updated command examples |
| `config/zed-agent.json` | ✅ Updated path to `xcodemcpwrapper` |
| `README.md` | ✅ Updated all executable references |
| `AGENTS.md` | ✅ Updated configuration examples and ASCII diagram |
| `CONTRIBUTING.md` | ✅ Updated title reference |
| `docs/installation.md` | ✅ Updated executable name and paths |
| `docs/cursor-setup.md` | ✅ Updated configuration examples |
| `docs/claude-setup.md` | ✅ Updated command examples |
| `docs/codex-setup.md` | ✅ Updated command examples |
| `docs/troubleshooting.md` | ✅ Updated paths and error messages |
| `docs/architecture.md` | ✅ Updated ASCII diagram |
| `docs/tools-reference.md` | ✅ Updated description |
| `docs/environment-variables.md` | ✅ Updated command examples |
| `docs/usage-examples.md` | ✅ No changes needed (no executable references) |
| `Sources/XcodeMCPWrapper/Documentation.docc/*.md` (10 files) | ✅ All updated with new paths |

---

## Quality Gates

### ✅ Test Suite
```
pytest tests/
Result: 202 passed, 5 skipped
```

### ✅ Lint Check
```
ruff check src/
Result: All checks passed!
```

### ✅ Coverage
```
pytest --cov=src
Result: 95.04% coverage (requirement: ≥90%)
```

---

## Verification Checklist

- [x] Installation script creates `~/bin/xcodemcpwrapper`
- [x] Uninstall script removes `~/bin/xcodemcpwrapper`
- [x] All configuration templates updated
- [x] All public documentation updated
- [x] DocC documentation updated
- [x] No references to `~/bin/mcpbridge-wrapper` remain in active docs
- [x] Python source code unchanged (as intended)
- [x] Historical archives not modified
- [x] All tests pass
- [x] Coverage maintained ≥90%

---

## Notes

1. The Python package name (`mcpbridge_wrapper` for pip and Python module) intentionally remains unchanged - only the deployed executable name in `~/bin/` changes from `mcpbridge-wrapper` to `xcodemcpwrapper`.

2. All ASCII diagrams in documentation have been updated to show `xcodemcpwrapper` as the wrapper component.

3. The pip package installation still uses `mcpbridge-wrapper` as the package name, which is correct since the package name doesn't need to change.

---

## Conclusion

✅ **TASK COMPLETE** - All files updated, all quality gates passed.
Loading