Code Refactor について
Code Refactorは、レガシーコードを扱う開発者向けのコードリファクタリング用MCPサーバーです。ローカルのOllamaとOpenAI互換のクラウドAPIを切り替えられ、変更後のコードと説明を返します。
主な機能
- 01タスクの説明に沿ったコードのリファクタリング
- 02変更後のコードと説明の返却
- 03バックエンドの稼働状況とモデル情報の確認
- 04ローカルOllamaとクラウドAPIの利用
- 05環境変数による認証情報とモデルの設定
活用シーン
- 01レガシーコードのモダン化
- 02指定タスクに合わせたコード構成の整理
- 03推論バックエンドの稼働確認
MCP 対応
MCPサーバーとして`refactor_code`と`check_status`の2つのツールを公開し、WorkBuddyのコネクター設定に登録できます。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
https://code-refactor-api.app.workbuddy.host/mcpclaude mcp add --transport http zhouhengchang-code-refactor https://code-refactor-api.app.workbuddy.host/mcp{"mcpServers":{"zhouhengchang-code-refactor":{"type":"http","url":"https://code-refactor-api.app.workbuddy.host/mcp"}}}Cursor で開く{"servers":{"zhouhengchang-code-refactor":{"type":"http","url":"https://code-refactor-api.app.workbuddy.host/mcp"}}}VS Code で開く{"mcpServers":{"zhouhengchang-code-refactor":{"type":"http","url":"https://code-refactor-api.app.workbuddy.host/mcp"}}}{"mcpServers":{"zhouhengchang-code-refactor":{"serverUrl":"https://code-refactor-api.app.workbuddy.host/mcp"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
ツール
詳細
workbuddy-code-refactor-connector
WorkBuddy コードリファクタリングコネクター —— Model Context Protocol に基づく MCP サーバーです。「コードリファクタリング」機能を、AI が直接呼び出せるツールとして提供します。
ローカル Ollama と任意の OpenAI 互換クラウド API の2種類の推論バックエンドに対応しており、環境変数で切り替えられます。
機能
2つの MCP ツールを公開します。
| ツール | パラメーター | 説明 |
|---|---|---|
refactor_code | code(ソースコード)、task(リファクタリングタスクの説明)、language(任意、言語のヒント) | コードをリファクタリングし、リファクタリング後のコードと説明を返します |
check_status | なし | 現在の推論バックエンドが利用可能か確認し、バックエンド/モデルの情報を返します |
インストール
npm install -g workbuddy-code-refactor-connector
または、npx で直接実行できます(グローバルインストールは不要です)。
npx workbuddy-code-refactor-connector
設定
すべての設定は環境変数から読み込み、パッケージ内にキーをハードコードしていません。
方法 1:ローカル Ollama(デフォルト、コードはローカルマシンから送信されません)
REFACTOR_BACKEND=ollama # 默认值,可省略
OLLAMA_HOST=http://127.0.0.1:11434
OLLAMA_MODEL=deepseek-coder
方法 2:クラウド OpenAI 互換 API
REFACTOR_BACKEND=openai
OPENAI_BASE_URL=https://api.deepseek.com/v1
OPENAI_MODEL=deepseek-flash
OPENAI_API_KEY=sk-xxxxxxxxxxxx
環境変数一覧
| 変数 | デフォルト値 | 説明 |
|---|---|---|
REFACTOR_BACKEND | ollama | 推論バックエンド:ollama | openai |
OLLAMA_HOST | http://127.0.0.1:11434 | Ollama サービスのアドレス |
OLLAMA_MODEL | deepseek-coder | ローカルモデル名 |
OPENAI_BASE_URL | https://api.deepseek.com/v1 | OpenAI 互換 API のアドレス |
OPENAI_MODEL | deepseek-flash | クラウドモデル名 |
OPENAI_API_KEY | なし | クラウド API のキー(openai バックエンドでは必須) |
REFACTOR_TIMEOUT_MS | 180000 | 1回の推論のタイムアウト(ミリ秒)。CPU のみでのローカル推論は遅いため、デフォルトでは3分に設定しています |
WorkBuddy への接続
WorkBuddy のコネクター設定(mcp.json)に、このサービスを登録します。
{
"mcpServers": {
"code-refactor": {
"command": "npx",
"args": ["-y", "workbuddy-code-refactor-connector"],
"env": {
"REFACTOR_BACKEND": "ollama",
"OLLAMA_MODEL": "deepseek-coder"
}
}
}
}
クラウドバックエンドを使用する場合は、env に REFACTOR_BACKEND、OPENAI_BASE_URL、OPENAI_MODEL、OPENAI_API_KEY を追加してください。
設計上のポイント
- キーをハードコードしない:アドレス、モデル名、キーはすべて環境変数から取得します。
- タイムアウト保護:すべてのツール呼び出しにタイムアウト上限を設けており、デフォルトは180秒です。
- 読みやすいエラー:例外はすべて読みやすい日本語のメッセージに変換し、呼び出し元に元のスタックトレースを返しません。
- 2種類のバックエンド:ローカル推論ではコードがローカルマシンから送信されず、クラウド API はより高品質なリファクタリングを求める場合に使用できます。
ライセンス
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。