Skip to main content
Glama
avanomme

MCP Server for macOS

by avanomme

MCP (Master Control Program) Server for macOS

A modern, extensible MCP server that allows you to control and interact with various macOS applications through a unified interface.

Features

  • πŸš€ Modern Python-based architecture

  • πŸ”Œ Plugin system for easy extension

  • πŸ”’ Secure communication protocol

  • πŸ“± Native macOS integration

  • πŸ› οΈ Easy to extend and customize

  • πŸ“Š Built-in monitoring and logging

Related MCP server: Python Apple MCP

Project Structure

mcp_mac/
β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ core/           # Core MCP functionality
β”‚   β”œβ”€β”€ plugins/        # Application-specific plugins
β”‚   β”œβ”€β”€ utils/          # Utility functions
β”‚   └── api/            # API endpoints
β”œβ”€β”€ tests/              # Test suite
β”œβ”€β”€ config/             # Configuration files
└── docs/              # Documentation

Requirements

  • Python 3.9+

  • macOS 10.15+

  • pip (Python package manager)

Installation

  1. Clone the repository:

git clone https://github.com/yourusername/mcp_mac.git
cd mcp_mac
  1. Create and activate a virtual environment:

python -m venv venv
source venv/bin/activate
  1. Install dependencies:

pip install -r requirements.txt

Usage

  1. Start the MCP server:

python src/main.py
  1. The server will start on localhost:8080 by default.

  2. To add new application support, create a new plugin in the plugins directory.

Creating Custom Plugins

  1. Create a new Python file in the plugins directory

  2. Inherit from the base Plugin class

  3. Implement the required methods

  4. Register your plugin in the plugin registry

Example plugin structure:

from core.plugin import Plugin

class MyAppPlugin(Plugin):
    def __init__(self):
        super().__init__("my_app")
    
    def initialize(self):
        # Initialize your plugin
        pass
    
    def handle_command(self, command):
        # Handle incoming commands
        pass

Configuration

The server can be configured through the config/config.yaml file. Available options:

  • port: Server port (default: 8080)

  • host: Server host (default: localhost)

  • log_level: Logging level (default: INFO)

  • plugins: List of enabled plugins

Security

  • All communication is encrypted using TLS

  • Authentication required for all API endpoints

  • Rate limiting enabled by default

  • Secure plugin sandboxing

Contributing

  1. Fork the repository

  2. Create a feature branch

  3. Commit your changes

  4. Push to the branch

  5. Create a Pull Request

License

MIT License - see LICENSE file for details

Support

For support, please open an issue in the GitHub repository or contact the maintainers.

-
security - not tested
F
license - not found
-
quality - not tested

Resources

Looking for Admin?

Admins can modify the Dockerfile, update the server description, and track usage metrics. If you are the server author, to access 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/avanomme/mcp_mac'

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