akshitsinha/mcp-device-server
If you are the rightful owner of mcp-device-server and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.
A Model Context Protocol (MCP) server for seamless integration with peripheral devices connected to your computer.
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
- Clone the repository:
git clone https://github.com/akshitsinha/mcp-device-server.git
cd mcp-device-server
- 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.