MCP ExplorerExplorer

Mcp Device Server

@akshitsinhaon 9 months ago
4 MIT
FreeCommunity
AI Systems
MCP Server for managing peripheral devices via a unified API.

Overview

What is Mcp Device Server

The mcp-device-server is a Model Context Protocol (MCP) server designed for seamless integration with peripheral devices connected to a computer. It allows users to control, monitor, and manage hardware devices through a unified API.

Use cases

Use cases include developing applications that require camera input for video conferencing, managing print jobs in an office setting, creating audio recording applications, and building tools for screen sharing and capturing.

How to use

To use mcp-device-server, clone the repository from GitHub, install the necessary Python dependencies, and run the server using the command ‘uv run src/main.py’. Alternatively, it can be integrated with Claude Desktop by adding specific configuration settings.

Key features

Key features include camera control for capturing images and recording videos, print management for sending documents to printers, audio capabilities for recording from microphones and playing audio, and screen capture for taking screenshots and recording screen activity.

Where to use

mcp-device-server can be used in various fields such as software development, multimedia applications, educational tools, and any environment requiring interaction with peripheral devices.

Content

Devices MCP Server

A Model Context Protocol (MCP) server for seamless integration with peripheral devices connected to your computer. Control, monitor, and manage hardware devices through a unified API.

Supported Tools

  • Camera Control: Capture images and record video from connected cameras
  • Print Management: Send documents to printers and manage print jobs
  • Audio Capabilities: Record from microphones and play audio through speakers
  • Screen Capture: Take screenshots and record screen activity from connected displays

Prerequisites & Installation

System Dependencies

The following system dependencies are required for full functionality:

  • FFMPEG: Required for screen and camera recording functionality
  • PortAudio: Required for audio recording functionality

macOS

brew install ffmpeg portaudio

Linux (Ubuntu/Debian)

sudo apt update
sudo apt install ffmpeg portaudio19-dev

Linux (Fedora)

sudo dnf install ffmpeg portaudio-devel

Windows

winget install ffmpeg

Project Installation

  1. Clone the repository:
git clone https://github.com/akshitsinha/mcp-device-server.git
cd mcp-device-server
  1. Install Python dependencies:
uv sync

Usage

Option A: Run directly:

uv run src/main.py

Option B: Use with Claude Desktop:

Add the following configuration to your claude_desktop_config.json:

{
  "mcpServers": {
    "mcp-device-server": {
      "command": "uv",
      "args": [
        "--directory",
        "/path/to/mcp-device-server",
        "run",
        "src/main.py"
      ]
    }
  }
}

Then restart Claude Desktop to load the server.

Configuration

Configure the server using environment variables. You can set these or create a .env file in the project root.

Available configuration options:

MCP_HOST=127.0.0.1        # Server host address
MCP_PORT=8000             # Server port
MCP_ENABLE_CAMERA=true    # Enable camera functionality
MCP_ENABLE_PRINTER=true   # Enable printer functionality
MCP_ENABLE_AUDIO=true     # Enable audio functionality
MCP_ENABLE_SCREEN=true    # Enable screen functionality

Available MCP Tools

Camera

Tool Description
list_cameras List all connected cameras
get_camera_info Get detailed camera information
capture_image Take a picture from a camera
start_video_recording Begin video recording
stop_video_recording Stop video recording

Printer

Tool Description
list_printers List available printers
print_file Send a file to a printer
print_as_pdf Print file as PDF
get_print_job Get print job information
cancel_print_job Cancel a print job

Audio

Tool Description
list_audio_devices List all audio input/output devices
record_audio Record from an input device
stop_record_audio Stop recording from an input device
play_audio Play audio through a device

Screen

Tool Description
list_displays List connected displays
capture_screenshot Take a screenshot
record_screen Start screen recording
stop_record_screen Stop screen recording

Documentation

For detailed information about all available tools and their usage, see the Tools Reference Wiki.

License

MIT License

Tools

No tools

Comments

Recommend MCP Servers

View All MCP Servers