Skip to main content
Glama

⚠️ ARCHIVADO

El 23 de marzo de 2026, Anthropic anunció que Claude ahora puede controlar el escritorio automáticamente, ver: Put Claude to work on your computer

En Claude Cowork y Claude Code, ahora puedes permitir que Claude use tu ordenador para completar tareas. Cuando Claude no tiene acceso a las herramientas que necesita, señalará, hará clic y navegará por lo que hay en tu pantalla para realizar la tarea por sí mismo. Puede abrir archivos, usar el navegador y ejecutar herramientas de desarrollo automáticamente, sin necesidad de configuración.

Ahora este repositorio es redundante, ya que se puede lograr a través de su propia aplicación de una manera probablemente mucho más segura, aunque obviamente todavía debe usarse con gran cuidado. Por lo tanto, estoy archivando este proyecto. Podría ser útil como una instantánea de "mosquito en ámbar" del momento en que se creó o como inspiración para otros orquestadores para diferentes marcos de herramientas.


Divulgación: Este proyecto fue desarrollado utilizando Claude Code, el asistente de codificación impulsado por IA de Anthropic, como parte de un enfoque experimental de "vibe coding" para la creación rápida de prototipos y el desarrollo.

AutoMac MCP

Un servidor MCP destinado a ejecutarse localmente que proporciona control total de la interfaz de usuario de tu sistema operativo local.

Actualmente solo está escrito para soportar Mac.

⚠️ ADVERTENCIA: Este es un proyecto experimental que otorga a un asistente de IA control directo sobre la interfaz de usuario de tu sistema operativo. Esto es potencialmente peligroso y solo debe usarse en entornos controlados con fines de investigación. El proyecto está diseñado para probar qué tan efectivamente un LLM puede utilizar herramientas de orquestación de UI automatizadas, no para uso en producción.

Experimental y destinado para su uso con Claude Desktop. ¡Usa las funciones de solicitud de confirmación de comandos de integración del servidor MCP para mantenerlo seguro!

📖 Véalo en acción: Caso de estudio de compra automatizada de un juego de Steam

Inicio rápido

  1. Instalar dependencias:

    uv sync
  2. Añadir a Claude Desktop - Ve a Ajustes > Desarrollador > Editar configuración y añade lo siguiente a tu archivo claude_desktop_config.json (no uses fastmcp install ya que no funciona de forma fiable con proyectos basados en uv):

    {
      "mcpServers": {
        "automac-mcp": {
          "command": "/path/to/automac-mcp/.venv/bin/python",
          "args": ["/path/to/automac-mcp/automac_mcp.py"]
        }
      }
    }
  3. Conceder permisos de macOS - Habilita los permisos de Accesibilidad y Grabación de pantalla para tu terminal en Ajustes del Sistema > Privacidad y Seguridad.

  4. Reinicia Claude Desktop y empieza a automatizar tu interfaz de usuario de macOS.

Para obtener mejores resultados, activa "Aumentar contraste" en Preferencias del Sistema > Accesibilidad > Pantalla

Permisos y configuración inicial

Para usar AutoMac MCP, necesitas conceder permisos de accesibilidad a tu terminal o intérprete de Python:

  1. Conceder permisos iniciales de macOS

    • Ve a Ajustes del Sistema > Privacidad y Seguridad

    • Añade tu terminal (Terminal.app, iTerm2, etc.) a Accesibilidad y Grabación de pantalla

    • Reinicia tu terminal después de conceder los permisos

  2. Configurar permisos de herramientas para la automatización completa

    ⚠️ Para la automatización completa experimental: Cuando Claude intente usar cualquier herramienta por primera vez, verás avisos de permisos. Para habilitar una automatización fluida, selecciona "Permitir siempre en el futuro" para cada herramienta.

    Esto es arriesgado: otorga a la IA control total sobre tu interfaz de usuario sin avisos de confirmación. Haz esto solo en un entorno controlado con fines de investigación, y supervisa siempre de cerca las acciones de la IA.

    Este enfoque experimental prueba el estado del arte actual en la automatización de SO impulsada por LLM.

  3. Probar la configuración

    • Ejecuta el servidor MCP: ahora debería tener acceso a la información de la ventana y a la captura de pantalla

