does-it-install?

← All servers

macOS-MCP

MCP server for macOS desktop automation via the Accessibility API.

io.github.Jeomon/macos-mcp · Repository · version 0.3.6 · 147 stars · listed from registry

Install

The sweep installs into a clean prefix, but this is the command a user would run:

uvx macos-mcp

Results by platform

Linux

needs configuration2026-08-16 · probed over pypi

2 recorded runs, oldest first.

handshake failed: MCP error -32000: Connection closed
--- stderr (tail) ---
…py (3.8MiB)
Downloading jupyterlab (16.4MiB)
Downloading notebook (5.3MiB)
Downloading widgetsnbextension (2.1MiB)
Downloading jedi (4.7MiB)
Downloading babel (9.7MiB)
   Building pyobjc-framework-coretext==12.2.2
   Building pyobjc-framework-applicationservices==12.2.2
 Downloaded widgetsnbextension
 Downloaded debugpy
   Building pyobjc-core==12.2.2
 Downloaded notebook
   Building pyobjc-framework-quartz==12.2.2
  × Failed to build `pyobjc-framework-applicationservices==12.2.2`
  ├─▶ The build backend returned an error
  ╰─▶ Call to `setuptools.build_meta.build_wheel` failed (exit status: 1)

      [stderr]
      Traceback (most recent call last):
        File "<string>", line 14, in <module>
          requires = get_requires_for_build({})
        File
      "/home/runner/.cache/uv/builds-v0/.tmpKVotxe/lib/python3.13/site-packages/setuptools/build_meta.py",
      line 333, in get_requires_for_build_wheel
          return self._get_build_requires(config_settings, requirements=[])
                 ~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        File
      "/home/runner/.cache/uv/builds-v0/.tmpKVotxe/lib/python3.13/site-packages/setuptools/build_meta.py",
      line 301, in _get_build_requires
          self.run_setup()
          ~~~~~~~~~~~~~~^^
        File
      "/home/runner/.cache/uv/builds-v0/.tmpKVotxe/lib/python3.13/site-packages/setuptools/build_meta.py",
      line 317, in run_setup
          exec(code, locals())  # noqa: S102 # exec is intentional here
          ~~~~^^^^^^^^^^^^^^^^
        File "<string>", line 22, in <module>
        File
      "/home/runner/.cache/uv/sdists-v9/pypi/pyobjc-framework-applicationservices/12.2.2/pneg-57DfeSmRLhf/src/pyobjc_setup.py",
      line 552, in setup
          os_level = get_os_level()
        File
      "/home/runner/.cache/uv/sdists-v9/pypi/pyobjc-framework-applicationservices/12.2.2/pneg-57DfeSmRLhf/src/pyobjc_setup.py",
      line 252, in get_os_level
          subprocess.check_output(["/usr/bin/sw_vers", "-productVersion"])
          ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        File
      "/home/runner/.local/share/uv/python/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/subprocess.py",
      line 472, in check_output
          return run(*popenargs, stdout=PIPE, timeout=timeout, check=True,
                 ~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
                     **kwargs).stdout
                     ^^^^^^^^^
        File
      "/home/runner/.local/share/uv/python/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/subprocess.py",
      line 554, in run
          with Popen(*popenargs, **kwargs) as process:
               ~~~~~^^^^^^^^^^^^^^^^^^^^^^
        File
      "/home/runner/.local/share/uv/python/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/subprocess.py",
      line 1039, in __init__
          self._execute_child(args, executable, preexec_fn, close_fds,
          ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
                              pass_fds, cwd, env,
                              ^^^^^^^^^^^^^^^^^^^
          ...<5 lines>...
                              gid, gids, uid, umask,
                              ^^^^^^^^^^^^^^^^^^^^^^
                              start_new_session, process_group)
                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        File
      "/home/runner/.local/share/uv/python/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/subprocess.py",
      line 1991, in _execute_child
          raise child_exception_type(errno_num, err_msg, err_filename)
      FileNotFoundError: [Errno 2] No such file or directory:
      '/usr/bin/sw_vers'


hint: `pyobjc-framework-applicationservices` (v12.2.2) was included because `macos-mcp` (v0.3.6) depends on `pyobjc-framework-applicationservices`
hint: Build failures usually indicate a problem with the package or the build environment

