ADB Friend
요약
ADB Friend는 Android 장치를 ADB(Android Debug Bridge)를 통해 관리하는 데 도움을 주는 강력한 CLI 도구입니다. 이 도구는 파일 동기화, 테스트 데이터 설정, 앱 패키지 제어 등 개발자가 필요로 하는 다양한 기능을 제공합니다. 또한 최신 버전에서는 Model Context Protocol (MCP) 서버 기능까지 지원하여 AI 도구와의 연동성을 높였습니다.
핵심 포인트
- ADB Friend는 Android 장치 관리를 위한 다기능 CLI 도구입니다.
- 파일 동기화, 테스트 환경 구성(애니메이션 비활성화 등), 앱 패키지 제어(제거, 강제 정지) 기능을 제공합니다.
- Homebrew를 통해 쉽게 설치할 수 있으며, `adbfriend --help`로 사용법을 확인할 수 있습니다.
- Model Context Protocol (MCP) 서버 기능을 지원하여 Claude Desktop, Copilot 등 AI 도구와 연동될 수 있습니다.
ADB Friend 은 Android 장치를 ADB 를 통해 관리할 수 있도록 도와주는 작은 CLI 도구입니다. 이 도구의 기능은 주로 개발자를 위해 설계되었지만, 모든 사람이 유용하게 사용할 수 있습니다.
-
컴퓨터에서 폰으로 파일을 동기화
-
테스트 데이터용 설계로, 장치의 기존 파일은 건너뜀
-
테스트를 위한 장치 구성
-
애니메이션 비활성화, 터치 활성화 등...
-
패턴에 따라 앱 제거
-
Packages 명령어
-
glob 을 일치하는 모든 패키지에 immersive 플래그 적용, 강제 정지, 앱 데이터 및 캐시 지우기
-
추가 도구
-
adb-speed (저하된 케이블 식별을 도와줌)
-
Model Context Protocol (MCP) 서버
설치는 Homebrew 를 사용하여 수행할 수 있습니다. 먼저 커스텀 탭이 필요합니다:
brew tap mikepenz/tap
다음으로 AdbFriend CLI 를 설치합니다:
brew install mikepenz/tap/adbfriend
또는 릴리스 페이지에서 미리 빌드된 바이너리를 다운로드할 수 있습니다.
ADB Friend 는 터미널에서 사용할 수 있는 명령 줄 도구입니다.
# 다양한 기능에 대한 정보 및 개요를 얻기 위해 `--help` 명령어로 시작합니다.
adbfriend --help
ADB Friend (버전 1.4.0 부터) 는 Claude Desktop, GitHub Copilot, RayCast 등 인기 있는 AI 도구에서 구성할 수 있는 Model Context Protocol (MCP) 서버도 제공합니다.
구성 파일의 위치 및 세부 사항은 사용된 도구에 따라 다릅니다. 아래는 Claude Desktop 을 위한 예시입니다.
{
"mcpServers": {
"adb-friend": {
"command": "/opt/homebrew/bin/adbfriend",
"args": [
"mcp",
"server"
],
"env": {
"ANDROID_HOME": "/Users/mikepenz/Development/android/sdk"
}
}
}
}
중요
ANDROID_HOME 이 제공되지 않으면 adb-server 를 수동으로 시작해야 합니다. 그렇지 않으면 연결 예외가 발생합니다.
시작한 서버를 디버그하기 위해 npx @modelcontextprotocol/inspector 를 사용할 수 있습니다.
# 터미널에서 인스펙터 설치 및 실행
npx @modelcontextprotocol/inspector
이후 터미널에 제공된 URL 로 웹사이트를 시작합니다. IntelliJ 또는 실제 명령을 사용하여 mcp server 를 시작합니다.
# 기본 포트는 `3001`
adbfriend mcp server --sse true
| 도구 이름 | 설명 |
|---|---|
| check-adb-speed | 제공된 시리얼의 Android 장치 USB 연결 속도를 확인합니다. |
| clear-installed-package | Android 장치에서 제공된 패키지 이름의 패키지 데이터를 지웁니다. |
| set-immersive-full-for-package | Android 장치에서 제공된 패키지 이름에 'immersive-full' 플래그를 설정합니다. |
| force-stop-process | Android 장치에서 제공된 패키지 이름의 정지를 강제합니다. |
| uninstall-package | Android 장치에서 제공된 패키지 이름을 제거합니다. |
| get-connected-devices | 시리얼, 모델 및 상태를 포함한 모든 연결된 Android 장치에 대한 정보를 가져옵니다. |
| get-installed-packages | Android 장치에서 설치된 모든 패키지에 대한 정보를 가져옵니다. 타사 앱만 필터링을 지원합니다. |
| list_allowed_directories | 파일 시스템 도구에 의해 액세스할 수 있는 디렉토리를 나열합니다. |
| list-files | 파일을 나열합니다 |
AI 자동 생성 콘텐츠
본 콘텐츠는 GitHub Claude Ecosystem의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기