A Model Context Protocol server for seamless AI integration with University of Toronto's ITS Private Cloud Virtual Server Service
What is Model Context Protocol?
The Model Context Protocol (MCP) is an open standard that enables AI assistants to securely connect to external data sources and tools. Think of it as a universal translator that allows AI models to:
Access Real-time Data: Connect to live systems and databases
Execute Actions: Perform operations like creating snapshots or managing VMs
Maintain Context: Keep track of resources and relationships across conversations
Ensure Security: Authenticate and authorize access to sensitive systems
With MCP, your AI assistant becomes a powerful interface to your cloud infrastructure, capable of understanding complex queries like "Show me the most expensive VMs this month and suggest cost optimizations" or "Create a snapshot of vm-server before the maintenance window."
See it in action
Getting Started
📋Prerequisites
Python 3.10 or higher
ITS Private Cloud VSS API access token
MCP-compatible AI client (Claude Desktop, etc.)
⚡Installation
Using vss-cli
Upgrade to version
2025.6.0
brew update && brew upgrade vss-cli
Configure the
vss-cli
with:vss-cli configure mk
Run
vss-cli mcp install
Using uvx
Install
uv
from Astral or the GitHub READMEInstall Python using
uv python install 3.10
Run with
uvx mcp-vss
Using pip
Install
python
3.13 withbrew
or any other method:brew install python@3.13
Create a
venv
withpython3 -m venv .venv && source .venv/bin/activate && python3 -m pip install --upgrade pip
Install with
pip install mcp-vss
⚙️Configuration
Add the server to your MCP client configuration:
{ "mcpServers": { "its-private-cloud": { "command": "/full/path/to/python", "args": ["-m", "mcp_server_vss"], "env": { "MCP_VSS_API_TOKEN": "your-api-token-here" } } } }
Workflows
🖥️Virtual Machine Management
VM Discovery: Find VMs by name, ID, or properties
Health Monitoring: Check VM status, performance, and resource utilization
Snapshot Management: Create point-in-time backups before changes
Power Control: Start, stop, restart, or suspend virtual machines
Console Access: Get emergency console links for troubleshooting
💰Cost Analysis & Optimization
Billing Analysis: Review invoices and identify cost drivers
Resource Rightsizing: Find overprovisioned or idle resources
Trend Analysis: Track spending patterns over time
Optimization Reports: Get actionable recommendations to reduce costs
🔍Performance Monitoring
Real-time Metrics: Monitor CPU, memory, disk, and network usage
Trend Analysis: Identify performance patterns and bottlenecks
Capacity Planning: Forecast resource needs based on historical data
Alerting: Get notifications about performance issues
🛠️Infrastructure Operations
Backup Analysis: Monitor UTORrecover backup sessions and data usage
Network Management: View available networks and configurations
OS Catalog: Browse supported operating systems for deployments
Domain Management: Monitor compute clusters and resource allocation
🎯Troubleshooting & Support
Diagnostic Workflows: Automated troubleshooting guides
Issue Resolution: Step-by-step problem-solving assistance
Performance Tuning: Optimization recommendations based on metrics
Change Management: Safe deployment practices with snapshot integration
Available Tools
🖥️Virtual Machine Tools
Tool | Description |
---|---|
| Retrieve detailed VM information by ID, name, or UUID |
| List all snapshots for a virtual machine |
| Get CPU, memory, disk, and network metrics |
| Generate console access URLs for emergency access |
| Create point-in-time VM snapshots with memory options |
| Control VM power state (start, stop, restart, suspend) |
| Manage CPU and Memory. |
| Get VM disk layout and configuration |
| Create new virtual disks for VMs |
| Expand virtual disk capacity (cannot shrink) |
| Remove virtual disks from VMs (up to 10 at once) |
| Move disks between SCSI controllers (VM must be powered off) |
💰Billing & Cost Management Tools
Tool | Description |
---|---|
| List all billing accounts and clients |
| Get detailed billing account information |
| Retrieve invoice summaries for cost analysis |
| Get detailed invoice breakdown and line items |
| View FIS payment information and cost centers |
| Update billing payment details and cost centers |
🔒Backup & Data Management Tools
Tool | Description |
---|---|
| Analyze UTORrecover backup sessions and data usage |
Available Prompts
📊Performance Analysis
Prompt | Description |
---|---|
| Comprehensive performance analysis with optimization recommendations |
| Generate diagnostic guides for specific VM problems |
💸Cost & Financial Analysis
Prompt | Description |
---|---|
| Detailed cost analysis with ROI calculations and savings opportunities |
| Backup strategy analysis and cost optimization for UTORrecover |
Available Resources
🏗️Infrastructure Resources
Resource | Description |
---|---|
| Complete virtual machine inventory (up to 200 VMs) |
| Detailed information for specific virtual machines |
| VMs protected by UTORrecover backup service |
| Compute domains and cluster information |
| Available network configurations and VLANs |
| Supported operating system catalog |
💼Billing Resources
Resource | Description |
---|---|
| Complete billing client directory with account details |
This is a beta release. Features and APIs may change. Please test thoroughly.