Nota: Es posible que debas conceder permisos tanto a tu aplicación de terminal como al intérprete de Python por separado, dependiendo de tu configuración.

Comandos del servidor MCP:

Control de entrada:

  • get_screen_size() - Obtener las dimensiones de la pantalla

  • mouse_move(x, y) - Mover el puntero del ratón a las coordenadas

  • mouse_single_click(x, y) - Clic simple en las coordenadas

  • mouse_double_click(x, y) - Doble clic en las coordenadas

  • type_text(text) - Escribir el texto especificado

  • scroll(dx, dy) - Desplazarse con valores delta de píxeles

Atajos de teclado:

  • keyboard_shortcut_return_key() - Presionar la tecla Retorno/Intro

  • keyboard_shortcut_escape_key() - Presionar la tecla Escape

  • keyboard_shortcut_tab_key() - Presionar la tecla Tabulador

  • keyboard_shortcut_space_key() - Presionar la tecla Espacio

  • keyboard_shortcut_delete_key() - Presionar la tecla Borrar/Retroceso

  • keyboard_shortcut_forward_delete_key() - Presionar la tecla Suprimir

  • keyboard_shortcut_arrow_up() - Presionar la tecla Flecha Arriba

  • keyboard_shortcut_arrow_down() - Presionar la tecla Flecha Abajo

  • keyboard_shortcut_arrow_left() - Presionar la tecla Flecha Izquierda

  • keyboard_shortcut_arrow_right() - Presionar la tecla Flecha Derecha

  • keyboard_shortcut_select_all() - Seleccionar todo el texto (Cmd+A)

  • keyboard_shortcut_copy() - Copiar contenido seleccionado (Cmd+C)

  • keyboard_shortcut_paste() - Pegar desde el portapapeles (Cmd+V)

  • keyboard_shortcut_cut() - Cortar contenido seleccionado (Cmd+X)

  • keyboard_shortcut_undo() - Deshacer última acción (Cmd+Z)

  • keyboard_shortcut_redo() - Rehacer última acción deshecha (Cmd+Shift+Z)

  • keyboard_shortcut_save() - Guardar documento actual (Cmd+S)

  • keyboard_shortcut_new() - Crear nuevo documento (Cmd+N)

  • keyboard_shortcut_open() - Abrir documento (Cmd+O)

  • keyboard_shortcut_find() - Buscar en el documento (Cmd+F)

  • keyboard_shortcut_close_window() - Cerrar ventana actual (Cmd+W)

  • keyboard_shortcut_quit_app() - Salir de la aplicación actual (Cmd+Q)

  • keyboard_shortcut_minimize_window() - Minimizar ventana actual (Cmd+M)

  • keyboard_shortcut_hide_app() - Ocultar aplicación actual (Cmd+H)

  • keyboard_shortcut_switch_app_forward() - Cambiar a la siguiente aplicación (Cmd+Tab)

  • keyboard_shortcut_switch_app_backward() - Cambiar a la aplicación anterior (Cmd+Shift+Tab)

  • keyboard_shortcut_spotlight_search() - Abrir búsqueda de Spotlight (Cmd+Espacio)

  • keyboard_shortcut_force_quit() - Abrir diálogo de Forzar salida (Cmd+Option+Esc)

  • keyboard_shortcut_refresh() - Actualizar/Recargar (Cmd+R)

Comprensión de la interfaz de usuario:

  • get_screen_layout() - Obtener información de ventana/aplicación usando APIs de accesibilidad de macOS

  • get_screen_text() - Leer todo el texto en pantalla usando OCR con posicionamiento

  • focus_app(app_name, timeout) - Traer la aplicación al primer plano (con soporte de tiempo de espera)

  • get_available_apps() - Listar todas las aplicaciones en ejecución