macOS

needs configuration2026-08-16 · probed over pypi

2 recorded runs, oldest first.

handshake failed: MCP error -32000: Connection closed
--- stderr (tail) ---
Downloading pyzmq (1.2MiB)
Downloading jedi (4.7MiB)
Downloading debugpy (2.4MiB)
Downloading pyobjc-core (6.1MiB)
Downloading widgetsnbextension (2.1MiB)
Downloading babel (9.7MiB)
Downloading jupyterlab (16.4MiB)
Downloading notebook (5.3MiB)
 Downloaded pyzmq
 Downloaded widgetsnbextension
 Downloaded debugpy
 Downloaded notebook
 Downloaded pyobjc-core
 Downloaded babel
 Downloaded jupyterlab
 Downloaded jedi
Installed 156 packages in 2.07s
Traceback (most recent call last):
  File "/Users/runner/.cache/uv/archive-v0/Fp-BBOPZGINZzFMV/bin/macos-mcp", line 6, in <module>
    from macos_mcp.__main__ import main
  File "/Users/runner/.cache/uv/archive-v0/Fp-BBOPZGINZzFMV/lib/python3.14/site-packages/macos_mcp/__main__.py", line 431
    _SCRAPE_MAX_CHARS = 20_000
    ^^^^^^^^^^^^^^^^^
SyntaxError: invalid syntax

Windows

needs configuration2026-08-16 · probed over pypi

2 recorded runs, oldest first.

handshake failed: MCP error -32000: Connection closed
--- stderr (tail) ---
Downloading babel (9.7MiB)
Downloading widgetsnbextension (2.1MiB)
Downloading jupyterlab (16.4MiB)
Downloading notebook (5.3MiB)
Downloading debugpy (5.1MiB)
Downloading pywinpty (2.0MiB)
Downloading jedi (4.7MiB)
   Building pyobjc-framework-coretext==12.2.2
   Building pyobjc-framework-applicationservices==12.2.2
 Downloaded pywinpty
 Downloaded widgetsnbextension
 Downloaded notebook
 Downloaded debugpy
   Building pyobjc-core==12.2.2
  × Failed to build `pyobjc-framework-coretext==12.2.2`
  ├─▶ The build backend returned an error
  ╰─▶ Call to `setuptools.build_meta.build_wheel` failed (exit code: 1)

      [stderr]
      Traceback (most recent call last):
        File "<string>", line 14, in <module>
        File
      "C:\Users\runneradmin\AppData\Local\uv\cache\builds-v0\.tmpfmKHnB\Lib\site-packages\setuptools\build_meta.py",
      line 333, in get_requires_for_build_wheel
          return self._get_build_requires(config_settings, requirements=[])
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        File
      "C:\Users\runneradmin\AppData\Local\uv\cache\builds-v0\.tmpfmKHnB\Lib\site-packages\setuptools\build_meta.py",
      line 301, in _get_build_requires
          self.run_setup()
        File
      "C:\Users\runneradmin\AppData\Local\uv\cache\builds-v0\.tmpfmKHnB\Lib\site-packages\setuptools\build_meta.py",
      line 317, in run_setup
          exec(code, locals())  # noqa: S102 # exec is intentional here
          ^^^^^^^^^^^^^^^^^^^^
        File "<string>", line 28, in <module>
        File
      "C:\Users\runneradmin\AppData\Local\uv\cache\sdists-v9\pypi\pyobjc-framework-coretext\12.2.2\4smRSllaqP5QRGko\src\pyobjc_setup.py",
      line 470, in Extension
          if "clang" in get_config_var("CC"):
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      TypeError: argument of type 'NoneType' is not iterable


hint: `pyobjc-framework-coretext` (v12.2.2) was included because `macos-mcp` (v0.3.6) depends on `pyobjc-framework-applicationservices` (v12.2.2) which depends on `pyobjc-framework-coretext`
hint: Build failures usually indicate a problem with the package or the build environment

Badge

Paste this into the project README to show the current result:

[![does it install](https://img.shields.io/endpoint?url=https://doesitinstall.com/badge/io.github.jeomon__macos-mcp.json)](https://doesitinstall.com/s/io.github.jeomon__macos-mcp.html)