# Code Refactor MCP server

> Refactors legacy code into modern, idiomatic code using local Ollama or OpenAI-compatible cloud backends.

- Repository: https://github.com/zhouhengchang/code-refactor
- Page: https://hostedmcp.org/servers/zhouhengchang/code-refactor
- Transport: stdio, remote
- Stars: 0
- License: MIT
- Latest version: 1.0.4

## Install

### Claude Code

```sh
claude mcp add --env 'OPENAI_API_KEY=<YOUR_OPENAI_API_KEY>' code-refactor -- npx -y workbuddy-code-refactor-connector
```

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

```json
{
  "mcpServers": {
    "code-refactor": {
      "command": "npx",
      "args": [
        "-y",
        "workbuddy-code-refactor-connector"
      ],
      "env": {
        "OPENAI_API_KEY": "<YOUR_OPENAI_API_KEY>"
      }
    }
  }
}
```

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

```json
{
  "servers": {
    "code-refactor": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "workbuddy-code-refactor-connector"
      ],
      "env": {
        "OPENAI_API_KEY": "<YOUR_OPENAI_API_KEY>"
      }
    }
  }
}
```

### VS Code CLI

```sh
code --add-mcp '{"name":"code-refactor","type":"stdio","command":"npx","args":["-y","workbuddy-code-refactor-connector"],"env":{"OPENAI_API_KEY":"<YOUR_OPENAI_API_KEY>"}}'
```

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

```json
{
  "mcpServers": {
    "code-refactor": {
      "command": "npx",
      "args": [
        "-y",
        "workbuddy-code-refactor-connector"
      ],
      "env": {
        "OPENAI_API_KEY": "<YOUR_OPENAI_API_KEY>"
      }
    }
  }
}
```

### Codex

```sh
codex mcp add code-refactor --env 'OPENAI_API_KEY=<YOUR_OPENAI_API_KEY>' -- npx -y workbuddy-code-refactor-connector
```

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

```toml
[mcp_servers.code-refactor]
command = "npx"
args = ["-y", "workbuddy-code-refactor-connector"]

[mcp_servers.code-refactor.env]
OPENAI_API_KEY = "<YOUR_OPENAI_API_KEY>"
```

### Gemini CLI

```sh
gemini mcp add -s user -e 'OPENAI_API_KEY=<YOUR_OPENAI_API_KEY>' code-refactor npx -- -y workbuddy-code-refactor-connector
```

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

```json
{
  "mcpServers": {
    "code-refactor": {
      "command": "npx",
      "args": [
        "-y",
        "workbuddy-code-refactor-connector"
      ],
      "env": {
        "OPENAI_API_KEY": "<YOUR_OPENAI_API_KEY>"
      }
    }
  }
}
```

## Environment variables

| Name | Required | Secret | Description |
|---|---|---|---|
| `OPENAI_API_KEY` | no | yes | API key for the cloud endpoint, e.g. a DeepSeek key. Only needed when REFACTOR_BACKEND=openai. |
| `OLLAMA_HOST` | no | no | Ollama server address used when REFACTOR_BACKEND=ollama. |
| `OLLAMA_MODEL` | no | no | Ollama model name used when REFACTOR_BACKEND=ollama. |
| `OPENAI_BASE_URL` | no | no | Base URL of the OpenAI-compatible endpoint, e.g. https://api.deepseek.com/v1. Required when REFACTOR_BACKEND=openai. |
| `OPENAI_MODEL` | no | no | Cloud model name, e.g. deepseek-chat. |
| `REFACTOR_BACKEND` | no | no | Inference backend: 'ollama' (local, code stays on your machine, default) or 'openai' (any OpenAI-compatible cloud endpoint, e.g. DeepSeek). |
| `REFACTOR_TIMEOUT_MS` | no | no | Per-call timeout in milliseconds. Raise it for slow local CPU inference. |

## FAQ

### How can I ensure my code stays local?

You can use the local Ollama backend to ensure code does not leave your machine.

### Can I use cloud-based models?

Yes, you can use any OpenAI-compatible cloud interface by setting the REFACTOR_BACKEND to openai.
