{"passport":{"unfragile":{"@version":"1.0","version":"2026-05","artifact":{"id":"awesome-apple-shortcuts","slug":"apple-shortcuts","name":"Apple Shortcuts","type":"mcp","url":"https://github.com/recursechat/mcp-server-apple-shortcuts","page_url":"https://unfragile.ai/apple-shortcuts","categories":["mcp-servers"],"tags":[],"pricing":{"model":"open_source","free":true,"starting_price":null},"status":"active","verified":false},"capabilities":[{"id":"awesome-apple-shortcuts__cap_0","uri":"capability://tool.use.integration.macos.shortcuts.discovery.via.cli.enumeration","name":"macos shortcuts discovery via cli enumeration","description":"Discovers all available Apple Shortcuts installed on the macOS system by executing the native `shortcuts list` command and caching results in an internal availableShortcuts array. The server maintains this cache and refreshes it on-demand through the updateShortcutsList function, reducing redundant CLI invocations while ensuring freshness when tools or resources are accessed. This approach leverages macOS's native shortcuts CLI interface rather than parsing filesystem metadata.","intents":["I need to see what shortcuts are available on my Mac so I can decide which one to run","I want an AI assistant to know about all my shortcuts without manually listing them","I need to programmatically enumerate shortcuts for integration with other tools"],"best_for":["macOS users with Claude Desktop or other MCP-compatible AI assistants","automation engineers building AI-driven shortcut workflows","developers integrating Apple Shortcuts into larger automation pipelines"],"limitations":["macOS-only capability — no Windows or Linux support","Requires Apple Shortcuts.app to be installed and functional","Cache refresh adds latency on first access or after shortcuts are added/removed","No filtering or categorization of shortcuts — returns flat list of all available shortcuts"],"requires":["macOS (any recent version)","Apple Shortcuts.app (system default)","Node.js v18+","Claude Desktop or MCP-compatible AI client"],"input_types":[],"output_types":["array of shortcut names (string[])","text/plain resource representation"],"categories":["tool-use-integration","search-retrieval"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"awesome-apple-shortcuts__cap_1","uri":"capability://automation.workflow.natural.language.shortcut.invocation.with.optional.input.parameters","name":"natural language shortcut invocation with optional input parameters","description":"Executes named Apple Shortcuts through the MCP protocol by translating AI assistant requests into `shortcuts run \"name\"` CLI commands with optional string input parameters. The run_shortcut tool handler accepts a required shortcut name and optional input string, executing the shortcut in the macOS environment and returning execution output as text. This bridges natural language intent (e.g., 'run my morning routine') to system-level shortcut execution through standardized MCP tool semantics.","intents":["I want to tell Claude to run a specific shortcut by name and get the result back","I need to pass data into a shortcut (like a URL or text) and have it execute","I want to automate a series of macOS tasks through natural language without manual interaction"],"best_for":["macOS users automating personal workflows through AI assistants","teams building AI agents that need to trigger system-level automation","developers creating AI-powered productivity tools for macOS"],"limitations":["Input parameter is a single string — complex data structures require serialization/JSON encoding by the caller","Execution output is returned as plain text — no structured parsing of shortcut results","No timeout enforcement — long-running shortcuts may block the MCP server","No error recovery or retry logic — failed shortcut executions return raw error text","Shortcut name matching is exact — no fuzzy matching or alias resolution"],"requires":["macOS (any recent version)","Apple Shortcuts.app (system default)","Node.js v18+","Claude Desktop or MCP-compatible AI client","Target shortcut must exist and be discoverable via `shortcuts list`"],"input_types":["shortcut name (string, required)","input parameter (string, optional)"],"output_types":["execution output (text/plain)","error messages (text/plain)"],"categories":["automation-workflow","tool-use-integration"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"awesome-apple-shortcuts__cap_2","uri":"capability://memory.knowledge.shortcuts.resource.exposure.via.mcp.protocol","name":"shortcuts resource exposure via mcp protocol","description":"Exposes the cached list of available shortcuts as a machine-readable resource (shortcuts://list) through the MCP resource handler, returning the availableShortcuts array as text/plain content. This allows AI assistants to reference and reason about available shortcuts as a persistent resource within the MCP context, enabling multi-turn conversations where the assistant can refer back to the shortcuts list without re-querying. The resource is backed by the same cache mechanism as the list_shortcuts tool.","intents":["I want Claude to have persistent knowledge of my shortcuts throughout a conversation","I need the shortcuts list to be available as context for the AI to make decisions about which shortcut to run","I want to enable multi-turn workflows where the AI references available shortcuts across multiple messages"],"best_for":["users building multi-turn AI conversations that reference shortcuts","developers creating AI agents that need persistent shortcut context","teams using MCP-compatible clients that support resource-based context injection"],"limitations":["Resource is read-only — no mechanism to update shortcuts through the resource interface","Cache staleness — resource reflects the state at last cache refresh, not real-time shortcuts","Text/plain format only — no structured JSON or metadata about shortcuts (descriptions, parameters, etc.)","No pagination or filtering — entire shortcuts list is returned regardless of size"],"requires":["macOS (any recent version)","Apple Shortcuts.app (system default)","Node.js v18+","MCP-compatible AI client that supports resource handlers (e.g., Claude Desktop)"],"input_types":[],"output_types":["text/plain (newline-separated shortcut names)"],"categories":["memory-knowledge","tool-use-integration"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"awesome-apple-shortcuts__cap_3","uri":"capability://tool.use.integration.mcp.server.lifecycle.management.with.claude.desktop.integration","name":"mcp server lifecycle management with claude desktop integration","description":"Implements a complete MCP server that registers with Claude Desktop through the claude_desktop_config.json configuration file, supporting both NPM package deployment (via `npx mcp-server-apple-shortcuts`) and local build deployment (via compiled build/index.js). The server manages tool and resource handler registration, handles incoming MCP protocol requests, and maintains the internal state (availableShortcuts cache) across the server lifecycle. Configuration is declarative through the mcpServers section of Claude Desktop's config.","intents":["I want to install the shortcuts MCP server into Claude Desktop without manual setup","I need to configure the server to run automatically when Claude Desktop starts","I want to deploy a custom build of the server for development or testing"],"best_for":["Claude Desktop users wanting to add shortcuts automation to their AI assistant","developers building MCP servers who want a reference implementation","teams deploying MCP servers across multiple machines"],"limitations":["Claude Desktop-specific integration — no native support for other MCP clients (though compatible clients may work)","Configuration requires manual editing of claude_desktop_config.json — no GUI configuration tool","NPM deployment requires internet access to download the package — no offline installation option","Local build deployment requires Node.js development environment and build tools","No built-in logging or debugging interface — troubleshooting requires examining Claude Desktop logs"],"requires":["Claude Desktop (latest version)","Node.js v18+ (for NPM or local build deployment)","macOS (any recent version)","Write access to ~/.config/Claude/claude_desktop_config.json (or equivalent on macOS)"],"input_types":[],"output_types":[],"categories":["tool-use-integration","automation-workflow"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"awesome-apple-shortcuts__cap_4","uri":"capability://memory.knowledge.stateful.shortcuts.cache.with.on.demand.refresh","name":"stateful shortcuts cache with on-demand refresh","description":"Maintains an internal availableShortcuts array that caches the result of the `shortcuts list` CLI command, with an updateShortcutsList function that refreshes the cache on-demand when tools or resources are accessed. This state management pattern reduces CLI invocations (expensive system calls) while ensuring the cache doesn't become stale indefinitely. The cache is refreshed at tool/resource access time rather than on a fixed schedule, balancing freshness with performance.","intents":["I want the server to efficiently handle repeated requests for the shortcuts list without hammering the system","I need the shortcuts list to be reasonably fresh when I ask for it","I want to minimize latency for shortcut discovery and execution"],"best_for":["users with large numbers of shortcuts (50+) where repeated CLI calls become noticeable","developers building high-frequency automation workflows","teams running the MCP server in resource-constrained environments"],"limitations":["Cache is in-memory only — lost on server restart","No explicit cache invalidation mechanism — shortcuts added/removed outside the MCP server won't be reflected until next tool/resource access","Refresh-on-access pattern adds latency to first request after shortcuts change","No cache expiration TTL — stale data persists indefinitely if tools/resources aren't accessed","Single-threaded cache — concurrent requests may trigger multiple simultaneous CLI calls"],"requires":["Node.js v18+","macOS with Apple Shortcuts.app"],"input_types":[],"output_types":[],"categories":["memory-knowledge","automation-workflow"],"confidence":0.5,"matches":0,"success_rate":0}],"trust":{"score":24,"verified":false,"data_access_risk":"high","permissions":["macOS (any recent version)","Apple Shortcuts.app (system default)","Node.js v18+","Claude Desktop or MCP-compatible AI client","Target shortcut must exist and be discoverable via `shortcuts list`","MCP-compatible AI client that supports resource handlers (e.g., Claude Desktop)","Claude Desktop (latest version)","Node.js v18+ (for NPM or local build deployment)","Write access to ~/.config/Claude/claude_desktop_config.json (or equivalent on macOS)","macOS with Apple Shortcuts.app"],"failure_modes":["macOS-only capability — no Windows or Linux support","Requires Apple Shortcuts.app to be installed and functional","Cache refresh adds latency on first access or after shortcuts are added/removed","No filtering or categorization of shortcuts — returns flat list of all available shortcuts","Input parameter is a single string — complex data structures require serialization/JSON encoding by the caller","Execution output is returned as plain text — no structured parsing of shortcut results","No timeout enforcement — long-running shortcuts may block the MCP server","No error recovery or retry logic — failed shortcut executions return raw error text","Shortcut name matching is exact — no fuzzy matching or alias resolution","Resource is read-only — no mechanism to update shortcuts through the resource interface","builder identity is not verified yet","no observed match outcomes yet"],"rank_breakdown":{"adoption":0.05,"quality":0.2,"ecosystem":0.39999999999999997,"match_graph":0.25,"freshness":0.52,"weights":{"adoption":0.25,"quality":0.25,"ecosystem":0.15,"match_graph":0.23,"freshness":0.12}},"observed_outcomes":{"matches":0,"success_rate":0,"avg_confidence":0,"top_intents":[],"last_matched_at":null},"maintenance":{"status":"active","updated_at":"2026-06-17T09:51:02.370Z","last_scraped_at":"2026-05-03T14:00:15.503Z","last_commit":null},"community":{"stars":null,"forks":null,"weekly_downloads":null,"model_downloads":null,"model_likes":null}},"distribution":{"claim_url":"https://unfragile.ai/submit?claim=apple-shortcuts","compare_url":"https://unfragile.ai/compare?artifact=apple-shortcuts"}},"signature":"rzIr5SAXmKlYNJGp8g2opwgwQAI7g2ouHPVILmzvDwjzSw4xWaskZITk/8xiHG+i/s5IfL0NDBr96RQBu2wzAg==","signedAt":"2026-07-08T18:19:02.873Z","signedBy":"unfragile.ai","version":1},"_links":{"self":"https://unfragile.ai/api/v1/passport/apple-shortcuts","artifact":"https://unfragile.ai/apple-shortcuts","verify":"https://unfragile.ai/api/v1/verify?slug=apple-shortcuts","publicKey":"https://unfragile.ai/api/v1/trust-passport-public-key","spec":"https://unfragile.ai/trust","schema":"https://unfragile.ai/schema.json","docs":"https://unfragile.ai/docs"}}