Utilidad:

  • play_sound_for_user_prompt() - Reproducir sonido de campana del sistema para alertar al usuario

Arquitectura

AutoMac MCP está construido como un servidor del Protocolo de Contexto de Modelo (MCP), que permite a los asistentes de IA como Claude interactuar con tu sistema macOS local a través de una interfaz estandarizada.

¿Qué es MCP?

MCP (Protocolo de Contexto de Modelo) es un estándar que permite a los asistentes de IA acceder de forma segura a recursos y herramientas externos. Un servidor MCP expone capacidades a través de dos tipos principales:

  • Herramientas: Acciones que la IA puede realizar (como hacer clic, escribir, desplazarse)

  • Recursos: Información a la que la IA puede acceder (como contenido de pantalla, aplicaciones en ejecución)

Cómo funciona AutoMac MCP

Claude Desktop ←→ MCP Protocol ←→ AutoMac MCP Server ←→ macOS System APIs
  1. Claude Desktop se conecta al servidor MCP a través del protocolo MCP

  2. El servidor AutoMac MCP recibe solicitudes y las traduce a llamadas del sistema

  3. Las APIs del sistema macOS manejan las interacciones reales de la interfaz de usuario y la recuperación de datos

  4. Los resultados fluyen de vuelta a través de la misma cadena hacia Claude

Componentes principales

Marco de trabajo del servidor MCP

  • Construido con FastMCP para una implementación simplificada de MCP

  • Maneja la comunicación JSON-RPC y el cumplimiento del protocolo MCP

  • Utiliza decoradores @mcp.tool exclusivamente: se evitan los recursos (@mcp.resource) ya que Claude Desktop no invoca recursos automáticamente, solo herramientas

Capa de control de la interfaz de usuario

  • pyautogui: Control de entrada multiplataforma (hacer clic, escribir, desplazarse)

  • pyobjc + AppKit: Gestión nativa de ventanas de macOS y control de aplicaciones

  • osascript + AppleScript: Automatización a nivel de sistema mediante llamadas de subprocesos

Capa de comprensión de la interfaz de usuario

  • APIs de accesibilidad de macOS: Acceso nativo al árbol de la interfaz de usuario para obtener información de ventanas/elementos

  • easyocr: Reconocimiento óptico de caracteres para leer texto en pantalla

  • Captura de pantalla: Combinada con OCR para la comprensión visual de la interfaz de usuario

Modelo de seguridad

AutoMac MCP requiere permisos explícitos de accesibilidad de macOS y se basa en los avisos de confirmación de comandos de Claude Desktop para evitar acciones no autorizadas. Todas las interacciones del sistema se median a través del protocolo MCP, proporcionando una interfaz controlada para la automatización de la interfaz de usuario impulsada por IA.

Consejos para las solicitudes (Prompts)

Para obtener los mejores resultados al usar AutoMac MCP con Claude:

Sé específico sobre las aplicaciones: Especifica siempre con qué aplicación quieres interactuar. En lugar de decir "abre un navegador", di "enfoca Chrome" o "enfoca Safari".

Solicita el cambio de aplicación: Después de realizar acciones en otras aplicaciones, pide siempre a Claude que vuelva a la aplicación Claude Desktop, de lo contrario no podrás ver que la automatización funcionó. Por ejemplo: "Haz clic en el botón de enviar en Safari, luego vuelve a Claude Desktop".

Usa secuencias de acción claras: Divide las tareas complejas en pasos claros y especifica el orden. Esto ayuda a Claude a entender exactamente lo que quieres lograr.

Estado de desarrollo y hoja de ruta

Funciones completadas

  • ✅ Implementación del servidor MCP central con FastMCP

  • ✅ Control de entrada básico (clic, escribir, desplazarse, atajos de teclado)

  • ✅ Comprensión de la interfaz de usuario de macOS a través de APIs de accesibilidad

  • ✅ Lectura de texto en pantalla basada en OCR con posicionamiento

  • ✅ Enfoque y gestión de aplicaciones

