# Courtship MCP server

> Provides an efficiency-governed MCP runtime and benchmarking harness for controlling and inspecting LOVE (Lua) games.

- Repository: https://github.com/grimmdev/Courtship
- Page: https://hostedmcp.org/servers/grimmdev/courtship
- Transport: stdio
- Stars: 0
- License: Apache-2.0
- Latest version: 1.0.2

## Install

### Claude Code

```sh
claude mcp add courtship -- docker run -i --rm ghcr.io/grimmdev/courtship:1.0.2
```

### Cursor (`~/.cursor/mcp.json`)

```json
{
  "mcpServers": {
    "courtship": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "ghcr.io/grimmdev/courtship:1.0.2"
      ]
    }
  }
}
```

### VS Code (`.vscode/mcp.json`)

```json
{
  "servers": {
    "courtship": {
      "type": "stdio",
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "ghcr.io/grimmdev/courtship:1.0.2"
      ]
    }
  }
}
```

### VS Code CLI

```sh
code --add-mcp '{"name":"courtship","type":"stdio","command":"docker","args":["run","-i","--rm","ghcr.io/grimmdev/courtship:1.0.2"]}'
```

### Claude Desktop (`claude_desktop_config.json`)

```json
{
  "mcpServers": {
    "courtship": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "ghcr.io/grimmdev/courtship:1.0.2"
      ]
    }
  }
}
```

### Codex

```sh
codex mcp add courtship -- docker run -i --rm ghcr.io/grimmdev/courtship:1.0.2
```

### Codex config.toml (`~/.codex/config.toml`)

```toml
[mcp_servers.courtship]
command = "docker"
args = ["run", "-i", "--rm", "ghcr.io/grimmdev/courtship:1.0.2"]
```

### Gemini CLI

```sh
gemini mcp add -s user courtship docker -- run -i --rm ghcr.io/grimmdev/courtship:1.0.2
```

### Gemini settings.json (`~/.gemini/settings.json`)

```json
{
  "mcpServers": {
    "courtship": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "ghcr.io/grimmdev/courtship:1.0.2"
      ]
    }
  }
}
```

## FAQ

### Can Courtship prevent a game from crashing during development?

Yes, it replaces the standard error handler to pause execution and provide a diagnostic HUD with stack traces and local variables instead of terminating the process.
