开发环境信息服务器

一个为Cursor代码编辑器提供开发环境详细信息的MCP服务器,包括系统配置、安装工具和运行进程等信息,以实现更智能的上下文感知辅助。

  • by carterlasalle
  • Python
  • 本地部署
  • 6 星标
  • 更新于
在 GitHub 查看 carterlasalle/system_information_mcp

使用说明

DevEnvInfoServer-用于开发环境信息的游标MCP服务器

此项目实现了一个游标模型上下文协议(MCP)服务器,该服务器向游标代码编辑器提供有关开发环境的详细信息。通过利用此服务器,Cursor的智能代理可以更深入地了解您的系统配置、安装的工具和正在运行的进程,从而获得更多上下文感知和有用的帮助。

特性

此MCP服务器提供有关您的开发环境的以下信息类别:

  • 系统信息:
    • 操作系统版本和平台详细信息
    • 硬件详细信息(处理器、机器、系统架构)
    • Python版本和位置
    • 已安装的包管理器(brew、npm、pip、yarn、uv、conda)及其版本
    • 虚拟环境信息(检测到的环境和活动环境)
    • 系统区域设置和时区
    • 前20个环境变量
    • 可用外壳(bash、zsh、fish、sh、powershell、cmd.exe)
    • 简化的防火墙和网络配置(取决于操作系统)
  • 开发环境详细信息:
    • 已安装的编译器和解释器(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环境)
  • 配置和点文件:
    • 外壳配置文件(.bashrc、.zshrc、.profile、.bash_profile、.config/fish/config.fish)
    • Git、NPM和编辑器配置(VSCode、JetBrains、Neovim)
    • Shell别名、函数和自定义脚本(来自Shell配置文件)
  • 已安装的应用程序:
    • 已安装的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代码空间、Gitpod)
  • 代码执行和调试:
    • 活动调试器会话(基本检查)
    • 已安装的调试工具(lldb、gdb、xdebug、pdb)
  • 构建系统和依赖管理:
    • 已安装的构建工具(Make、CMake、Bazel、Ninja)
    • 检测到的依赖文件(requirements.txt、package.json、Cargo.toml等)
    • 已安装的编译器(gcc、clang、javac)
  • 基础设施和DevOps工具:
    • 本地Kubernetes配置
    • DevOps工具(Terraform、Pulumi)
    • 本地数据库和运行服务(对常见数据库服务的简化检查)
  • 测试和质量保证:
    • 已安装的测试框架(pytest、Jest、Mocha)
    • 代码Linter和格式化工具(flake8、pylint、eslint、更漂亮)
  • 机器学习和人工智能开发:
    • GPU和CUDA信息
    • PyTorch和TensorFlow状态(安装和GPU可用性)
  • 嵌入式开发/IoT:
    • 已安装的嵌入式SDK(Arduino、ESP-IDF、Raspberry Pi工具)
    • 连接的设备和串行端口(串行端口的简化列表)
  • 生产力和工作流程增强:
    • Shell别名、函数和自定义脚本
    • 壳牌历史分析(基础-最后20行历史)
    • 后台自动化和任务调度(对cron/计划任务的简化检查)

原理

此服务器使用模型上下文协议(MCP)构建,并按如下方式运行:

  1. MCP协议: 它实现了MCP服务器协议,允许Cursor与其通信以发现和利用其功能。
  2. 标准运输: 服务器使用 stdio 传输,这意味着它通过标准输入和输出流与Cursor通信。
  3. 信息收集: 当Cursor的代理请求信息时,此服务器会执行各种系统命令(使用 subprocess)Python库(platform, os, sys, psutil, pyserial等)来收集有关您的开发环境的数据。
  4. 基于工具的访问: 每个信息类别都作为MCP服务器中的工具公开。然后,Cursor的代理可以调用这些工具来检索特定的信息。
  5. Markdown输出(可选): 服务器可以选择生成Markdown文件(development_environment_info.md)包含所有收集到的信息,便于查看和调试。
  6. 光标集成: Cursor作为MCP客户端,可以连接到此服务器并自动使用提供的工具来增强其对开发环境的理解。

安装

要安装并运行此MCP服务器,请执行以下步骤:

  1. 克隆存储库:

    git clone https://github.com/carterlasalle/system_information_mcp.git
    cd system_information_mcp
    
  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的代理将自动利用以下提供的工具 DevEnvInfoServer 当它认为它们与您的请求相关时。

  • 自动工具使用: 当您在Composer中与Cursor的代理交互时,它将智能地决定是否需要有关您的开发环境的信息来回答您的问题或满足您的请求。如果是这样,它将在后台自动使用此服务器提供的工具。
  • 有意工具提示: 您还可以通过在提示中按名称或描述引用这些工具来明确指示代理使用这些工具。例如,你可以问:
    • “我当前的环境中安装了哪些Python包?”
    • “使用DevEnvInfoServer工具列出系统上可用的shell。”
  • 工具批准: 默认情况下,Cursor在执行任何MCP工具之前都会征求您的批准。您可以在批准之前查看工具调用参数。
  • YOLO模式(可选): 如果您希望在没有批准提示的情况下自动执行工具,可以在Cursor的MCP设置中启用“YOLO模式”。谨慎使用此模式,因为它允许自动执行MCP工具。

光标将显示来自的响应 DevEnvInfoServer 工具直接在聊天室中,为您提供所需的开发环境信息。