MCP Code Sanitizer
🔍 mcp-code-sanitizer
Claude Desktop, Cursor 또는 모든 MCP 호환 에이전트에서 Groq LLM을 통해 코드를 직접 검사하는 엄격한 AI 기반 코드 리뷰어입니다.
Claude Desktop ──MCP──► code-sanitizer ──REST──► Groq API
(server.py) (llama-3.3-70b)✨ 기능
도구 | 설명 |
| 엄격한 코드 리뷰 — 버그, 취약점, 점수 0–100 |
| 두 버전 비교, 회귀 분석, 병합/변경 요청 권장 |
| 주니어/중급/시니어 대상 단계별 설명 |
| happy path, 엣지 케이스, 보안 테스트를 포함한 pytest/jest/go 테스트 생성 |
| 병렬 청킹을 사용하여 디스크의 전체 파일 분석 |
| 모든 분석 결과로부터 아름다운 HTML 보고서 생성 |
| 캐시 통계 및 삭제 |
응답 예시
{
"summary": "Critical SQL injection and secret exposed in logs",
"score": 23,
"issues": [
{
"severity": "critical",
"line": 2,
"title": "SQL Injection",
"description": "f-string directly interpolates user_id into query",
"fix": "cursor.execute('SELECT * FROM users WHERE id = %s', (user_id,))"
}
],
"warnings": [{"title": "No exception handling", "description": "..."}],
"suggestions": ["Consider using an ORM instead of raw SQL"]
}Related MCP server: Claude Code Review MCP
🚀 빠른 시작
1. 저장소 복제
git clone https://github.com/YOUR_USERNAME/mcp-code-sanitizer
cd mcp-code-sanitizer2. 가상 환경 생성 및 의존성 설치
python -m venv venv
# macOS / Linux
source venv/bin/activate
# Windows
venv\Scripts\activate
pip install -r requirements.txt3. Groq API 키 추가
console.groq.com/keys에서 무료 키를 받으세요.
cp .env.example .env
# Open .env and set GROQ_API_KEY=gsk_...4. 서버 테스트
python server.py아무런 출력이 없으면 정상 작동 중입니다. 서버가 stdio를 통해 MCP 요청을 대기하고 있습니다.
🔌 Claude Desktop에 연결
설정 파일을 찾아 mcpServers 섹션을 추가하세요:
OS | 설정 경로 |
macOS |
|
Windows |
|
Linux |
|
{
"mcpServers": {
"code-sanitizer": {
"command": "/full/path/to/venv/bin/python",
"args": ["/full/path/to/server.py"],
"env": {
"GROQ_API_KEY": "gsk_your_key_here"
}
}
}
}Claude Desktop을 재시작하면 채팅창에 🔧 아이콘이 나타납니다.
🔌 Cursor에 연결
프로젝트 루트에 .cursor/mcp.json을 생성하세요:
{
"mcpServers": {
"code-sanitizer": {
"command": "/full/path/to/venv/bin/python",
"args": ["/full/path/to/server.py"],
"env": {"GROQ_API_KEY": "gsk_your_key_here"}
}
}
}🧪 MCP Inspector를 통한 테스트
source venv/bin/activate # or venv\Scripts\activate on Windows
fastmcp dev inspector server.py전체 도구 테스트 인터페이스가 포함된 브라우저 UI가 열립니다.
💬 채팅에서 사용하기
Claude Desktop에 연결한 후, 다음과 같이 작성하세요:
Review this code for vulnerabilities:
def get_user(user_id):
query = f"SELECT * FROM users WHERE id = {user_id}"
return db.execute(query)또는 도구를 명시적으로 호출하세요:
Use analyze_file on /path/to/my_script.py
Generate tests for this function: ...
Compare these two versions and tell me if it got better: ...🏗️ 아키텍처
mcp-code-sanitizer/
├── server.py # FastMCP entry point (39 lines)
├── config.py # Constants — keys, limits, mappings
├── groq_client.py # Groq API client with auto-retry on rate limits
├── cache.py # In-memory cache with TTL
├── prompts.py # System prompts for all tools
└── tools/
├── analyze.py # analyze_code
├── compare.py # compare_code
├── explain.py # explain_code
├── tests.py # generate_tests
├── file_tool.py # analyze_file (chunking + parallel analysis)
├── cache_tool.py # cache_info
└── report.py # generate_report (HTML)⚙️ 설정
모든 설정은 환경 변수 또는 .env를 통해 가능합니다:
변수 | 기본값 | 설명 |
| — | 필수. console.groq.com에서 획득 |
|
| Groq 모델 |
|
| 캐시 TTL (초 단위) |
|
| 최대 캐시 항목 수 |
사용 가능한 Groq 모델
모델 | 속도 | 품질 |
| ⚡⚡ | ⭐⭐⭐⭐⭐ (기본값) |
| ⚡⚡⚡ | ⭐⭐⭐ |
| ⚡⚡ | ⭐⭐⭐⭐ |
📦 요구 사항
fastmcp>=2.3.0
httpx>=0.27.0
python-dotenv>=1.0.0🤝 기여하기
PR과 이슈는 언제나 환영합니다! 특히 다음 분야에 관심이 있습니다:
다른 LLM 제공업체 지원 (OpenAI, Anthropic)
새로운 도구 (보안 감사, 의존성 검사, 복잡도 분석)
프롬프트 개선
📄 라이선스
MIT — 자유롭게 사용하세요. GitHub 스타를 주시면 감사하겠습니다 ⭐
🔗 링크
Maintenance
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/notasandy/mcp-code-sanitizer'
If you have feedback or need assistance with the MCP directory API, please join our Discord server