Install
uvx mcp-server-git누구에게 맞나
모델이 로컬 Git 저장소에서 상호작용과 자동화를 하고, 먼저 작업 트리 상태를 읽은 뒤 검색이나 변경을 이어갈지 결정해야 하는 사람. 이미 uv가 설치되어 있어 uvx로 mcp-server-git을 바로 실행할 수 있고, 실제 repo_path를 제공할 수 있는 운영자에게 맞다. 로컬 저장소가 없거나, 문서에 모든 쓰기 도구가 이미 나열되어 있기를 기대하는 사람에게는 맞지 않다. 공식 페이지: https://github.com/modelcontextprotocol/servers-archived/tree/main/src/git
3분 만에 첫 시도
공식 경로 하나만 따른다. uvx로 mcp-server-git을 직접 실행하고, 먼저 pip로 가지 않는다.
전제: 이 기기에서 uv / uvx를 쓸 수 있다. 설명은 이때 “no specific installation is needed”라고 적는다. 또한 로컬 Git 저장소 경로를 준비하고, 이후 repo_path는 그것을 가리켜야 한다. uv 설명: https://docs.astral.sh/uv/ uvx 설명: https://docs.astral.sh/uv/guides/tools/
설치와 구성 위치: MCP 클라이언트에서 시작 명령을 직접 호출로 적는다.
uvx mcp-server-git
저위험 동작: 연결에 성공한 뒤 git_status만 호출하고, 매개변수는 repo_path(문자열, Git 저장소 경로)이다. 작업 트리 상태를 보여 주고 현재 작업 디렉터리 상태 텍스트를 반환한다. 처음에 “manipulate”류 작업을 하지 않는다. 발췌는 서버가 read / search / manipulate 능력을 가졌다는 것만 보장하며, git_status 이외의 도구 이름은 쓰지 않는다.
성공 신호: 작업 트리 상태 텍스트가 반환된다(깨끗하거나 커밋되지 않은 변경이 있어도 성공). 저장소를 찾지 못하거나 명령이 없다는 응답이 아니다. 실패하면 먼저 uvx가 사용 가능한지, repo_path가 기존 Git 저장소를 가리키는지 확인한다.
사용 사례
사례 1: 작업 트리 보기. 도구 git_status에 해당한다. 검색이나 변경을 시작하기 전에 모델이 현재 브랜치가 깨끗한지, 추적되지 않은 파일이 있는지 읽게 한다. 입력은 repo_path뿐이고 반환은 텍스트 상태다. 증거에 그 상태 텍스트의 필드 구조가 없으므로 구조화된 diff를 바로 얻는다고 가정하지 않는다.
사례 2: 같은 저장소에서 읽기 전용을 넘는 자동화. 서버 위치는 “Git repository interaction and automation”이며 read, search, manipulate가 가능하다고 적혀 있다. 그러나 현재 발췌가 펼친 것은 git_status 한 항목뿐이고, 프로젝트는 early development에 있으며 기능과 사용 가능한 도구는 변하고 확장된다고 한다. 따라서 두 번째 사례는 여기까지만 가능하다. 먼저 git_status로 저장소에 접근 가능한지 확인한 뒤, 클라이언트가 실제로 나열한 다른 도구에서 작업한다. 클라이언트가 쓰기나 검색 도구를 나열하지 않으면 상태 조회에서 멈춘다. 다른 Git 플러그인에서 commit / push 명령을 채워 넣지 않는다.
사용 경계
초기 개발 중인 서버이며 도구 목록은 늘거나 줄 수 있다. 현재 클라이언트에서 본 이름을 장기 안정 API로 보지 않는다.
권장 설치는 uvx이다. pip로 mcp-server-git를 설치한 뒤 python -m mcp_server_git를 실행하는 것은 대안일 뿐이며, uvx와 나란히 첫 경로로 두지 않는다.
증거가 자세히 기술한 것은 git_status뿐이다. read / search / manipulate는 능력 개요일 뿐, 이미 나열된 도구 설명서 세 부가 아니다. 저장소에 대한 manipulate는 부작용이 있다. 확인 지점은 작업 트리나 커밋 역사에 예상 변화가 나타난 것이며, repo_path가 잘못된 디렉터리를 가리키지 않은 것이다.
접근하는 것은 로컬 Git 저장소다. 로컬 읽기가 0도 아니고 프라이버시 경계가 0도 아니다. 클라이언트 목록도, 원격 호스팅 진입점도 없다.