code-graph-mcp은(는) 무엇을 하나요?
AST 지식 그래프 MCP 서버 — Claude Code를 위한 의미 검색, 호출 그래프 탐색, HTTP 경로 추적, 영향 분석. Tree-sitter를 통해 10개 언어를 자동 인덱싱합니다.
개요
code-graph-mcp는 Claude Code와 같은 AI 코딩 도우미가 대규모 코드베이스를 정확하게 이해하고 탐색할 수 있도록 설계된 MCP(Model Context Protocol) 서버입니다. AST(Abstract Syntax Tree)를 기반으로 한 지식 그래프를 구축하여, 코드의 구조적 의미를 파악하고 복잡한 쿼리를 수행합니다.
주요 기능
- 의미 검색 (Semantic Search): 변수명, 함수명, 클래스명 등 코드 심볼을 의미 기반으로 검색합니다.
- 호출 그래프 탐색 (Call Graph Traversal): 함수 호출 관계를 추적하여 전체 호출 체인을 파악합니다.
- HTTP 경로 추적 (HTTP Route Tracing): 웹 프레임워크의 라우팅 경로를 식별하고 요청 흐름을 추적합니다.
- 영향 분석 (Impact Analysis): 코드 변경이 전체 시스템에 미치는 영향을 분석합니다.
지원 언어
| 언어 | 파일 확장자 |
|---|---|
| Python | .py |
| JavaScript | .js, .jsx |
| TypeScript | .ts, .tsx |
| Go | .go |
| Rust | .rs |
| Java | .java |
| C | .c, .h |
| C++ | .cpp, .hpp, .cc, .hh |
| Ruby | .rb |
| PHP | .php |
설치 방법
전제 조건
- Node.js 18 이상
- Claude Desktop 또는 Claude Code CLI
MCP 클라이언트 설정
Claude Desktop 설정 파일 (claude_desktop_config.json)에 다음을 추가합니다:
{
"mcpServers": {
"code-graph-mcp": {
"command": "npx",
"args": ["-y", "@sdsrss/code-graph-mcp"],
"env": {
"CODEGRAPH_INDEX_DIR": "/path/to/index"
}
}
}
}
사용법
설치 후 Claude Code에서 다음과 같이 명령어를 실행할 수 있습니다:
-
저장소 인덱싱:
codegraph index ./my-project -
의미 검색:
codegraph search "사용자 인증 처리 함수" -
호출 그래프 조회:
codegraph calls `login_user` -
영향 분석:
codegraph impact ./src/auth.go
환경 변수
| 변수 | 설명 |
|---|---|
CODEGRAPH_INDEX_DIR | 인덱스 파일 저장 디렉토리 (기본값: .codegraph-index) |
CODEGRAPH_MAX_FILE_SIZE | 인덱싱할 최대 파일 크기 (MB 단위, 기본값: 10) |
CODEGRAPH_EXCLUDE | 인덱싱에서 제외할 패턴 (콤마로 구분, 기본값: node_modules,dist,build) |
작동 방식
이 서버는 Tree-sitter 파서를 사용하여 각 소스 파일의 AST를 추출하고, 심볼 간의 관계(호출, 상속, 정의, 참조)를 지식 그래프로 저장합니다. MCP 프로토콜을 통해 Claude Code와 통신하며, 질의에 대한 구조화된 응답을 제공합니다.
문제 해결
- 인덱싱이 느린 경우:
CODEGRAPH_EXCLUDE환경 변수를 설정하여 불필요한 디렉토리를 제외하세요. - 메모리 부족 오류:
CODEGRAPH_MAX_FILE_SIZE를 줄여 대용량 파일 처리를 제한하세요. - 언어 미지원: 지원 언어 목록(
## 지원 언어참조)을 확인하고, 해당 언어가 포함되어 있는지 점검하세요.
라이선스
MIT