hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
Integrations
Integrates with Git repositories by recognizing and excluding .git directories from analysis
Provides language-specific code parsing and analysis for JavaScript files, with symbol extraction and AST-based understanding
Enables analysis of Julia code with tree-sitter parsing, symbol extraction, and dependency analysis
MCP 트리시터 서버
클로드가 적절한 컨텍스트 관리를 통해 코드베이스에 지능적으로 접근할 수 있도록 설계된 트리시터를 사용하여 코드 분석 기능을 제공하는 MCP(모델 컨텍스트 프로토콜) 서버입니다.
특징
- 🔍 유연한 탐색 : 다양한 수준의 세부성에서 코드를 검사합니다.
- 🧠 컨텍스트 관리 : 컨텍스트 창을 압도하지 않으면서 필요한 정보만 제공합니다.
- 🌐 언어 독립적 : tree-sitter-language-pack을 통해 Python, JavaScript, TypeScript, Go, Rust, C, C++, Swift, Java, Kotlin, Julia, APL을 포함한 다양한 프로그래밍 언어를 지원합니다.
- 🌳 구조 인식 : 효율적인 커서 기반 탐색을 통해 AST 기반 이해를 활용합니다.
- 🔎 검색 가능 : 텍스트 검색 및 트리시터 쿼리를 사용하여 특정 패턴 찾기
- 🔄 캐싱 : 파스 트리 캐싱을 통한 성능 최적화
- 🔑 심볼 추출 : 함수, 클래스 및 기타 코드 심볼을 추출하고 분석합니다.
- 📊 종속성 분석 : 코드 종속성 및 관계를 식별하고 분석합니다.
- 🧩 상태 지속성 : 호출 간에 프로젝트 등록 및 캐시된 데이터를 유지합니다.
- 🔒 보안 : 내장된 보안 경계 및 입력 검증
사용 가능한 모든 명령의 포괄적인 목록, 현재 구현 상태 및 자세한 기능 매트릭스는 FEATURES.md 문서를 참조하세요.
설치
필수 조건
- 파이썬 3.10+
- 선호하는 언어에 대한 트리시터 언어 파서
기본 설치
지엑스피1
개발 설치
빠른 시작
Claude Desktop으로 실행
MCP CLI를 통하거나 Claude Desktop을 수동으로 구성하여 Claude Desktop에서 서버를 사용할 수 있습니다.
MCP CLI 사용
Claude Desktop에 서버를 등록하세요:
수동 구성
또는 Claude Desktop을 수동으로 구성할 수 있습니다.
- Claude Desktop 구성 파일을 엽니다.
- macOS/Linux:
~/Library/Application Support/Claude/claude_desktop_config.json
- Windows:
%APPDATA%\Claude\claude_desktop_config.json
파일이 없으면 새로 만듭니다.
- macOS/Linux:
mcpServers
섹션에 서버를 추가합니다.또는 uv 또는 다른 패키지 관리자를 사용하는 경우:Copy참고:Copy/ABSOLUTE/PATH/TO/YOUR/PROJECT
프로젝트 디렉토리의 실제 절대 경로로 바꿔야 합니다.- 파일을 저장하고 Claude Desktop을 다시 시작하세요.
최소 하나의 MCP 서버를 올바르게 구성하면 Claude Desktop 인터페이스에 MCP 도구 아이콘(망치)이 나타납니다. 이 아이콘을 클릭하면 tree_sitter
서버 기능에 액세스할 수 있습니다.
릴리스된 버전으로 구성
PyPI(릴리스 버전)에서 패키지를 수동으로 설치하지 않거나 저장소를 복제하지 않으려면 Claude Desktop에 대해 다음 구성을 사용하세요.
- Claude Desktop 구성 파일을 엽니다(위와 같은 위치).
mcpServers
섹션에 tree-sitter 서버를 추가합니다.Copy- 파일을 저장하고 Claude Desktop을 다시 시작하세요.
이 방법은 uvx
사용하여 설치된 PyPI 패키지를 직접 실행하는데, 이는 출시된 버전에 권장되는 방식입니다. 서버는 기본 구성에서 실행하기 위해 추가 매개변수를 필요로 하지 않습니다.
상태 지속성
MCP 트리시터 서버는 호출 간 상태를 유지합니다. 이는 다음을 의미합니다.
- 프로젝트는 명시적으로 제거되거나 서버가 다시 시작될 때까지 등록된 상태로 유지됩니다.
- 구문 분석 트리는 구성 설정에 따라 캐시됩니다.
- 언어 정보는 서버의 수명 동안 유지됩니다.
이러한 지속성은 주요 구성 요소에 대한 싱글톤 패턴을 사용하여 서버가 작동하는 동안 메모리에 유지됩니다.
독립형 서버로 실행
MCP Inspector와 함께 사용
용법
프로젝트 등록
먼저 분석할 프로젝트를 등록하세요.
파일 탐색
프로젝트의 파일 나열:
파일 내용 보기:
코드 구조 분석
구문 트리를 얻으세요:
기호 추출:
검색 코드
텍스트 검색:
트리시터 쿼리 실행:
복잡성 분석
직접 파이썬 사용법
이 라이브러리는 주로 MCP 서버를 통해 사용되지만 Python 코드에서 직접 사용할 수도 있습니다.
구성
YAML 구성 파일을 만듭니다.
다음을 로드하세요:
선호하는 언어에 관하여
preferred_languages
설정은 서버 시작 시 미리 로드되는 언어 파서를 필요에 따라 로드하는 것이 아니라 제어합니다. 이 설정은 다음과 같은 여러 가지 이점을 제공합니다.
- 더 빠른 초기 분석 : 미리 로드된 언어 파일을 처음 분석할 때 지연이 없습니다.
- 조기 오류 감지 : 파서 문제는 사용 중이 아닌 시작 시에 발견됩니다.
- 예측 가능한 메모리 할당 : 자주 사용되는 파서의 메모리가 미리 할당됩니다.
기본적으로 모든 파서는 처음 필요할 때 온디맨드로 로드됩니다. 최적의 성능을 위해 프로젝트에서 가장 자주 사용하는 언어를 지정하세요.
다음과 같은 특정 설정을 구성할 수도 있습니다.
또는 환경 변수를 사용하세요.
서버는 다음에서 구성을 찾습니다.
configure()
호출에서 지정된 경로MCP_TS_CONFIG_PATH
환경 변수에 의해 지정된 경로- 기본 위치:
~/.config/tree-sitter/config.yaml
사용 가능한 리소스
서버는 다음과 같은 MCP 리소스를 제공합니다.
project://{project}/files
- 프로젝트의 모든 파일 나열project://{project}/files/{pattern}
- 패턴과 일치하는 파일 나열project://{project}/file/{path}
- 파일 내용 가져오기project://{project}/file/{path}/lines/{start}-{end}
- 파일에서 특정 줄 가져오기project://{project}/ast/{path}
- 파일의 AST를 가져옵니다.project://{project}/ast/{path}/depth/{depth}
- 사용자 정의 깊이로 AST 가져오기
사용 가능한 도구
서버는 다음을 위한 도구를 제공합니다.
- 프로젝트 관리:
register_project_tool
,list_projects_tool
,remove_project_tool
- 언어 관리:
list_languages
,check_language_available
- 파일 작업:
list_files
,get_file
,get_file_metadata
- AST 분석:
get_ast
,get_node_at_position
- 코드 검색:
find_text
,run_query
- 심볼 추출:
get_symbols
,find_usage
- 프로젝트 분석:
analyze_project
,get_dependencies
,analyze_complexity
- 쿼리 작성:
get_query_template_tool
,list_query_templates_tool
,build_query
,adapt_query
,get_node_types
- 유사 코드 감지:
find_similar_code
- 캐시 관리:
clear_cache
- 구성 진단:
diagnose_config
각 도구의 구현 상태, 종속성 및 사용 예에 대한 자세한 내용은 FEATURES.md를 참조하세요.
사용 가능한 프롬프트
서버는 다음과 같은 MCP 프롬프트를 제공합니다.
code_review
- 코드 검토를 위한 프롬프트 생성explain_code
- 코드 설명을 위한 프롬프트를 만듭니다.explain_tree_sitter_query
- 트리시터 쿼리 구문 설명suggest_improvements
- 코드 개선 제안을 위한 프롬프트를 만듭니다.project_overview
- 프로젝트 개요 분석을 위한 프롬프트 만들기
특허
MIT
This server cannot be installed
클로드가 적절한 컨텍스트 관리를 통해 코드베이스에 지능적으로 접근할 수 있도록 설계된 트리시터를 사용하여 코드 분석 기능을 제공하는 MCP(모델 컨텍스트 프로토콜) 서버입니다.
- Features
- Installation
- Quick Start
- State Persistence
- Usage
- Direct Python Usage
- Configuration
- Available Resources
- Available Tools
- Available Prompts
- License