by 13rac1
Video Still Capture MCP is a Python implementation of the Model Context Protocol (MCP) that provides AI assistants with the ability to access and control webcams and video sources through OpenCV.
Video Still Capture MCP is a Model Context Protocol (MCP) server designed to allow AI assistants to interact with webcams and video sources using OpenCV. It enables language models to capture images, adjust camera settings, and manage video connections, effectively bridging the gap between AI and real-world visual input.
To use Video Still Capture MCP, you first need to install the prerequisites, including Python 3.10+, OpenCV, and the MCP Python SDK. You can then install the project from source by cloning the repository and running pip install -e .. The MCP server can be run using mcp dev videocapture_mcp.py. For integration with Claude for Desktop, you need to modify the Claude Desktop configuration file to include the MCP server settings, ensuring you provide the absolute path to the videocapture_mcp.py file. Alternatively, you can use the mcp install videocapture_mcp.py command for automatic configuration. Once integrated, AI assistants like Claude can be prompted to perform webcam-related tasks.
Video Still Capture MCP is primarily used to enable AI assistants to interact with webcams. Examples include:
A Model Context Protocol server for accessing and controlling webcams via OpenCV
Video Still Capture MCP is a Python implementation of the Model Context Protocol (MCP) that provides AI assistants with the ability to access and control webcams and video sources through OpenCV. This server exposes a set of tools that allow language models to capture images, manipulate camera settings, and manage video connections. There is no video capture.
Here are some examples of the Video Still Capture MCP server in action:
| Left: Claude's view of the image | Right: Actual webcam capture |
|---|---|
![]() |
![]() |
| Left: Claude's view of the image | Right: Actual webcam capture |
|---|---|
![]() |
![]() |
opencv-python)git clone https://github.com/13rac1/videocapture-mcp.git
cd videocapture-mcp
pip install -e .
Run the MCP server:
mcp dev videocapture_mcp.py
Edit your Claude Desktop configuration:
# Mac
nano ~/Library/Application\ Support/Claude/claude_desktop_config.json
# Linux
nano ~/.config/Claude/claude_desktop_config.json
Add this MCP server configuration:
{
"mcpServers": {
"VideoCapture ": {
"command": "uv",
"args": [
"run",
"--with",
"mcp[cli]",
"--with",
"numpy",
"--with",
"opencv-python",
"mcp",
"run",
"/ABSOLUTE_PATH/videocapture_mcp.py"
]
}
}
}
Ensure you replace /ABSOLUTE_PATH/videocapture-mcp with the project's absolute path.
Edit your Claude Desktop configuration:
nano $env:AppData\Claude\claude_desktop_config.json
Add this MCP server configuration:
{
"mcpServers": {
"VideoCapture": {
"command": "uv",
"args": [
"run",
"--with",
"mcp[cli]",
"--with",
"numpy",
"--with",
"opencv-python",
"mcp",
"run",
"C:\ABSOLUTE_PATH\videocapture-mcp\videocapture_mcp.py"
]
}
}
}
Ensure you replace C:\ABSOLUTE_PATH\videocapture-mcp with the project's absolute path.
Alternatively, you can use the mcp CLI to install the server:
mcp install videocapture_mcp.py
This will automatically configure Claude Desktop to use your videocapture MCP server.
Once integrated, Claude will be able to access your webcam or video source when requested. Simply ask Claude to take a photo or perform any webcam-related task.
quick_captureQuickly open a camera, capture a single frame, and close it.
quick_capture(device_index: int = 0, flip: bool = False) -> Image
open_cameraOpen a connection to a camera device.
open_camera(device_index: int = 0, name: Optional[str] = None) -> str
capture_frameCapture a single frame from the specified video source.
capture_frame(connection_id: str, flip: bool = False) -> Image
get_video_propertiesGet properties of the video source.
get_video_properties(connection_id: str) -> dict
set_video_propertySet a property of the video source.
set_video_property(connection_id: str, property_name: str, value: float) -> bool
close_connectionClose a video connection and release resources.
close_connection(connection_id: str) -> bool
list_active_connectionsList all active video connections.
list_active_connections() -> list
Here's how an AI assistant might use the Webcam MCP server:
Take a quick photo:
I'll take a photo using your webcam.
(The AI would call quick_capture() behind the scenes)
Open a persistent connection:
I'll open a connection to your webcam so we can take multiple photos.
(The AI would call open_camera() and store the connection ID)
Adjust camera settings:
Let me increase the brightness of the webcam feed.
(The AI would call set_video_property() with the appropriate parameters)
The server automatically manages camera resources, ensuring all connections are properly released when the server shuts down. For long-running applications, it's good practice to explicitly close connections when they're no longer needed.
If your system has multiple cameras, you can specify the device index when opening a connection:
# Open the second webcam (index 1)
connection_id = open_camera(device_index=1)
This project is licensed under the MIT License - see the LICENSE file for details.
Contributions are welcome! Please feel free to submit a Pull Request.
Please log in to share your review and rating for this MCP.
Discover more MCP servers with similar functionality and use cases
by danny-avila
Provides a customizable ChatGPT‑like web UI that integrates dozens of AI models, agents, code execution, image generation, web search, speech capabilities, and secure multi‑user authentication, all open‑source and ready for self‑hosting.
by ahujasid
BlenderMCP integrates Blender with Claude AI via the Model Context Protocol (MCP), enabling AI-driven 3D scene creation, modeling, and manipulation. This project allows users to control Blender directly through natural language prompts, streamlining the 3D design workflow.
by pydantic
Enables building production‑grade generative AI applications using Pydantic validation, offering a FastAPI‑like developer experience.
by GLips
Figma-Context-MCP is a Model Context Protocol (MCP) server that provides Figma layout information to AI coding agents. It bridges design and development by enabling AI tools to directly access and interpret Figma design data for more accurate and efficient code generation.
by mcp-use
Easily create and interact with MCP servers using custom agents, supporting any LLM with tool calling and offering multi‑server, sandboxed, and streaming capabilities.
by sonnylazuardi
This project implements a Model Context Protocol (MCP) integration between Cursor AI and Figma, allowing Cursor to communicate with Figma for reading designs and modifying them programmatically.
by lharries
WhatsApp MCP Server is a Model Context Protocol (MCP) server for WhatsApp that allows users to search, read, and send WhatsApp messages (including media) through AI models like Claude. It connects directly to your personal WhatsApp account via the WhatsApp web multi-device API and stores messages locally in a SQLite database.
by idosal
GitMCP is a free, open-source remote Model Context Protocol (MCP) server that transforms any GitHub project into a documentation hub, enabling AI tools to access up-to-date documentation and code directly from the source to eliminate "code hallucinations."
by Klavis-AI
Klavis AI provides open-source Multi-platform Control Protocol (MCP) integrations and a hosted API for AI applications. It simplifies connecting AI to various third-party services by managing secure MCP servers and authentication.