Apple-MCPs
Servidores MCP locales para macOS de Mail, Calendario, Recordatorios, Notas, Contactos, Mensajes, Atajos, Archivos, Mapas y herramientas del sistema.
Documentación
Apple-MCPs
Servidores MCP para usar aplicaciones de Apple y herramientas de macOS desde un cliente de IA.
Los servidores pueden crear recordatorios, enviar mensajes, consultar calendarios, buscar correos, gestionar archivos y obtener indicaciones a través del Model Context Protocol (MCP). Las integraciones se ejecutan en tu Mac y funcionan con las aplicaciones de Apple que ya usas. Los datos devueltos a un cliente MCP pueden enviarse al proveedor de modelos de ese cliente, y las aplicaciones de Apple pueden sincronizar sus datos a través de iCloud u otra cuenta configurada.
Apple-MCPs es gratuito y de código abierto bajo la Licencia MIT.
Construido sobre la especificación MCP 2026-07-28 (Python SDK 2.x) con compatibilidad retroactiva para clientes que hablan revisiones de protocolo más antiguas.
Instalación
Ejecutar desde PyPI (uvx)
Instala uv y luego ejecuta el servidor unificado:
uvx apple-tools-mcp
Los servidores independientes funcionan de la misma manera. Por ejemplo, usa uvx apple-mcp-mail o uvx apple-calendar-mcp.
Claude Code
claude mcp add --transport stdio --scope project apple-tools -- uvx apple-tools-mcp
Codex
Registra el servidor unificado con el CLI de Codex:
codex mcp add apple-tools -- uvx apple-tools-mcp
Reinicia el cliente después de la instalación o las actualizaciones, luego llama a search_tools con una consulta como calendar health para verificar el descubrimiento sin leer datos de aplicaciones.
Cliente MCP genérico (config JSON stdio)
{
"mcpServers": {
"apple-tools": {
"command": "uvx",
"args": ["apple-tools-mcp"]
}
}
}
Configura los modos de seguridad y directorios específicos de la aplicación en la configuración de env de tu cliente. Consulta la guía de configuración de Apple Tools para conocer las configuraciones disponibles y los valores predeterminados.
Los archivos adjuntos de Mail están deshabilitados a menos que APPLE_MAIL_MCP_ALLOWED_ATTACHMENT_ROOT apunte a un directorio dedicado. Las herramientas de archivos permanecen limitadas a APPLE_FILES_MCP_ALLOWED_ROOTS, y los controles de privacidad de macOS pueden limitar aún más el acceso a carpetas como Escritorio, Documentos, Descargas o iCloud Drive.
Claude Desktop
Descarga el paquete .mcpb para un servidor desde Releases y haz doble clic en él. Claude Desktop instala el paquete y gestiona su configuración.
Desde un clon
git clone https://github.com/JonathanRReed/Apple-MCPs.git
cd Apple-MCPs
uv sync --all-packages
Esto crea un entorno de workspace con cada punto de entrada del servidor en .venv/bin, incluido .venv/bin/apple-tools-mcp. Cada carpeta de servidor también tiene un start.sh que los clientes MCP pueden llamar directamente. El script usa uv cuando está disponible y, de lo contrario, crea un entorno virtual simple.
Servidores
Apple-Tools-MCP es el punto de partida recomendado. Combina Mail, Calendar, Reminders, Messages, Contacts, Notes, Shortcuts, Files, System y Maps en un solo servidor. También tiene valores predeterminados guardados, preferencias de enrutamiento por contacto, ayudas para hilos de Mail, soporte de deshacer, herramientas de resumen y flujos de trabajo entre aplicaciones.
Usa un servidor independiente cuando quieras exponer menos aplicaciones de Apple al cliente:
Permisos de macOS
macOS controla el acceso a las aplicaciones de Apple y a los datos protegidos. Cada servidor tiene herramientas para informar su acceso actual, explicar el permiso requerido y volver a verificar después de un cambio. Debes aprobar o cambiar los permisos de macOS tú mismo en el aviso del sistema o en Configuración del Sistema.
| Servidor | Qué puede solicitar macOS | Herramienta de salud | Herramientas de recuperación |
|---|---|---|---|
| Apple-Tools-MCP | Todo lo siguiente, según se use | apple_health | apple_permission_guide, apple_recheck_permissions |
| Acceso de automatización a Mail | mail_health | mail_permission_guide, mail_recheck_permissions | |
| Calendar | Acceso a Calendar | calendar_health | calendar_permission_guide, calendar_recheck_permissions |
| Reminders | Acceso a Reminders | reminders_health | reminders_permission_guide, reminders_recheck_permissions |
| Messages | Acceso de automatización a Messages, más Acceso Total al Disco para el historial | messages_health | messages_permission_guide, messages_recheck_permissions |
| Contacts | Acceso a Contacts | contacts_health | contacts_permission_guide, contacts_recheck_permissions |
| Notes | Acceso de automatización a Notes | notes_health | notes_permission_guide, notes_recheck_permissions |
| Shortcuts | Generalmente sin aviso de privacidad separado | shortcuts_health | shortcuts_permission_guide, shortcuts_refresh_state |
| Files | El acceso se limita a las raíces permitidas configuradas; macOS también puede requerir acceso a carpetas protegidas | files_health | files_permission_guide |
| System | System Events, Accessibility o avisos de automatización para algunas acciones | system_health | system_permission_guide |
| Maps | Sin aviso de privacidad; el asistente local de Swift necesita las herramientas de línea de comandos de Xcode | maps_health | maps_permission_guide |
Encontrar y usar herramientas
Cada servidor lista sus herramientas disponibles a través de MCP tools/list, incluidos los esquemas de entrada y salida y las anotaciones de lectura o escritura. Dos herramientas auxiliares facilitan la búsqueda en un catálogo grande:
search_tools: busca nombres de herramientas, descripciones y aliasget_tool_info: lee el esquema, los metadatos y los ejemplos de una herramienta
Notas de uso
- Resuelve una persona a través de Contacts antes de enviar un mensaje, a menos que ya tengas su dirección de destinatario exacta.
- Usa los ayudantes de hilos de Mail (
mail_get_thread,mail_reply_latest_in_thread,mail_archive_thread) cuando el usuario mencione una conversación. - Reminders es para elementos con fecha de vencimiento, Notes para material de referencia, Calendar para tiempo programado.
- Cuando Mail deba enviar desde una identidad específica, pasa el correo exacto del remitente en
from_account. - La búsqueda de Mail requiere una cadena de consulta: un remitente, un fragmento de asunto o
*como comodín. - Reminders
due_daterequiere un desplazamiento de zona horaria comoyyyy-MM-ddTHH:mm:ss-08:00. - Omite
service_nameen los envíos de iMessage. - Apple-Tools-MCP incluye herramientas de resumen:
apple_generate_daily_briefing,apple_generate_weekly_briefingyapple_triage_communications_task. - Las herramientas de respaldo por aviso (
apple_list_prompts,apple_get_prompty equivalentes por servidor) cubren clientes que solo admiten herramientas.
Envoltorios de Python
El repositorio incluye envoltorios de Python generados para clientes que llaman a herramientas MCP desde código:
generated/tool_catalogs/: metadatos de herramientas buscables para cada servidorgenerated/tool_wrappers/python/: envoltorios de Python para cada herramienta
Consulta docs/code-mode.md para conocer la disposición de los envoltorios, la interfaz del cliente y el flujo de trabajo recomendado.
Transportes y verificaciones de protocolo
stdio es el transporte predeterminado para uso local. Cada servidor también admite streamable-http a través de variables de entorno. Configura APPLE_<DOMAIN>_MCP_TRANSPORT=streamable-http y las variables _HOST y _PORT correspondientes. Los enlaces HTTP deben usar una dirección de bucle local como 127.0.0.1, ::1 o localhost. Los servidores no tienen autenticación remota. Rechazan enlaces de red y comodín, y no deben exponerse a través de un túnel o proxy público.
Ejecuta la suite oficial de conformidad MCP contra Apple-Tools-MCP:
APPLE_AGENT_MCP_TRANSPORT=streamable-http \
APPLE_AGENT_MCP_PORT=8765 \
APPLE_AGENT_MCP_CONFORMANCE_MODE=1 \
./Apple-Tools-MCP/start.sh
npx -y @modelcontextprotocol/conformance@0.2.0-alpha.11 server --url http://127.0.0.1:8765/mcp --requirements 2026-07-28
Verificaciones rápidas de humo de Inspector en todos los servidores:
bash scripts/inspector_smoke.sh
uv run python scripts/protocol_smoke.py
CI ejecuta lint, la suite completa de pruebas en macOS y Linux, verificaciones de desviación de artefactos generados, verificaciones de humo de Inspector y la suite de conformidad. Consulta .github/workflows.
Disposición del repositorio
Apple-Tools-MCP/: servidor unificado, móduloapple_agent_mcp, prefijo de entornoAPPLE_AGENT_MCP_*Apple<Domain>-MCP/: servidores independientes. La carpeta de calendar esApple-Calendar-MCP.AppleMCPCommon/: ayudantes compartidos de descubrimiento y búsqueda, publicados comoapple-mcp-commongenerated/: catálogos de herramientas generados y envoltorios de Pythonscripts/: scripts de instalación, verificación de protocolo, generación de artefactos y compilación de paquetesdocs/: documentación del proyecto y de lanzamiento
El repositorio es un workspace de uv: pyproject.toml en la raíz define los miembros, y uv.lock fija todo el grafo de dependencias.
Documentación del proyecto
- CHANGELOG.md
- CONTRIBUTING.md
- SECURITY.md
- Code Mode
- Compatibilidad MCP
- Solución de problemas: permisos de macOS, tiempos de espera y códigos de error comunes
- Publicación
- NOTICE.md: aviso de marca comercial
- Documentación de lanzamiento: flujos de trabajo, modos de fallo, compatibilidad y script de demostración
Notas
- Apple-Tools-MCP persiste los valores predeterminados del asistente en
~/.apple-tools-mcp/preferences.json(oAPPLE_AGENT_MCP_STATE_FILE) y las acciones recientes del asistente en~/.apple-tools-mcp/actions.jsonpara flujos de trabajo de auditoría y deshacer. APPLE_AGENT_MCP_CONFORMANCE_MODE=1es solo para validación de protocolo; registra los fixtures oficiales de conformidad.