mcpField
M
Moom MCP Server

Moom MCP Server

本地服务
github.com/itrimble生产力074 周前更新

关于 Moom MCP Server

Moom MCP Server 让 Claude Desktop 在 macOS 上控制 Moom 的已保存布局和窗口操作。它还可通过可选的 DisplayPlacer 集成实现精确的多显示器定位。

主要功能

  1. 01激活和保存 Moom 布局
  2. 02调整大小、移动、居中及铺满窗口
  3. 03打开 Moom 弹出菜单
  4. 04基于坐标的多显示器定位

适用场景

  1. 01切换已保存的工作区布局
  2. 02保存窗口排列以便复用
  3. 03在多个显示器间定位窗口

MCP 相关

该 MCP 服务向 Claude Desktop 等 MCP 客户端提供激活和保存布局、执行窗口操作及显示 Moom 菜单的工具。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

Moom MCP 服务

一种 Model Context Protocol(MCP)服务,可通过 Claude Desktop 中的自然语言命令,以编程方式控制 macOS 上的 Moom 窗口布局。

概览

此 MCP 服务可让 Claude 与 Moom 交互。Moom 是一款功能强大的 macOS 窗口管理工具,可帮助你:

  • 在已保存的窗口布局之间切换
  • 以像素级精度创建新的窗口排列
  • 控制多个显示器上的窗口位置和大小
  • 通过对话式命令管理工作区布局
  • 新增:集成 DisplayPlacer,实现多显示器精确定位

功能

  • 🖼️ activate_layout - 即时切换到任意已保存的 Moom 布局
  • 💾 save_current_layout - 将当前窗口排列保存为可重复使用的布局
  • 🎯 trigger_moom_action - 执行 Moom 窗口操作(调整大小、移动、居中等)
  • 📋 show_moom_menu - 显示 Moom 弹出菜单
  • 🖥️ DisplayPlacer 集成 - 以像素级精度定位多显示器上的窗口
  • 📐 精确布局 - 基于精确坐标的窗口管理

先决条件

  • macOS(10.12 或更高版本)
  • 已安装并运行 Moom
  • Node.js 14 或更高版本
  • Claude Desktop 应用
  • 已获得辅助功能权限的终端应用
  • 可选:DisplayPlacer,用于增强多显示器支持

安装

  1. 克隆此仓库:

    git clone https://github.com/itrimble/moom-mcp.git
    cd moom-mcp
    
  2. 安装依赖项:

    npm install
    
  3. 授予辅助功能权限:

    • 打开 系统偏好设置 → 安全性与隐私 → 隐私 → 辅助功能
    • 添加并启用终端(或你的终端应用)
    • 添加并启用 Claude Desktop
  4. 添加到 Claude Desktop 配置:

    • 打开 Claude Desktop
    • 前往 Settings → Developer → Edit Config
    • 将以下内容添加到你的 claude_desktop_config.json:
    {
      "mcpServers": {
        "moom": {
          "command": "node",
          "args": ["/absolute/path/to/moom-mcp/src/index.js"]
        }
      }
    }
    
  5. 重启 Claude Desktop

用法

安装完成后,你可以在 Claude Desktop 中使用自然语言命令:

激活布局
  • “切换到我的 Teaching (Mac Mini) 布局”
  • “激活 AI Research Mode 工作区”
  • “使用我的编码布局”
  • 新增:“切换到 DisplayPlacer Coding Pro”(像素级精确定位)
保存布局
  • “将当前窗口排列保存为 ‘Focus Mode’”
  • “创建一个名为 ‘Video Editing’ 的新布局”
窗口操作
  • “把这个窗口调大”(放大)
  • “将活动窗口居中”
  • “将窗口移到左侧”
  • “让当前窗口填满屏幕”
菜单访问
  • “显示 Moom 菜单”
  • “打开 Moom 的布局选择器”
多显示器精确定位(新增)
  • “创建 DisplayPlacer 编码布局”(使用精确坐标)
  • “以像素级精度定位窗口”
  • “针对我的 4K 显示器配置进行优化”

可用命令

命令描述示例
activate_layout切换到已保存的 Moom 布局{ "layoutName": "Teaching (Mac Mini)" }
save_current_layout保存当前窗口排列{ "layoutName": "Development Setup" }
trigger_moom_action执行窗口操作{ "action": "center" }
show_moom_menu显示 Moom 弹出菜单{}
支持的窗口操作
  • grow - 增大窗口
  • shrink - 缩小窗口
  • move-left - 将窗口向左移动
  • move-right - 将窗口向右移动
  • move-up - 将窗口向上移动
  • move-down - 将窗口向下移动
  • center - 将窗口在屏幕上居中
  • fill-screen - 最大化窗口

DisplayPlacer 集成

此服务现已使用 DisplayPlacer 提供高级多显示器支持:

优势
  • 使用精确显示坐标实现像素级精确定位
  • 具备多显示器感知能力,可正确计算原点
  • 考虑缩放因素,优化4K 显示器
  • 支持高刷新率(120Hz 及以上)
  • 支持负坐标处理,适用于位于左侧的显示器
增强布局
  • DisplayPlacer Coding Pro:面向开发的精准布局
  • Ultimate Multi-Monitor Pro:充分利用所有显示器的显示空间
安装(可选)
brew install jakehilborn/jakehilborn/displayplacer

项目结构

moom-mcp/
├── src/
│   ├── index.js                    # Main MCP server implementation
│   └── displayplacer-layouts.js    # DisplayPlacer integration module
├── examples.md         # Usage examples and workflows
├── test.js            # Basic functionality tests
├── test-ui.js         # UI automation tests
├── validate.js        # Configuration validator
├── demo.js            # Feature demonstration
├── package.json       # Node.js configuration
├── LICENSE            # MIT License
└── README.md          # This file

开发

测试

运行测试套件:

npm test          # Basic tests
npm run test-ui   # UI automation tests
npm run validate  # Validate configuration
调试
  1. 检查 Moom 是否正在运行:

    pgrep -x Moom
    
  2. 确认已授予辅助功能权限

  3. 运行验证脚本:

    npm run validate
    

故障排除

“访问 Moom 菜单时出错”
  • 确保 Moom 正在运行
  • 确认 Terminal 和 Claude Desktop 已获得辅助功能权限
  • 检查 Moom 的菜单栏图标是否可见
布局未激活
  • 布局名称区分大小写
  • 在 Moom 偏好设置中确认布局的准确名称
  • 布局名称中的特殊字符可能需要转义
MCP 未在 Claude 中加载
  • 更改配置后,重新启动 Claude Desktop
  • 检查配置文件路径是否为绝对路径
  • 确认 Node.js 位于你的 PATH 中

贡献

欢迎贡献!请随时提交 Pull Request。

许可证

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

作者

Ian Trimble - GitHub

致谢

  • 感谢 Many Tricks 创建 Moom
  • 感谢 Anthropic 推出 Model Context Protocol
  • 感谢 MCP 社区提供灵感和示例

相关项目

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。