local-only server
The server can only run on the client’s local machine because it depends on local resources.
Integrations
Mac Shell MCP 서버
ZSH 셸을 사용하여 macOS 터미널 명령을 실행하기 위한 MCP(Model Context Protocol) 서버입니다. 이 서버는 내장된 허용 목록 및 승인 메커니즘을 통해 셸 명령을 안전하게 실행할 수 있는 방법을 제공합니다.
특징
- MCP를 통해 macOS 터미널 명령 실행
- 보안 수준에 따른 명령 허용 목록:
- 안전 : 승인 없이 실행할 수 있는 명령
- 승인 필요 : 실행 전 명시적 승인이 필요한 명령
- 금지됨 : 명시적으로 차단된 명령
- 일반적인 안전 명령이 포함된 사전 구성된 허용 목록
- 잠재적으로 위험한 명령에 대한 승인 워크플로
- 포괄적인 명령 관리 도구
설치
지엑스피1
용법
서버 시작
또는 직접:
Roo Code 및 Claude Desktop에서 구성
Roo Code와 Claude Desktop은 모두 MCP 서버에 대해 유사한 구성 형식을 사용합니다. Mac Shell MCP 서버를 설정하는 방법은 다음과 같습니다.
로컬 설치 사용
Roo 코드 구성
~/Library/Application Support/Code/User/globalStorage/rooveterinaryinc.roo-cline/settings/cline_mcp_settings.json
에 있는 Roo Code MCP 설정 구성 파일에 다음을 추가합니다.
클로드 데스크톱 구성
~/Library/Application Support/Claude/claude_desktop_config.json
에 있는 Claude Desktop 구성 파일에 다음을 추가합니다.
/path/to/mac-shell-mcp
저장소를 복제한 실제 경로로 바꾸세요.
NPX 사용(권장)
터미널 창을 열어둘 필요 없이 더욱 편리하게 설정하려면 패키지를 npm에 게시하고 npx와 함께 사용할 수 있습니다.
npm에 게시하기
- package.json을 귀하의 세부 정보로 업데이트하세요.
- npm에 게시:Copy
Roo 코드 구성
클로드 데스크톱 구성
이 접근 방식을 사용하면 별도의 터미널 창이나 수동 개입 없이 MCP 클라이언트가 MCP 서버를 자동으로 시작할 수 있습니다.
메모 :
- Roo 코드의 경우: 보안상의 이유로
alwaysAllow
빈 배열[]
로 설정하는 것이 좋습니다. 명령을 실행하기 전에 승인을 요청하기 때문입니다. 특정 명령을 승인 없이 허용하려면 배열에 해당 명령 이름을 추가할 수 있습니다. 예:"alwaysAllow": ["execute_command", "get_whitelist"]
.- Claude Desktop의 경우: 보안상의 이유로
alwaysAllow
를false
로 설정하는 것이 좋습니다. Claude Desktop은 배열 대신 부울 값을 사용하는데,false
모든 명령에 승인이 필요함을 의미하고,true
모든 명령이 확인 없이 허용됨을 의미합니다.중요 :
alwaysAllow
매개변수는 Mac Shell MCP 서버가 아닌 MCP 클라이언트(Roo Code 또는 Claude Desktop)에서 처리됩니다. 클라이언트가 서버로 요청을 보내기 전에 승인 절차를 처리하므로 서버는 두 형식 중 어떤 형식이든 정상적으로 작동합니다.
사용 가능한 도구
서버는 다음과 같은 MCP 도구를 제공합니다.
execute_command
macOS에서 셸 명령을 실행합니다.
get_whitelist
허용된 명령 목록을 가져옵니다.
add_to_whitelist
허용 목록에 명령을 추가합니다.
update_security_level
허용 목록에 있는 명령의 보안 수준을 업데이트합니다.
remove_from_whitelist
허용 목록에서 명령을 제거합니다.
get_pending_commands
승인 대기 중인 명령 목록을 가져옵니다.
approve_command
보류 중인 명령을 승인합니다.
deny_command
보류 중인 명령을 거부합니다.
기본적으로 허용된 명령
안전 명령(승인 필요 없음)
ls
- 디렉토리 내용 나열pwd
- 작업 디렉토리 인쇄echo
- 표준 출력에 텍스트 인쇄cat
- 파일 연결 및 인쇄grep
- 파일에서 패턴 검색find
- 디렉토리 계층 구조에서 파일 찾기cd
- 디렉토리 변경head
- 파일의 첫 번째 부분 출력tail
- 파일의 마지막 부분 출력wc
- 줄 바꿈, 단어, 바이트 수를 출력합니다.
승인이 필요한 명령
mv
- 파일 이동(이름 바꾸기)cp
- 파일 및 디렉토리 복사mkdir
- 디렉토리 생성touch
- 파일 타임스탬프를 변경하거나 빈 파일을 만듭니다.chmod
- 파일 모드 비트 변경chown
- 파일 소유자 및 그룹 변경
금지된 명령
rm
- 파일 또는 디렉토리 제거sudo
- 다른 사용자로 명령 실행
보안 고려 사항
- 모든 명령은 MCP 서버를 실행하는 사용자의 권한으로 실행됩니다.
- 승인이 필요한 명령은 명시적으로 승인될 때까지 대기열에 보관됩니다.
- 금지된 명령은 실행되지 않습니다.
- 서버는 쉘 주입을 방지하기 위해
exec
대신 Node.js의execFile
사용합니다. - 인수는 지정된 경우 허용된 패턴에 대해 검증됩니다.
화이트리스트 확장
add_to_whitelist
도구를 사용하여 허용 목록을 확장할 수 있습니다. 예:
npm 패키지로 사용
Brave Search와 같은 다른 MCP 서버와 마찬가지로 npx
와 함께 Mac Shell MCP 서버를 사용하려면 npm에 게시하거나 GitHub에서 직접 사용할 수 있습니다.
npx로 구성
MCP 설정 구성에 다음을 추가하세요.
루 코드
클로드 데스크탑
이렇게 하면 수동 복제 및 빌드 프로세스가 필요 없이 서버가 자동으로 다운로드되어 실행됩니다.
npm에 게시하기
npm에 자신의 버전을 게시하려면 다음을 수행합니다.
- package.json을 귀하의 세부 정보로 업데이트하세요
- package.json에 "bin" 필드를 추가합니다.Copy
- npm에 게시:Copy
그런 다음 MCP 구성에서 사용할 수 있습니다.
루 코드
클로드 데스크탑
특허
이 MCP 서버는 MIT 라이선스에 따라 라이선스가 부여됩니다. 즉, MIT 라이선스의 약관에 따라 소프트웨어를 자유롭게 사용, 수정 및 배포할 수 있습니다. 자세한 내용은 프로젝트 저장소의 LICENSE 파일을 참조하세요.
This server cannot be installed
Claude 또는 Roo Code를 통해 macOS 터미널 명령을 안전하게 실행할 수 있는 MCP 서버로, 보안 허용 목록 및 승인 메커니즘이 내장되어 있습니다.