- Cameracontroller
Cameracontroller
What is Cameracontroller?
Cameracontroller is a Node.js/TypeScript based multi-protocol camera control service that adheres to the Model Context Protocol (MCP) TypeScript SDK, enabling users to control cameras for various functionalities.
How to use Cameracontroller?
To use Cameracontroller, install the necessary dependencies, configure the environment variables in a .env file, and start the service using npm commands. You can then interact with the camera through the provided MCP tool interfaces.
Key features of Cameracontroller?
- Camera enumeration and management
- Photo capture and video recording (both file and streaming)
- Support for multiple transport modes: stdio, HTTP, and SSE
- Compatibility with Windows (dshow) and Linux (v4l2)
- Concurrent video recording and streaming with multiple instances
- Customizable environment variables and logging
- Stream URL support for clients using httpx/curl/ffmpeg/ffplay
Use cases of Cameracontroller?
- Automating photo capture for surveillance systems
- Streaming live video feeds for remote monitoring
- Recording video for event documentation
FAQ from Cameracontroller?
- Can Cameracontroller work on both Windows and Linux?
Yes! Cameracontroller supports both Windows (dshow) and Linux (v4l2).
- How do I configure the environment variables?
You need to copy the .env.sample file to .env and set the parameters according to your requirements.
- What should I do if I encounter issues with camera detection?
Ensure you use the listCameras command to retrieve the cameraID and verify that ffmpeg can recognize the camera.
Server Config
{
"mcpServers": {
"mcp-camera-service": {
"command": "npx",
"args": [
"-y",
"mcp-camera-service",
"stdio"
]
}
}
}