local-only server
The server can only run on the client’s local machine because it depends on local resources.
Integrations
Supports configuration through environment variables that can be set directly or through a .env file, particularly for specifying the path to Git repositories.
Provides tools for managing local Git repositories, including listing repositories, retrieving and creating tags, listing commits, pushing tags to remote repositories, and refreshing repositories by pulling from remotes.
깃 MCP
로컬 저장소에서 Git 작업을 관리하기 위한 MCP 서버입니다.
설치
Smithery를 통해 설치
Smithery를 통해 Claude Desktop에 Git MCP를 자동으로 설치하려면:
지엑스피1
수동 설치
구성
다음 JSON 구성 스니펫을 사용하여 MCP 서버를 추가합니다.
특징 및 사용법
환경 변수
GIT_REPOS_PATH
: Git 저장소가 있는 디렉토리 경로(필수)
이를 사용자 환경에서 설정할 수도 있고, 서버를 실행하는 디렉토리에 .env
파일을 만들 수도 있습니다.
사용 가능한 방법
저장소 목록
구성된 경로에 있는 모든 Git 저장소를 나열합니다.
- 매개변수: 없음
- 반환: 저장소 이름 목록
마지막_git_태그를_가져오기
지정된 저장소에서 마지막 Git 태그를 찾습니다.
- 매개변수:
repo_name
(Git 저장소 이름) - 반환:
version
(태그 이름) 및date
(태그 생성 날짜)가 포함된 사전
마지막 태그 이후의 커밋 목록
마지막 Git 태그와 HEAD 사이의 커밋 메시지를 나열합니다.
- 매개변수:
repo_name
: Git 저장소의 이름max_count
(선택 사항): 반환할 커밋의 최대 수
- 반환:
hash
,author
,date
및message
포함된 사전 목록
create_git_tag
지정된 저장소에 새로운 git 태그를 생성합니다.
- 매개변수:
repo_name
: git 저장소의 이름tag_name
: 생성할 태그의 이름message
(선택 사항): 주석이 달린 태그에 대한 메시지(제공되지 않으면 가벼운 태그가 생성됨)
- 반환:
status
,version
(태그 이름),date
(태그 생성 날짜),type
(주석 있음 또는 경량)이 포함된 사전
푸시_git_태그
기존 git 태그를 기본 원격 저장소에 푸시합니다.
- 매개변수:
repo_name
: git 저장소의 이름tag_name
: 푸시할 태그의 이름
- 반환:
status
,remote
(원격의 이름),tag
(태그의 이름),message
(성공 메시지)가 포함된 사전
저장소 새로 고침
메인 브랜치(또는 대체용으로 마스터)를 체크아웃하고 모든 원격 브랜치에서 가져와서 저장소를 새로 고칩니다.
- 매개변수:
repo_name
: git 저장소의 이름
- 반환:
status
,repository
,branch
및pull_results
(각 원격에 대한 결과)가 포함된 사전
문제 해결
- 저장소를 찾을 수 없음 :
GIT_REPOS_PATH
올바르게 설정되었고 저장소가 있는지 확인하세요. - 태그를 찾을 수 없습니다 . 저장소에 아직 태그가 없습니다.
개발
테스트
이 프로젝트에는 두 개의 테스트 스크립트가 포함되어 있습니다.
test_git_mcp.py
- MCP 서버를 사용하지 않고 기본 Git 명령 기능을 직접 테스트합니다.test_mcp_server.py
- 서버 인스턴스를 시작하고 호출하여 MCP 서버 기능을 테스트합니다.
테스트를 실행하려면:
You must be authenticated.
Tools
로컬 저장소에서 Git 작업을 관리하기 위한 MCP 서버로, 표준화된 인터페이스를 통해 사용자가 저장소를 나열하고, 태그를 가져오고 생성하고, 커밋을 나열하고, 태그를 푸시하고, 저장소를 새로 고칠 수 있습니다.