DevEnvInfoServer

by carterlasalle
Verified

local-only server

The server can only run on the client’s local machine because it depends on local resources.

Integrations

  • Provides information about installed Arduino SDKs and connected Arduino devices through serial ports.

  • Detects and reports on installed Bazel build system configuration and usage in the development environment.

  • Identifies CMake installations and provides information about CMake-based build configurations.

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/예약된 작업에 대한 간소화된 확인)

작동 원리

이 서버는 MCP(Model Context Protocol)를 사용하여 구축되었으며 다음과 같이 작동합니다.

  1. MCP 프로토콜: MCP 서버 프로토콜을 구현하여 커서가 MCP와 통신하여 해당 기능을 발견하고 활용할 수 있도록 합니다.
  2. stdio 전송: 서버는 stdio 전송을 사용합니다. 즉, 표준 입력 및 출력 스트림을 통해 Cursor와 통신합니다.
  3. 정보 수집: 커서 에이전트가 정보를 요청하면 이 서버는 다양한 시스템 명령( subprocess 사용)과 Python 라이브러리( platform , os , sys , psutil , pyserial 등)를 실행하여 개발 환경에 대한 데이터를 수집합니다.
  4. 도구 기반 접근: 각 정보 범주는 MCP 서버 내에서 도구로 노출됩니다. 커서 에이전트는 이러한 도구를 호출하여 특정 정보를 검색할 수 있습니다.
  5. 마크다운 출력(선택 사항): 서버는 선택적으로 수집된 모든 정보를 포함하는 마크다운 파일( development_environment_info.md )을 생성하여 검토 및 디버깅을 더 쉽게 할 수 있습니다.
  6. 커서 통합: MCP 클라이언트 역할을 하는 커서는 이 서버에 연결하여 제공된 도구를 자동으로 활용하여 개발 컨텍스트에 대한 이해를 높일 수 있습니다.

설치

이 MCP 서버를 설치하고 실행하려면 다음 단계를 따르세요.

  1. 저장소 복제:지엑스피1
  2. Python 가상 환경 만들기(권장):
    python -m venv venv
  3. 가상 환경 활성화:
    • Linux/macOS의 경우:
      source venv/bin/activate
    • Windows의 경우:
      venv\Scripts\activate
  4. 종속성 설치:
    pip install -r requirements.txt

커서 구성

이 MCP 서버를 Cursor에 연결하려면 Cursor 설정에서 이를 구성해야 합니다.

  1. 커서 설정 열기: Cursor Settings > Features > MCP 로 이동합니다.
  2. 새로운 MCP 서버 추가: + Add New MCP Server 버튼을 클릭합니다.
  3. 서버 구성: 다음 세부 정보로 양식을 작성하세요.
    • 유형: stdio
    • 이름: DevEnvInfoServer (또는 원하는 이름)
    • 명령어: 서버를 실행하는 명령어를 입력하세요. system_information_mcp 디렉터리에 있고 가상 환경을 활성화한 경우, 다음 명령어를 사용할 수 있습니다.
      python claudemcp.py
      참고: python 이 시스템 PATH에 없거나 특정 Python 실행 파일을 사용하는 경우, Python 인터프리터의 전체 경로와 claudemcp.py 경로를 함께 제공해야 할 수 있습니다. 예:
      /path/to/your/python venv/bin/python claudemcp.py
  4. 서버 추가: "서버 추가" 버튼을 클릭하세요.
  5. 도구 목록 새로 고침(선택 사항): 도구 목록을 채우려면 커서의 MCP 서버 목록 오른쪽 상단에 있는 새로 고침 버튼을 수동으로 눌러야 할 수도 있습니다.

DevEnvInfoServer 서버가 이제 Cursor의 MCP 서버 목록에 나타나고 해당 도구는 Composer의 에이전트에서 사용할 수 있어야 합니다.

커서에서의 사용법

구성이 완료되면 Cursor's Agent는 귀하의 요청과 관련이 있다고 판단될 때 DevEnvInfoServer 에서 제공하는 도구를 자동으로 활용합니다.

  • 자동 도구 사용: Composer에서 Cursor 에이전트와 상호 작용할 때, Cursor 에이전트는 개발 환경 정보가 사용자의 질문에 답하거나 요청을 처리하는 데 필요한지 여부를 지능적으로 판단합니다. 필요한 경우, Cursor 에이전트는 백그라운드에서 해당 서버에서 제공하는 도구를 자동으로 사용합니다.
  • 의도적인 도구 프롬프트: 프롬프트에서 도구의 이름이나 설명을 언급하여 에이전트에게 이러한 도구를 사용하도록 명시적으로 지시할 수도 있습니다. 예를 들어 다음과 같이 질문할 수 있습니다.
    • "현재 환경에는 어떤 Python 패키지가 설치되어 있나요?"
    • "DevEnvInfoServer 도구를 사용하여 내 시스템에서 사용 가능한 셸을 나열합니다."
  • 도구 승인: 기본적으로 Cursor는 MCP 도구를 실행하기 전에 사용자의 승인을 요청합니다. 승인하기 전에 도구 호출 인수를 검토할 수 있습니다.
  • YOLO 모드(선택 사항): 승인 메시지 없이 자동으로 도구를 실행하려면 커서의 MCP 설정에서 "YOLO 모드"를 활성화할 수 있습니다. 이 모드는 MCP 도구의 자동 실행을 허용하므로 주의해서 사용해야 합니다.

커서는 DevEnvInfoServer 도구의 응답을 채팅에 직접 표시하여 요청한 개발 환경 정보를 제공합니다.

-
security - not tested
F
license - not found
-
quality - not tested

커서 코드 편집기에 개발 환경에 대한 자세한 정보를 제공하는 MCP 서버로, 상황에 맞는 지원을 더욱 제공합니다.

  1. Features
    1. How it Works
      1. Installation
        1. Configuration for Cursor
          1. Usage in Cursor
            ID: rodas2o60h