Apple Shortcuts

io.github.mindstone由 GitHub 帳號 mindstone 發布v0.2.1更新於 Oct 24, 2026

MCP server for Apple Shortcuts via the macOS shortcuts CLI

已驗證STDIO僅桌面效率與工作流開發者工具

概覽

AI 產生的概覽

一個本機 macOS MCP 伺服器,讓助理透過 macOS 的 shortcuts 命令列工具列出、執行與開啟 Apple 捷徑。

可以做什麼
列出可用的捷徑,可依資料夾篩選,並可選擇顯示內部識別碼。執行指定名稱的捷徑,將字面文字作為輸入傳入,並回傳該捷徑的輸出。在捷徑 App 編輯器中開啟指定捷徑,方便在執行前檢視其內容。
適用情境
適用於 Mac 上希望助理觸發既有捷徑自動化(例如搬移資料、控制應用程式或呼叫其他服務)的情境,也適合查看有哪些可用捷徑。不適用於非 macOS 裝置。
執行需求
需在已安裝捷徑 App 的 macOS 上本機執行,並需要 Node.js 18 或更新版本;透過 npx 啟動此套件。不需要任何憑證。選用環境變數 APPLE_SHORTCUTS_TIMEOUT_MS 可設定單次呼叫逾時(預設 120000 毫秒)。
安裝前請注意
執行捷徑會以目前登入使用者的權限運作:可能傳送訊息、刪除檔案、進行購買、控制裝置或呼叫遠端 API,執行工具被標示為破壞性操作,宿主應要求使用者確認。會開啟對話框的捷徑無法從命令列回應,將在逾時後被終止。捷徑名稱與輸出被視為不可信文字。輸入文字會寫入私有暫存檔,之後會被刪除。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Apple Shortcuts,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

Apple Shortcuts MCP Server

An MCP server that exposes Apple Shortcuts functionality to Rebel via the macOS shortcuts CLI.

One-click install

[Add to Cursor] [Add to VS Code] [Add to VS Code Insiders]

After clicking the button, your host will prompt you to fill: APPLE_SHORTCUTS_TIMEOUT_MS.

Manual config for Claude Desktop / Claude Code / Goose / Continue.dev (Apple Shortcuts)
json
{  "mcpServers": {    "Apple Shortcuts": {      "command": "npx",      "args": [        "-y",        "@mindstone/mcp-server-apple-shortcuts"      ],      "env": {        "APPLE_SHORTCUTS_TIMEOUT_MS": "120000"      }    }  }}

Status

Prerequisites

  • macOS with the Shortcuts app installed
  • Node.js 18+

Setup

bash
cd ~/mcp-servers/apple-shortcutsnpm installnpm run build

No credentials or environment variables are required.

Tools

apple_shortcuts_list

List all available shortcuts, optionally filtered by folder.

ArgumentTypeRequiredDescription
folder_namestringNoFolder to list from. Use "none" for shortcuts not in any folder.
show_identifiersbooleanNoInclude internal identifiers (default: false)

apple_shortcuts_run

Run a named shortcut with optional text input.

ArgumentTypeRequiredDescription
namestringYesExact name or identifier of the shortcut
inputstringNoText content to send to the shortcut as its Magic Variable input. Provide the literal text — the connector stores it in a private, mode-0o600 temporary file (under os.tmpdir()) and forwards that location to the macOS shortcuts CLI for you. The temporary file is removed once the shortcut returns. Do NOT supply a filename here.

apple_shortcuts_view

Open a named shortcut in the Shortcuts app editor on the Mac, so you can visually review what it does before running it. The definition opens in the Shortcuts GUI — this tool does not return the definition as text.

ArgumentTypeRequiredDescription
namestringYesExact name or identifier of the shortcut to open

Configuration

No credentials are required. One optional environment variable tunes runtime behavior:

VariableDefaultDescription
APPLE_SHORTCUTS_TIMEOUT_MS120000Maximum time in milliseconds a shortcuts CLI invocation may run before the connector terminates it (SIGTERM, then SIGKILL after a 5s grace period). Raise this for shortcuts that legitimately take longer than two minutes.

Output trust model

Shortcut names (apple_shortcuts_list) and shortcut stdout (apple_shortcuts_run, apple_shortcuts_view) are user-authored text returned by the local shortcuts CLI. The connector wraps all such output in <untrusted-content source="apple-shortcuts:..."> envelopes so the model treats it as data, not instructions. Shortcut names echoed back in apple_shortcuts_run / apple_shortcuts_view confirmation, error, and timeout messages are enveloped the same way — a name is attacker-controllable text once it appears in the list output.

Register in Rebel

Add the connector in Settings → Connectors with:

  • Command: node
  • Args: ["<absolute path to>/mcp-servers/apple-shortcuts/dist/index.js"] (e.g. ~/mcp-servers/apple-shortcuts/dist/index.js expanded to an absolute path)

Caveats

  • macOS only — the shortcuts CLI is not available on other platforms.
  • Shortcuts that open GUI dialogs or prompt for confirmation cannot answer from the command line; they are terminated after APPLE_SHORTCUTS_TIMEOUT_MS (default 120s) instead of blocking forever. If termination cannot be confirmed (signal delivery fails or the process never exits after SIGKILL), the timeout error says the process may still be running rather than claiming it was stopped.
  • Captured stdout/stderr per invocation is bounded (1,000,000 characters per stream); output beyond the bound is dropped and marked with a truncation notice, so a shortcut emitting unbounded output cannot exhaust memory.
  • Running a shortcut has the same system permissions as the logged-in user — a shortcut can send messages, delete files, make purchases, control devices, or call remote APIs. apple_shortcuts_run is annotated destructiveHint: true so hosts require explicit user approval before running one.

來源:connectors/apple-shortcuts/README.md,提交 22c4611

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

1
  1. v0.2.1最新Sep 16, 2026

評分

已滿足適用檢查項的 40%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分

    請在儲存庫或註冊中心條目中宣告授權條款。