Skip to main content

MseeP.ai Security Assessment Badge

Trust Score

MCP Server - VMS Integration

A Model Context Protocol (MCP) server designed to connect to a CCTV recording program (VMS) to retrieve recorded and live video streams. It also provides tools to control the VMS software, such as showing live or playback dialogs for specific channels at specified times.

diagram

Features

  • Retrieve video channel information, including connection and recording status.
  • Fetch recording dates and times for specific channels.
  • Fetch live or recorded images from video channels.
  • Show live video streams or playback dialogs for specific channels and timestamps.
  • Control PTZ (Pan-Tilt-Zoom) cameras by moving them to preset positions.
  • Comprehensive error handling and logging.

Prerequisites

  • Python 3.12+
  • vmspy library (for VMS integration)
  • Pillow library (for image processing)

MCP-server Configuration

If you want to use mcp-vms with Claude desktop, you need to set up the claude_desktop_config.json file as follows:

{
  "mcpServers": {
	"vms": {
	  "command": "uv",
	  "args": [
		"--directory",
		"X:\\path\\to\\mcp-vms",
		"run",
		"mcp_vms.py"
	  ]
	}
  }
}

VMS Connection Configuration

The server uses the following default configuration for connecting to the VMS:

  • mcp_vms_config.py
vms_config = {
    'img_width': 320,
    'img_height': 240,
    'pixel_format': 'RGB',
    'url': '127.0.0.1',
    'port': 3300,
    'access_id': 'admin',
    'access_pw': 'admin',
}

Installation

1. Install UV Package Manager

Run the following command in PowerShell to install UV:

powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

For alternative installation methods, see the official UV documentation.

2.Install VMS Server

Download and install the VMS server from:
http://surveillance-logic.com/en/download.html (Required before using this MCP server)

3.Install Python Dependencies

Download the vmspy library:
vmspy1.4-python3.12-x64.zip Extract the contents into your mcp_vms directory

The mcp-vms directory should look like this:

mcp-vms/
├── .gitignore
├── .python-version
├── LICENSE
├── README.md
├── pyproject.toml
├── uv.lock
├── mcp_vms.py            # Main server implementation
├── mcp_vms_config.py     # VMS connection configuration
├── vmspy.pyd             # VMS Python library
├── avcodec-61.dll        # FFmpeg libraries
├── avutil-59.dll
├── swresample-5.dll
├── swscale-8.dll

Verified on MseeP

Metadata

Release files for iflow-mcp_jyjune_mcp-vms 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for iflow-mcp_jyjune_mcp-vms 0.1.0
File Size Uploaded
iflow_mcp_jyjune_mcp_vms-0.1.0.tar.gz 156.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for iflow-mcp_jyjune_mcp-vms 0.1.0
File Interpreter ABI Platform
iflow_mcp_jyjune_mcp_vms-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 165.3 kB

Release files / iflow_mcp_jyjune_mcp_vms-0.1.0.tar.gz

Download URL iflow_mcp_jyjune_mcp_vms-0.1.0.tar.gz
Size 156.5 kB
Tags Source
SHA-256 checksum
How to use checksums
47860ecb907b0132854c4d31c0c92514b0a80f6f252ff7a5bcab4ab893f460b4
BLAKE2b-256 checksum
How to use checksums
751c701e3b31ec89539549ff2a1223e501f2c6c0f67bef6ae660d2a476e4cf71
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release files / iflow_mcp_jyjune_mcp_vms-0.1.0-py3-none-any.whl

Download URL iflow_mcp_jyjune_mcp_vms-0.1.0-py3-none-any.whl
Size 8.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
1278d6fccf4e84d5d0f2d6e85d3b686c14088631d700239db904e63ec1c426b2
BLAKE2b-256 checksum
How to use checksums
99a2c39965e7338b95e61e13f0cc91b4b6274636b11067d8429a11a59fca0658
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page