Servidor MCP de Apple Notifier
Envía notificaciones nativas de macOS e interactúa con los cuadros de diálogo del sistema a través de cualquier cliente compatible con MCP como Claude Desktop o Cline.
Prerrequisitos
macOS
Node.js >= 18
Un cliente compatible con MCP (Claude Desktop, Cline)
Related MCP server: Toast MCP Server
Instalación
Instalación mediante herrería
Para instalar Apple Notifier para Claude Desktop automáticamente a través de Smithery :
npx -y @smithery/cli install apple-notifier-mcp --client claudeInstalación manual
Instalar el paquete globalmente:
npm install -g apple-notifier-mcpAgregue a su archivo de configuración de MCP:
Para Cline ( cline_mcp_settings.json ):
{
"mcpServers": {
"apple-notifier": {
"command": "apple-notifier-mcp"
}
}
}Para Claude Desktop ( claude_desktop_config.json ):
{
"mcpServers": {
"apple-notifier": {
"command": "apple-notifier-mcp"
}
}
}Características
Enviar notificaciones
Muestra notificaciones nativas de macOS con contenido personalizable.
Parámetros:
title(obligatorio): cadena: el título de la notificaciónmessage(obligatorio): cadena: el contenido principal del mensajesubtitle(opcional): cadena - Un subtítulo para mostrarsound(opcional): booleano - Si se reproducirá el sonido de notificación predeterminado (predeterminado: verdadero)
Indicaciones de visualización
Muestra mensajes de diálogo interactivos para obtener información del usuario.
Parámetros:
message(obligatorio): cadena: texto que se mostrará en el cuadro de diálogo de solicituddefaultAnswer(opcional): cadena - Texto predeterminado para rellenar previamentebuttons(opcional): string[] - Etiquetas de botones personalizadas (máximo 3)icon(opcional): 'nota' | 'detener' | 'precaución' - Icono para mostrar
Texto a voz
Utilice las capacidades de texto a voz de macOS.
Parámetros:
text(obligatorio): cadena - Texto a leervoice(opcional): cadena - Voz a utilizar (predeterminada: voz del sistema)rate(opcional): número - Velocidad de voz (-50 a 50, predeterminado 0)
Tomar capturas de pantalla
Captura capturas de pantalla usando la captura de pantalla de macOS.
Parámetros:
path(obligatorio): cadena - Ruta donde guardar la captura de pantallatype(obligatorio): 'pantalla completa' | 'ventana' | 'selección' - Tipo de captura de pantallaformat(opcional): 'png' | 'jpg' | 'pdf' | 'tiff' - Formato de imagenhideCursor(opcional): booleano - Si se debe ocultar el cursorshadow(opcional): booleano - Si se debe incluir la sombra de la ventana (solo para el tipo de ventana)timestamp(opcional): booleano - Agrega una marca de tiempo al nombre del archivo
Selección de archivos
Abrir el cuadro de diálogo de selección de archivos nativos de macOS.
Parámetros:
prompt(opcional): cadena - Mensaje de avisodefaultLocation(opcional): cadena - Ruta de directorio predeterminadafileTypes(opcional): objeto - Filtro de tipo de archivo (por ejemplo, {"public.image": ["png", "jpg"]})multiple(opcional): booleano - Permitir la selección de múltiples archivos
Ejemplo de uso
// Send a notification
await client.use_mcp_tool("apple-notifier", "send_notification", {
title: "Hello",
message: "World",
sound: true
});
// Show a prompt
const result = await client.use_mcp_tool("apple-notifier", "prompt_user", {
message: "What's your name?",
defaultAnswer: "John Doe",
buttons: ["OK", "Cancel"]
});
// Speak text
await client.use_mcp_tool("apple-notifier", "speak", {
text: "Hello, world!",
voice: "Samantha",
rate: -20
});
// Take a screenshot
await client.use_mcp_tool("apple-notifier", "take_screenshot", {
path: "screenshot.png",
type: "window",
format: "png"
});
// Select files
const files = await client.use_mcp_tool("apple-notifier", "select_file", {
prompt: "Select images",
fileTypes: {
"public.image": ["png", "jpg", "jpeg"]
},
multiple: true
});Contribuyendo
Consulte CONTRIBUTING.md para conocer la configuración y las pautas de desarrollo.
Licencia
Licencia MIT: consulte el archivo LICENCIA para obtener más detalles.