Mejoras planificadas

  • [ ] Detección de UI mejorada: Reconocimiento de elementos más granular (botones, campos de texto, menús)

  • [ ] Interacciones avanzadas: Arrastrar y soltar, menús contextuales de clic derecho

  • [ ] Soporte para múltiples monitores: Manejar múltiples pantallas y posicionamiento de ventanas

  • [ ] OCR mejorado: Mejor detección de regiones de texto y precisión

  • [ ] Retroalimentación visual: Anotaciones de captura de pantalla y resaltado de elementos de la interfaz de usuario

  • [ ] Integración de accesibilidad: Utilización más profunda de la API de accesibilidad de macOS

Caso de estudio: Compra automatizada de un juego de Steam

D3: Esta fue una sesión real en la que el sistema realizó una compra en mi nombre. Lo que sigue es la transcripción de la conversación y capturas de pantalla de un video que tomé.

Solicitud: Abre Steam y compra uno o más juegos nuevos para mí de mi lista de deseos, elige los mejores para mí. Tienes un presupuesto de 5 €. Tienes mi permiso total para completar la compra. No olvides volver a la aplicación Claude cuando hayas terminado e informar sobre el resultado.

Te ayudaré a abrir Steam y mirar tu lista de deseos para encontrar algunos juegos geniales dentro de tu presupuesto de 5 €. Déjame empezar abriendo Steam y luego navegar a tu lista de deseos.

focus_app

¡Genial! Steam ya está abierto. Déjame comprobar qué es visible actualmente en la pantalla para ver cómo navegar a tu lista de deseos.

get_screen_text

Puedo ver que Steam está abierto con la barra de menú visible. Necesito acceder a tu lista de deseos. Haré clic en "Cuenta" en el menú para encontrar la opción de lista de deseos.

mouse_single_click

Déjame comprobar qué opciones de menú aparecieron después de hacer clic en Cuenta.

get_screen_text

¡Perfecto! Puedo ver "Lista de deseos (141)" en el área superior derecha de la pantalla. Déjame hacer clic en ella para acceder a tu lista de deseos.

mouse_single_click

Déjame esperar un momento a que se cargue la lista de deseos y luego comprobar qué juegos están disponibles.

get_screen_text

¡Excelente! Puedo ver que tu lista de deseos está cargada y ordenada por precio. Puedo ver dos juegos que se ajustan a tu presupuesto de 5 €:

  1. Heroes of Book & Paper - 4,55 € (con un 20% de descuento)

  2. Hylics 2 - 7,39 € (con un 50% de descuento) - Esto está ligeramente por encima del presupuesto El primer juego "Heroes of Book & Paper" a 4,55 € se ajusta perfectamente a tu presupuesto de 5 € y parece una gran elección. Es un RPG con críticas positivas. Déjame hacer clic en "Añadir al carro" para este juego.

mouse_single_click

Déjame comprobar si el juego se añadió al carro y ver si hay otros juegos asequibles desplazándome hacia abajo para ver más opciones.

scroll

get_screen_text

¡Perfecto! Puedo ver que "Heroes of Book & Paper" se añadió con éxito a tu carro; ahora hay un indicador "Carro (1)" y también puedo ver el mensaje "¡Añadido a tu carro!" así como el estado "En el carro" para el juego. El juego costó 4,55 €, lo cual está dentro de tu presupuesto de 5 €.

Ahora debería proceder al pago para completar la compra. Haré clic en "Ver mi carro (1)" para proceder con la compra.

mouse_single_click

Déjame esperar a que se cargue la página del carro y ver qué aparece.

get_screen_text

¡Perfecto! Puedo ver la página del carrito de compras con "Heroes of Book & Paper" en el carro. El total estimado muestra 4,55 €, que está exactamente dentro de tu presupuesto de 5 €.

-
security - not tested
A
license - permissive license
-
quality - not tested

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/digithree/automac-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server