# CUA Desktop Extension

This directory contains the build artifacts for the CUA Desktop Extension (`.mcpb` file).

## Building the Extension

To build the extension, run the build script from the parent directory:

```bash
cd /path/to/libs/python/mcp-server
python3 build-extension.py
```

This will:

1. Copy the MCP server code from `mcp_server/` directory
2. Copy static files (manifest, icons, scripts)
3. Create a `.mcpb` zip archive in `desktop-extension/cua-extension.mcpb`
4. Set custom file icon (platform-specific):
   - macOS: Uses `fileicon` (install with `brew install fileicon`)
   - Windows/Linux: Not yet supported

## Directory Structure

```
desktop-extension/
├── README.md              # This file
├── manifest.json          # Extension manifest
├── desktop_extension.png  # Extension icon
├── requirements.txt       # Python dependencies
├── run_server.sh          # Server launcher script
├── setup.py               # Dependency installer
└── cua-extension.mcpb     # Generated extension archive
```

## Source Files

The actual MCP server code lives in `../mcp_server/`:

- `server.py` - Main MCP server implementation
- `session_manager.py` - Session management and resource pooling

## Static Files

These files are maintained in this directory:

- `manifest.json` - Extension metadata and configuration
- `desktop_extension.png` - Extension icon
- `requirements.txt` - Python package dependencies
- `run_server.sh` - Shell script to launch the server
- `setup.py` - Python script to install dependencies

## Generated Files

The `.mcpb` file is generated by the build script and is gitignored.

## Installing the Extension

Once built, you can install the extension in Claude Desktop by:

1. Opening Claude Desktop Settings
2. Going to the Extensions section
3. Dropping the `cua-extension.mcpb` file into the window
4. Following the installation prompts

For more information, see the [Anthropic Desktop Extensions documentation](https://www.anthropic.com/engineering/desktop-extensions).
