Skip to main content
Glama
jaeuk-mrt

mrt-fe-review-washer

by jaeuk-mrt

mrt-fe-review-washer

코더래빗(CodeRabbit)처럼 "리뷰 결과를 저장/조회" 하고, Task 관리로 체계적인 수정까지 할 수 있는 한국어 중심 MCP 서버입니다.

🦐 mcp-shrimp-task-manager 스타일의 Task 관리 기능 내장!

핵심 철학: 이 서버가 LLM을 내장해서 리뷰를 '자동 생성'하기보다,
MCP 호스트(Claude Code/Cline/Claude Desktop 등)의 모델이 리뷰를 만들고,
서버는 diff/규칙 제공 + 결과 저장/조회 + Task 관리를 담당합니다.

요구사항

  • Node.js 18+

  • git (diff 수집용)

Related MCP server: mcp-agent-review

설치/빌드

npm i
npm run build

📋 규칙 파일 관리 (중앙 집중식)

FE 리드가 이 MCP 서버의 templates/rules.ko.md 파일을 직접 관리합니다.

mrt-fe-review-washer/
└── templates/
    └── rules.ko.md   ← FE 리드가 관리하는 "원본"
  • 모든 프로젝트가 이 하나의 규칙 파일을 공유

  • 규칙 변경 시 MCP 서버만 업데이트하면 모든 프로젝트에 즉시 반영

  • 프로젝트별 복사본 관리 불필요

.mcp.json 연결(예시)

프로젝트(또는 사용자 설정)에 아래 형태로 등록합니다.

⚠️ 많은 MCP 호스트가 절대경로를 요구합니다.

{
  "mcpServers": {
    "mrt-fe-review-washer": {
      "command": "node",
      "args": ["/ABS/PATH/TO/mrt-fe-review-washer/dist/index.js"],
      "env": {
        "REPO_PATH": "/ABS/PATH/TO/YOUR/REPO"
      }
    }
  }
}

환경 변수

변수

설명

기본값

REPO_PATH

리뷰 대상 프로젝트 경로 (Tool에서 repoPath로 오버라이드 가능)

현재 작업 디렉토리

DATA_DIR

리뷰/Task 데이터 저장 경로

${REPO_PATH}/.review-data

REVIEW_RULES_PATH

규칙 파일 경로 (커스텀)

templates/rules.ko.md (MCP 서버 내)

💡 review.collect_diffreview.make_prompt Tool에서 repoPath 파라미터를 지정하면 환경변수 REPO_PATH를 오버라이드할 수 있습니다.

코드 리뷰 기준 (5가지)

이 MCP 서버는 다음 5가지 기준에 따라 코드 리뷰를 수행합니다:

1. 가독성(Readability)

  • 같이 실행되지 않는 코드가 하나의 함수/컴포넌트에 섞여 있지 않은가?

  • 구현 상세가 적절히 추상화되어 있는가?

  • 복잡한 조건에 의미 있는 이름이 붙어 있는가?

  • 매직 넘버에 이름이 붙어 있는가?

  • 삼항 연산자가 단순하게 사용되고 있는가?

2. 예측 가능성(Predictability)

  • 같은 이름을 가진 함수/변수가 동일한 동작을 하는가?

  • 같은 종류의 함수는 반환 타입이 통일되어 있는가?

  • 숨겨진 로직 없이 동작이 명시적으로 드러나는가?

3. 응집도(Cohesion)

  • 함께 수정되는 파일이 같은 디렉토리에 있는가?

  • 도메인별로 코드가 적절히 분리되어 있는가?

  • 매직 넘버가 상수로 정의되어 한 곳에서 관리되는가?

4. 결합도(Coupling)

  • 하나의 함수/Hook이 하나의 책임만 가지고 있는가?

  • 페이지 전체의 상태를 한 곳에서 관리하지 않는가?

  • Props Drilling이 발생하지 않는가?

