Siri快捷方式MCP服务器
此MCP服务器通过模型上下文协议(MCP)提供对Siri快捷方式功能的访问。它允许从macOS shortcuts应用程序中列出、打开和运行快捷方式。
特性
- 暴露 _全部_ 快捷方式,这意味着LLM可以调用shortcuts应用程序中可用的任何内容。
- 列出所有可用快捷方式
- 在快捷方式应用程序中打开快捷方式
- 使用可选输入参数运行快捷方式
- 为每个可用快捷方式动态生成的工具
工具
基础工具
list_shortcuts
- 列出系统上所有可用的Siri快捷键 - 无需输入 - 返回:快捷方式名称数组
{
"shortcuts": [{ "name": "My Shortcut 1" }, { "name": "My Shortcut 2" }]
}open_shortcut
- 在“快捷方式”应用程序中打开快捷方式 - 输入: - name (string):要打开的快捷方式的名称
run_shortcut
- 运行带有可选输入的快捷方式 - 输入: - name (string):要运行的快捷方式的名称或标识符(UUID) - input (字符串,可选):要传递给快捷方式的文本输入或文件路径
动态工具
服务器会自动为每个可用快捷方式生成以下格式的附加工具:
- 工具名称:
run_shortcut_[sanitized_shortcut_name] - 说明:运行特定快捷方式
- 输入:
- input (字符串,可选):要传递给快捷方式的文本输入或文件路径
配置
服务器支持以下环境变量:
GENERATE_SHORTCUT_TOOLS(默认值:true):设置为时false,禁用动态快捷方式工具的生成。只有基础工具(list_shortcuts,open_shortcut,run_shortcut)将可用。INJECT_SHORTCUT_LIST(默认值:false):设置为时true,将可用快捷方式列表注入到run_shortcut工具描述,以帮助LLM了解可用的快捷方式。
与Claude一起使用
添加到您的Claude配置中:
{
"mcpServers": {
"siri-shortcuts": {
"command": "npx",
"args": ["mcp-server-siri-shortcuts"],
"env": {
"GENERATE_SHORTCUT_TOOLS": "true",
"INJECT_SHORTCUT_LIST": "false"
}
}
}
}实现细节
- 使用macOS
shortcuts幕后的CLI命令 - 对快捷方式名称进行消毒,以实现工具命名兼容性
- 支持直接文本输入和基于文件的输入
- 返回快捷方式输出(如果可用)
- 实施标准MCP错误处理
