DevEnvInfoServer - 개발 환경 정보를 위한 커서 MCP 서버
이 프로젝트는 Cursor 코드 편집기에 개발 환경에 대한 자세한 정보를 제공하는 Cursor Model Context Protocol(MCP) 서버를 구현합니다. 이 서버를 활용하면 Cursor의 지능형 에이전트가 시스템 구성, 설치된 도구 및 실행 중인 프로세스를 더욱 깊이 이해하여 더욱 상황 인식적이고 유용한 지원을 제공할 수 있습니다.
특징
이 MCP 서버는 개발 환경에 대한 다음과 같은 정보 범주를 제공합니다.
시스템 정보:
운영 체제 버전 및 플랫폼 세부 정보
하드웨어 세부 정보(프로세서, 머신, 시스템 아키텍처)
Python 버전 및 위치
설치된 패키지 관리자(brew, npm, pip, yarn, uv, conda) 및 해당 버전
가상 환경 정보(감지된 환경 및 활성 환경)
시스템 로케일 및 시간대
상위 20개 환경 변수
사용 가능한 셸(bash, zsh, fish, sh, powershell, cmd.exe)
간소화된 방화벽 및 네트워크 구성(OS에 따라 다름)
개발 환경 세부 정보:
설치된 컴파일러 및 인터프리터(gcc, clang, javac, node, ruby, perl, php, ghc, rustc, go)
Jupyter 커널 및 실행 중인 컨테이너(Docker, Podman)
가상 머신(Hyper-V, VMware, VirtualBox)
GPU 및 CUDA 정보(NVIDIA GPU 및 CUDA 컴파일러 버전)
최고의 개발 프로세스 및 서비스
Python 관련 정보:
설치된 Python 패키지(pip, conda, poetry, pyenv)
Python 사이트 패키지 위치
활성 Python 환경
패키지 관리자 세부 정보:
Homebrew 설치 패키지(macOS 및 Linux)
글로벌 패키지(npm, yarn, Rust 툴체인, Go 환경)
구성 및 Dotfiles:
셸 구성 파일(.bashrc, .zshrc, .profile, .bash_profile, .config/fish/config.fish)
Git, NPM 및 편집기 구성(VSCode, JetBrains, Neovim)
셸 별칭, 함수 및 사용자 정의 스크립트(셸 구성 파일에서)
설치된 응용 프로그램:
설치된 IDE 및 확장 프로그램(VSCode, JetBrains, Vim, Emacs)
시스템에 설치된 애플리케이션(간단한 목록)
시스템 및 하드웨어 성능(단순화된 메트릭):
CPU 부하 평균
배터리 및 전원 관리 구성
온도 센서 및 팬 속도
네트워크 및 보안(간소화):
네트워크 서비스 실행 및 포트 열기
VPN 및 프록시 설정
SSH 키 및 활성 연결
단순화된 방화벽 로그 및 규칙
컨테이너화 및 가상화:
WSL(Linux용 Windows 하위 시스템)
Docker와 Kubernetes(kubectl)
방랑자
가상 머신(Hyper-V, VMware, VirtualBox)
개발 도구 및 언어:
설치된 개발 언어(Rust, Node.js, Perl, Ruby, PHP, Haskell)
버전 관리 도구(nvm, rbenv, rustup, pyenv)
디버깅 및 성능 모니터링:
부하 평균, 메모리 사용량, IO 병목 현상, GPU 사용률
사용 가능한 디버거 도구(lldb, gdb, strace, dtrace)
버전 제어 및 CI/CD:
Git 구성 및 원격 원본
CI/CD 파이프라인 구성 파일(일반 유형)
클라우드 및 원격 개발:
SSH 구성 및 활성 원격 세션
클라우드 SDK(AWS, GCP, Azure, DigitalOcean)
원격 코드 실행 환경(GitHub Codespaces, Gitpod)
코드 실행 및 디버깅:
활성 디버거 세션(기본 확인)
설치된 디버깅 도구(lldb, gdb, xdebug, pdb)
빌드 시스템 및 종속성 관리:
설치된 빌드 도구(Make, CMake, Bazel, Ninja)
감지된 종속성 파일(requirements.txt, package.json, Cargo.toml 등)
설치된 컴파일러(gcc, clang, javac)
인프라 및 DevOps 도구:
로컬 쿠버네티스 구성
DevOps 도구(Terraform, Pulumi)
로컬 데이터베이스 및 실행 서비스(일반 DB 서비스에 대한 간소화된 검사)
테스트 및 품질 보증:
설치된 테스트 프레임워크(pytest, Jest, Mocha)
코드 린터 및 포매터(flake8, pylint, eslint, prettier)
머신 러닝 및 AI 개발:
GPU 및 CUDA 정보
PyTorch 및 TensorFlow 상태(설치 및 GPU 가용성)
임베디드 개발/IoT:
설치된 임베디드 SDK(Arduino, ESP-IDF, Raspberry Pi Tools)
연결된 장치 및 직렬 포트(간단한 직렬 포트 목록)
생산성 및 워크플로우 개선:
셸 별칭, 함수 및 사용자 정의 스크립트
쉘 히스토리 분석(기본 - 히스토리의 마지막 20줄)
백그라운드 자동화 및 작업 일정(cron/예약된 작업에 대한 간소화된 확인)
Related MCP server: MCP Server Template for Cursor IDE
작동 원리
이 서버는 MCP(Model Context Protocol)를 사용하여 구축되었으며 다음과 같이 작동합니다.
MCP 프로토콜: MCP 서버 프로토콜을 구현하여 커서가 MCP와 통신하여 해당 기능을 발견하고 활용할 수 있도록 합니다.
stdio 전송: 서버는
stdio전송을 사용합니다. 즉, 표준 입력 및 출력 스트림을 통해 Cursor와 통신합니다.정보 수집: 커서 에이전트가 정보를 요청하면 이 서버는 다양한 시스템 명령(
subprocess사용)과 Python 라이브러리(platform,os,sys,psutil,pyserial등)를 실행하여 개발 환경에 대한 데이터를 수집합니다.도구 기반 접근: 각 정보 범주는 MCP 서버 내에서 도구로 노출됩니다. 커서 에이전트는 이러한 도구를 호출하여 특정 정보를 검색할 수 있습니다.
마크다운 출력(선택 사항): 서버는 선택적으로 수집된 모든 정보를 포함하는 마크다운 파일(
development_environment_info.md)을 생성하여 검토 및 디버깅을 더 쉽게 할 수 있습니다.커서 통합: MCP 클라이언트 역할을 하는 커서는 이 서버에 연결하여 제공된 도구를 자동으로 활용하여 개발 컨텍스트에 대한 이해를 높일 수 있습니다.
설치
이 MCP 서버를 설치하고 실행하려면 다음 단계를 따르세요.
저장소 복제:
지엑스피1
Python 가상 환경 만들기(권장):
python -m venv venv가상 환경 활성화:
Linux/macOS의 경우:
source venv/bin/activateWindows의 경우:
venv\Scripts\activate
종속성 설치:
pip install -r requirements.txt
커서 구성
이 MCP 서버를 Cursor에 연결하려면 Cursor 설정에서 이를 구성해야 합니다.
커서 설정 열기:
Cursor Settings>Features>MCP로 이동합니다.새로운 MCP 서버 추가:
+ Add New MCP Server버튼을 클릭합니다.서버 구성: 다음 세부 정보로 양식을 작성하세요.
유형:
stdio이름:
DevEnvInfoServer(또는 원하는 이름)명령어: 서버를 실행하는 명령어를 입력하세요.
system_information_mcp디렉터리에 있고 가상 환경을 활성화한 경우, 다음 명령어를 사용할 수 있습니다.python claudemcp.py참고:
python이 시스템 PATH에 없거나 특정 Python 실행 파일을 사용하는 경우, Python 인터프리터의 전체 경로와claudemcp.py경로를 함께 제공해야 할 수 있습니다. 예:/path/to/your/python venv/bin/python claudemcp.py
서버 추가: "서버 추가" 버튼을 클릭하세요.
도구 목록 새로 고침(선택 사항): 도구 목록을 채우려면 커서의 MCP 서버 목록 오른쪽 상단에 있는 새로 고침 버튼을 수동으로 눌러야 할 수도 있습니다.
DevEnvInfoServer 서버가 이제 Cursor의 MCP 서버 목록에 나타나고 해당 도구는 Composer의 에이전트에서 사용할 수 있어야 합니다.
커서에서의 사용법
구성이 완료되면 Cursor's Agent는 귀하의 요청과 관련이 있다고 판단될 때 DevEnvInfoServer 에서 제공하는 도구를 자동으로 활용합니다.
자동 도구 사용: Composer에서 Cursor 에이전트와 상호 작용할 때, Cursor 에이전트는 개발 환경 정보가 사용자의 질문에 답하거나 요청을 처리하는 데 필요한지 여부를 지능적으로 판단합니다. 필요한 경우, Cursor 에이전트는 백그라운드에서 해당 서버에서 제공하는 도구를 자동으로 사용합니다.
의도적인 도구 프롬프트: 프롬프트에서 도구의 이름이나 설명을 언급하여 에이전트에게 이러한 도구를 사용하도록 명시적으로 지시할 수도 있습니다. 예를 들어 다음과 같이 질문할 수 있습니다.
"현재 환경에는 어떤 Python 패키지가 설치되어 있나요?"
"DevEnvInfoServer 도구를 사용하여 내 시스템에서 사용 가능한 셸을 나열합니다."
도구 승인: 기본적으로 Cursor는 MCP 도구를 실행하기 전에 사용자의 승인을 요청합니다. 승인하기 전에 도구 호출 인수를 검토할 수 있습니다.
YOLO 모드(선택 사항): 승인 메시지 없이 자동으로 도구를 실행하려면 커서의 MCP 설정에서 "YOLO 모드"를 활성화할 수 있습니다. 이 모드는 MCP 도구의 자동 실행을 허용하므로 주의해서 사용해야 합니다.
커서는 DevEnvInfoServer 도구의 응답을 채팅에 직접 표시하여 요청한 개발 환경 정보를 제공합니다.