Spacepal MCP Server
Provides control over macOS Spaces via Spacepal: list Spaces and the active one, switch by number/name or next/previous/back, move the frontmost window between Spaces, rename Spaces, open the overview grid, attach notes, and apply saved profiles.
This server does not currently have a deployable release on Glama. Follow the repository's setup instructions to install and configure it for your MCP client, including any required credentials and local dependencies.
Spacepal MCP server
Lets Claude, Cursor and other MCP clients work with your macOS Spaces through Spacepal: "switch to my Mail Space", "what's on Desktop 3?", "name this desktop Research".
It runs locally over stdio. It reads the Space list Spacepal writes to
~/Library/Application Support/Spacepal/state.json and sends commands through the
spacepal:// URL scheme. It makes no network calls.
Requirements
macOS 14 or later, with Spacepal running (direct or Mac App Store build)
Node.js 18 or later
Related MCP server: arc-mcp
Tools
Tool | What it does |
| Every Space with its number, name, display, apps, and which one is active |
| The Space you are on |
| Switch by number or name, or step with |
| Send the frontmost window to a Space by number or name, or to |
| Name a Space; an empty name restores "Desktop N" |
| Open Spacepal's overview grid |
| Attach a short note to a Space |
| Apply a saved Spacepal profile |
move_window_to_space acts on the frontmost window. In Claude Desktop that is usually
Claude's own window. Moving the frontmost window works on every supported macOS version.
Install
Claude Code
claude mcp add spacepal -- npx -y spacepal-mcpClaude Desktop
Add this to ~/Library/Application Support/Claude/claude_desktop_config.json, then restart
Claude:
{
"mcpServers": {
"spacepal": { "command": "npx", "args": ["-y", "spacepal-mcp"] }
}
}Cursor
Add the same block to ~/.cursor/mcp.json, or to .cursor/mcp.json in a project:
{
"mcpServers": {
"spacepal": { "command": "npx", "args": ["-y", "spacepal-mcp"] }
}
}From source
cd mcp && npm install
claude mcp add spacepal -- node "$PWD/index.js"Troubleshooting
"Spacepal is not running": open Spacepal from Applications.
Names are out of date: Spacepal rewrites
state.jsonwhen Spaces change. Open its menu once to refresh it.Switching does nothing: check Spacepal > Settings > Setup. It needs Accessibility permission.
MIT © Halberd LLC
This server cannot be deployed
Maintenance
Related MCP Connectors
Spacebring MCP server. Look up members, bookings, invoices, subscriptions, events and more, and take everyday actions such as creating events or replying to support tickets, from MCP-compatible AI assistants that support remote servers with OAuth.
Official Fibery MCP server: query and update your workspace from any AI client via OAuth.
Hosted Slack MCP server for Claude, ChatGPT and Cursor, with each action switched per account.
Reach your own computers from any AI app: files, search, commands, approvals and outage alerts.
Related MCP Servers
- AlicenseAqualityDmaintenanceEnables AI assistants to interact with macOS windows through yabai, providing window listing organized by Spaces and screenshot capture capabilities.2MIT
- AlicenseAqualityDmaintenanceAn MCP server for the Arc browser that enables programmatic management of spaces and tabs. It supports actions like listing, creating, and deleting spaces and tabs, as well as focusing spaces and opening URLs via AppleScript.913 npm8MIT
- AlicenseAqualityCmaintenanceEnables inspection and control of Arc Browser spaces and tabs on macOS, including reading sidebar/history data and performing actions like focusing spaces, creating and closing tabs.131MIT
- AlicenseNot gradedqualityAmaintenanceA lightweight MCP server that bridges AI agents and macOS, enabling automation of file navigation, application control, UI interaction, browser automation, and system operations.231MIT