Skip to main content
Glama
import_error_troubleshooting.md1.82 kB
# ImportError 트러블슈팅 가이드 ## 🚨 문제 개요 **문제명**: 상대 임포트 실패로 인한 서버 크래시 **발생 시점**: FastMCP 클라이언트로 테스트 실행 시 **에러 메시지**: ``` ImportError: attempted relative import with no known parent package RuntimeError: Client failed to connect: Connection closed ``` ## 🔍 원인 분석 **근본 원인**: `server.py`에서 상대 임포트(`from .tools_read import ...`)를 사용했지만, FastMCP 클라이언트가 파일을 직접 실행할 때 패키지 컨텍스트가 없어서 실패 **관련 코드**: `mcp_github/server.py`의 임포트 구문 ## ✅ 해결 방법 **해결 단계**: 1. 상대 임포트를 절대 임포트로 변경 2. `__init__.py` 파일 존재 확인 3. 테스트 코드에서 올바른 클라이언트 연결 방식 사용 **코드 예시**: ```python # ❌ 잘못된 방법 from .tools_read import get_repo, list_pull_requests, get_pr_diff, get_file # ✅ 올바른 방법 from mcp_github.tools_read import get_repo, list_pull_requests, get_pr_diff, get_file ``` ## 🧪 검증 방법 **테스트 명령어**: ```bash python tests/test_tools.py ``` **예상 결과**: 모든 도구 테스트가 성공적으로 실행되고, FastMCP 클라이언트가 정상 연결됨 ## 📚 참고 자료 - [FastMCP 공식 문서](https://gofastmcp.com) - [Python 패키지 임포트 가이드](https://docs.python.org/3/reference/import.html) ## 🔄 예방 방법 **앞으로 주의사항**: - MCP 서버 개발 시 상대 임포트보다 절대 임포트 사용 - `__init__.py` 파일이 모든 패키지 디렉토리에 존재하는지 확인 - FastMCP 클라이언트 테스트 시 서버를 별도 프로세스로 실행 --- **작성일**: 2024-09-04 **작성자**: J-nowcow **버전**: 0.1.0

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/J-nowcow/github-MCP-practice'

If you have feedback or need assistance with the MCP directory API, please join our Discord server