首页/命令行工具/mcp-experiments

mcp-experiments

查看源码
2025-5-12
Words 688Read Time 2 min
Score:85

该MCP服务器允许大语言模型通过Bash和AppleScript控制Mac桌面电脑。

MCP 实验项目

本仓库包含一些我正在探索的 MCP(Model Context Protocol)服务器,用于在 Mac 上通过大语言模型(LLMs)执行 Bash 和 AppleScript 命令。我使用 Claude Desktop 客户端进行了测试。

示例用法

当工具正确配置并加载到 Claude Desktop 后,你可以让 Claude 执行新的任务。在受限模式下可用的工具包括:
  • say:请说“Hello World!”
  • whoami:当前运行的用户是谁?
在任意执行模式下(如下所述),你可以让 Claude 执行更复杂的操作。

环境要求

  • macOS(AppleScript 工具必需)
  • Python 3.13 或更高版本
  • Python 的 mcp
  • 测试所需的 pytest

安装步骤

  1. 克隆仓库:
    1. 创建并激活虚拟环境:
      1. 安装所需的依赖项:
        1. 配置 Mac 上的 Claude Desktop 以加载服务器。
          1. i. 修改配置文件,路径为:~/Library/Application Support/Claude/claude_desktop_config.json
            ii. 本仓库中提供了一个示例配置文件 claude_decktop_config.example.json
            iii. 确保 commandargs 字段指向正确的 Python 解释器和脚本路径。
            iv. 确保 MCP_EXECUTION_MODE 设置为所需的安全级别。

        任意执行模式

        [!警告] 将环境变量 MCP_EXECUTION_MODE 设置为 arbitrary 将允许服务器执行客户端(LLM)生成的任意代码。这存在安全风险,可能导致意外后果。建议在沙盒环境中使用此模式。
        要启用任意执行模式,将环境变量 MCP_EXECUTION_MODE 设置为 arbitrary。此时客户端将暴露两个额外的工具:
        • execute_bash:以当前用户身份运行任意 Bash 脚本并返回结果。
        • execute_applescript:以当前用户身份运行任意 AppleScript 脚本并返回结果。

        文件结构

        • applescript.py:定义 execute_applescript 工具的服务器脚本,使用 AppleScript 完成任务。
        • bash.py:定义 execute_bash 工具的服务器脚本,使用 Bash 完成任务。
        • claude_desktop_config.example.json:MCP 服务器的示例配置文件。你的配置文件可能位于 ~/Library/Application Support/Claude
        • requirements.txt:项目的 Python 依赖项。
        • test:用于 applescript 和 bash 工具的 Pytest 单元测试。

        许可证

        本项目采用 MIT 许可证。详情请参阅 LICENSE 文件。

        致谢

        本项目由 Jordan Perr-Sauer 创建。 GitHub Copilot(使用 GPT-4o 和 Claude 3.5 Sonnet)生成了本仓库中的部分内容。
        上一篇
        sandbox-mcp
        下一篇
        atlas-mcp-server