К основному содержанию
MCP-сервер CX Codex

FSharp.Refactor — MCP-сервер для Claude Code

Офлайновый анализатор F#-кода, убирает лишние скобки, меняет медленные конструкции на быстрые и делает явным то, что агент или старый код спрятал за шумом.

Открыть на GitHub

Что делает FSharp.Refactor

Инструмент работает через CLI: fsharp-refactor Your.fsproj --dry-run --api-changes печатает все правки с указанием файла и позиции, fsharp-refactor Your.fsproj --api-changes применяет их. Без флага --api-changes публичные методы остаются нетронутыми. Внутри — полтораста правил: заменяет new FileStream на use, строковый Contains "x" на символьный Contains 'x', match b with | true -> 1 | false -> 0 на if b then 1 else 0, убирает new перед StringBuilder() и Attribute в конце атрибутов.

Требует проект, который компилируется: если исходник сломан, запуск не начнётся, если правка ломает сборку — остановится с ошибкой. Поставляется как глобальный dotnet-инструмент, VS Code-расширение, плагин для Visual Studio 2022–2026 и NuGet-пакет анализаторов. MCP-поддержка встроена в CLI-версию. Лицензия Unlicense.

Какие задачи решает

  • убрать скобки и ключевое слово new там, где они не нужны
  • заменить raise (Exception "текст") на failwith "текст"
  • передвинуть Seq.toList за Seq.map, чтобы не копировать всю последовательность до маппинга
  • заменить match на булевом значении на if
  • добавить в failwith интерполяцию с переменными, которые помогут понять, где упало

Примеры запросов агенту

  • Запусти fsharp-refactor src/Main.fsproj --dry-run, покажи, что изменится
  • Примени все правки в Core.fsproj командой fsharp-refactor Core.fsproj --api-changes
  • Прогони рефакторинг по всем проектам в src/, не трогая публичные сигнатуры

Как установить FSharp.Refactor

Установка

Команды запуска нет в реестре MCP — смотрите README репозитория

По шагам, с командами для каждой платформы: Как подключить MCP-сервер: Claude Code, Codex, Cursor, VS Code, Gemini CLI и другие

Вопросы о FSharp.Refactor

Как установить FSharp.Refactor в Claude Code?

Поставь глобальный dotnet-инструмент командой dotnet tool install --global fsharp-refactor. MCP-поддержка встроена в CLI-версию, отдельных шагов для MCP не требуется.

Что делает FSharp.Refactor?

Анализирует F#-код и применяет полтораста правил: убирает лишние скобки и new, меняет медленные конструкции (Contains "x" → Contains 'x'), заменяет raise (Exception ...) на failwith, match на булевом — на if. Работает офлайн, ИИ не использует.

Можно ли запустить FSharp.Refactor на сломанном проекте?

Нет. Инструмент требует, чтобы проект компилировался до запуска, и останавливается, если правка вносит ошибку сборки.

Похожие MCP-серверы

Все MCP-серверы по теме «Код-ревью и рефакторинг» →
Front-End Checklist thedaviddias Сервер помогает агенту проверять фронтенд-код и публичные страницы по правилам качества. Подключите его для ревью компонентов или аудита доступности, SEO и производительности. CX Codex +1 ★ 74 559звёзд репо Codebase Memory DeusData Локальный MCP-сервер, который строит граф кода, документации и инфраструктуры репозитория. Помогает агенту находить нужные места без повторного чтения файлов. CX Codex +1 ★ 47 392звёзд репо Serena MCP: the IDE for your agent oraios Даёт агенту доступ к символам, ссылкам и рефакторингу через language servers. Пригодится на больших проектах, где поиск по строкам уже не работает. CX Codex +1 ★ 30 677звёзд репо Repomix yamadashy Собирает весь репозиторий в один файл, который ИИ-агент читает или ищет по нему. Пригодится, когда нужно отдать кодовую базу модели целиком. CX Codex +1 ★ 29 027звёзд репо Repowise repowise-dev Repowise индексирует код, связи вызовов, историю Git, тесты и документацию, чтобы агент мог отвечать на вопросы о проекте. Пригодится, когда агенту нужно понять последствия правки или найти неиспользуемый код. CX Codex +1 ★ 7 891звёзд репо sem Ataraxy-Labs Разбирает код через tree-sitter и показывает изменения по сущностям вместо строк. Помогает агентам оценивать влияние правок и запускать нужные тесты. CX Codex +1 ★ 3 422звёзд репо

Спонсоры проекта

Компании, которые помогают держать аналитику открытой