5. 미시적 관점(Micro Perspective)

  • 조건부 렌더링 패턴이 일관되게 사용되는가? (ts-pattern, Show, SwitchCase)

  • 전역 상태 사용 기준이 적절한가?

  • TypeScript 타입 정의가 컨벤션에 맞는가?

  • 암묵적 타입 변환 사용이 명확한가?

추천 워크플로우

1️⃣ 리뷰 생성

1) diff 수집 → review.collect_diff
2) 프롬프트 생성 → review.make_prompt
3) (LLM이 리뷰 JSON 생성)
4) 리뷰 저장 → review.save

2️⃣ Task 관리 (리뷰 → 수정)

5) 리뷰를 Task로 변환 → task.from_review
6) Task 목록 확인 → task.list
7) Task 실행 시작 → task.execute
8) (코드 수정)
9) Task 검증 → task.verify
10) Task 완료 → task.complete

자세한 흐름: docs/WORKFLOW_KO.md

제공 Tools

Review Tools

Tool

설명

주요 파라미터

review.collect_diff

git diff 수집

repoPath?, base?, head?

review.make_prompt

리뷰 프롬프트 패키지 생성 (5가지 기준 포함)

repoPath?, base?, head?, maxDiffChars?

review.save

리뷰 저장 (criteria_feedback, test_scenarios 포함)

target, summary_ko, findings, ...

review.list

리뷰 목록

limit?

review.get

리뷰 상세 조회

id

review.export_markdown

마크다운 변환

id

review.debug.env

환경 변수 확인

-

Task Tools

Tool

설명

주요 파라미터

task.from_review

리뷰 findings → Task 변환

review_id

task.create

Task 수동 생성

title, description, ...

task.list

Task 목록 (상태별 필터)

status?, limit?

task.get

Task 상세 조회

id

task.execute

Task 실행 시작

id

task.verify

Task 검증

id

task.complete

Task 완료

id, verification_note?

task.delete

Task 삭제

id

task.update_status

Task 상태 변경

id, status

task.stats

Task 통계

-

리뷰 데이터 스키마

review.save로 저장되는 리뷰 데이터 구조:

{
  "target": {
    "base": "main",
    "head": "HEAD"
  },
  "summary_ko": "변경 사항에 대한 간략한 요약(한국어)",
  "risk": "low | medium | high",
  "criteria_feedback": {
    "readability": {
      "good": ["잘된 점 1", "잘된 점 2"],
      "improve": ["개선 필요한 점 1"]
    },
    "predictability": { "good": [], "improve": [] },
    "cohesion": { "good": [], "improve": [] },
    "coupling": { "good": [], "improve": [] },
    "micro_perspective": { "good": [], "improve": [] }
  },
  "findings": [
    {
      "severity": "low | medium | high",
      "category": "readability | predictability | cohesion | coupling | micro_perspective",
      "file": "파일 경로",
      "startLine": 1,
      "endLine": 10,
      "title_ko": "짧은 제목",
      "detail_ko": "설명 + 근거 + 왜 중요한지",
      "suggestion_patch_diff": "diff 텍스트(선택)"
    }
  ],
  "test_scenarios": [
    "권장 테스트 시나리오 1",
    "권장 테스트 시나리오 2"
  ]
}

제공 Resources

Resource

설명

rules://active

활성 규칙 파일

reviews://index

리뷰 인덱스

reviews://latest

최신 리뷰

tasks://index

Task 인덱스

tasks://pending

대기 중인 Task

tasks://in_progress

진행 중인 Task

제공 Prompts

Prompt

설명

review

코드 리뷰 템플릿

task-execute

Task 실행 가이드

task-plan

Task 계획 수립

저장 위치

${DATA_DIR}/
├── reviews/
│   └── rev_*.json       # 리뷰 결과
└── tasks/
    └── task_*.json      # Task 데이터

기본: ${REPO_PATH}/.review-data/

A
license - permissive license
-
quality - not tested
D
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/jaeuk-mrt/mrt-fe-review-washer'

If you have feedback or need assistance with the MCP directory API, please join our Discord server