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 que permiten que un cliente de IA use aplicaciones de Apple y herramientas de macOS. Crea recordatorios, envía mensajes, consulta calendarios, busca correos, gestiona archivos y obtén indicaciones.
Los servidores se ejecutan en tu Mac. Tu cliente MCP puede enviar los datos devueltos a su proveedor de modelos, y las aplicaciones de Apple pueden sincronizarse a través de iCloud u otra cuenta. La ejecución local no significa que los datos permanezcan locales.
Requiere Python 3.11+ y macOS. Usa la especificación MCP 2026-07-28 y el SDK de Python 2.x, con soporte para revisiones de protocolo de cliente más antiguas. Licencia MIT.
Instalación
Instala uv y luego registra el servidor unificado con tu cliente.
Claude Code:
claude mcp add --transport stdio --scope project apple-tools -- uvx apple-tools-mcp
Codex:
codex mcp add apple-tools -- uvx apple-tools-mcp
Otros clientes stdio:
{
"mcpServers": {
"apple-tools": {
"command": "uvx",
"args": ["apple-tools-mcp"]
}
}
}
Ejecuta uvx apple-tools-mcp para iniciar el servidor directamente. Los servidores independientes usan el mismo enfoque, como uvx apple-mcp-mail o uvx apple-calendar-mcp.
Reinicia tu cliente después de instalar o actualizar. Llama a search_tools con calendar health para verificar el descubrimiento sin leer datos de la aplicación.
Para Claude Desktop, descarga el paquete .mcpb de un servidor desde Releases y haz doble clic en él.
Configura los modos de seguridad y directorios específicos de cada aplicación en la configuración de env de tu cliente. Una configuración de seguridad explícitamente inválida o en blanco selecciona safe_readonly; las configuraciones no establecidas conservan el valor predeterminado documentado de cada dominio. La guía de configuración enumera los valores predeterminados y las opciones. Los adjuntos de Mail están deshabilitados hasta que establezcas APPLE_MAIL_MCP_ALLOWED_ATTACHMENT_ROOT en un directorio dedicado. Las herramientas de archivos solo acceden a APPLE_FILES_MCP_ALLOWED_ROOTS; macOS puede imponer restricciones adicionales.
Elige un servidor
Comienza con Apple-Tools-MCP. Combina las diez aplicaciones y herramientas siguientes, además de valores predeterminados guardados, enrutamiento de contactos, ayudas de hilos de Mail, deshacer, resúmenes y flujos de trabajo entre aplicaciones.
Elige un servidor independiente para exponer menos aplicaciones a tu cliente:
| Servidor | Acceso a macOS | Herramienta de salud | Ayuda de permisos |
|---|---|---|---|
| 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 | Automatización; Acceso a disco completo 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 adicional | shortcuts_health | shortcuts_permission_guide, shortcuts_refresh_state |
| Files | Raíces permitidas y acceso a carpetas protegidas | files_health | files_permission_guide |
| System | Algunas acciones necesitan System Events, Accessibility o Automation | system_health | system_permission_guide |
| Maps | Sin aviso de privacidad; el asistente Swift necesita las herramientas de línea de comandos de Xcode | maps_health | maps_permission_guide |
El servidor unificado usa apple_health, apple_permission_guide y apple_recheck_permissions. Debes aprobar los permisos tú mismo en el aviso de macOS o en Configuración del sistema.
Encuentra y usa herramientas
MCP tools/list devuelve los esquemas de cada herramienta y sus anotaciones de lectura o escritura. Usa search_tools para buscar nombres, descripciones y alias; usa get_tool_info para el esquema y ejemplos de una sola herramienta.
Resuelve los destinatarios a través de Contacts antes de enviar, a menos que tengas la dirección exacta. Para conversaciones de Mail, usa mail_get_thread, mail_reply_latest_in_thread o mail_archive_thread. Pasa un correo de remitente exacto en from_account cuando la identidad del remitente sea importante.
La búsqueda de Mail requiere una consulta: un remitente, un fragmento de asunto o *. Reminders due_date requiere un desplazamiento de zona horaria, como yyyy-MM-ddTHH:mm:ss-08:00. Omite service_name al enviar iMessages.
El servidor unificado también proporciona apple_generate_daily_briefing, apple_generate_weekly_briefing y apple_triage_communications_task. Los clientes sin soporte de avisos pueden usar apple_list_prompts, apple_get_prompt y sus equivalentes por servidor.
Para llamadas desde Python, usa los metadatos en generated/tool_catalogs/ y los envoltorios en generated/tool_wrappers/python/. Consulta code-mode.md.
Transporte y estado almacenado
stdio es el valor predeterminado. Para usar Streamable HTTP, establece APPLE_<DOMAIN>_MCP_TRANSPORT=streamable-http y las variables _HOST y _PORT correspondientes.
HTTP debe vincularse a 127.0.0.1, ::1 o localhost. Los servidores no tienen autenticación remota y rechazan enlaces de red y comodín. No los expongas a través de un túnel o proxy público.
Apple-Tools-MCP almacena valores predeterminados en ~/.apple-tools-mcp/preferences.json, configurables mediante APPLE_AGENT_MCP_STATE_FILE. Almacena acciones recientes en ~/.apple-tools-mcp/actions.json para auditoría y deshacer.
Desarrollo
git clone https://github.com/JonathanRReed/Apple-MCPs.git
cd Apple-MCPs
uv sync --all-packages
El espacio de trabajo de uv instala cada servidor en .venv/bin. Cada carpeta de servidor también tiene un start.sh para clientes; usa uv cuando esté disponible y, de lo contrario, crea un entorno virtual. El pyproject.toml raíz define los miembros del espacio de trabajo, y uv.lock fija las dependencias.
| Ruta | Contenido |
|---|---|
Apple-Tools-MCP/ | Servidor unificado; módulo apple_agent_mcp, prefijo de entorno APPLE_AGENT_MCP_* |
Apple<Domain>-MCP/ | Servidores independientes; Calendar usa Apple-Calendar-MCP |
AppleMCPCommon/ | Descubrimiento y búsqueda compartidos, publicado como apple-mcp-common |
generated/ | Catálogos de herramientas y envoltorios de Python |
scripts/ | Instalación, comprobaciones, generación y compilaciones de paquetes |
docs/ | Documentación del proyecto y de lanzamiento |
Ejecuta comprobaciones rápidas:
bash scripts/inspector_smoke.sh
uv run python scripts/protocol_smoke.py
Para la suite de conformidad oficial, inicia el servidor en una terminal separada:
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
El modo de conformidad registra accesorios de prueba. Úsalo solo para validación de protocolo. CI ejecuta lint, pruebas de macOS y Linux, comprobaciones de archivos generados, comprobaciones rápidas de Inspector y pruebas de conformidad.
Documentación
Contributing · Security · Troubleshooting · MCP compatibility · Publishing · Changelog · Trademark notice · Launch docs