Slide MCP Server
About
Integrates with the Slide API for device and infrastructure management.
Details
- Author
- amcchord
- Downloads
- 157
- Categories
- Other, Cloud Service, Infrastructure, API
Jump to
- Device management with pagination and filtering
- Agent management: list, create, pair, update
- Backup and snapshot management
- File restore and image export workflows
- Virtual machine lifecycle management
- User, alert, account, and client management
Setting up with Highlight
This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:
- Download and install Highlight from highlightai.com/download
- Navigate to the plugins tab and select "Add Custom Plugin"
-
Configure the plugin with the settings below
Plugin Name
Slide MCP ServerCommand (node, npx, python, etc.)Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.
- Enable "Start Automatically" if you want the plugin to start when Highlight launches
From the repository
Three options are available: use the hosted web server at www.slide.recipes/mcp (zero installation), run the Go binary for best performance, or install the TypeScript/Node.js version via NPX or Docker. For quick setup with Claude Desktop, refer to the installation sections in the README.
Claude Desktop / Cursor
Paste into your MCP client config file to install this server.
{
"mcpServers": {
"slide mcp server": {
"slideMCP": {
"command": "docker",
"args": [
"build",
"-t",
"mcp/slide:latest",
"-f",
"Dockerfile",
"."
]
}
}
}
}
McpServers
{
"slideMCP": {
"command": "docker",
"args": [
"build",
"-t",
"mcp/slide:latest",
"-f",
"Dockerfile",
"."
]
}
}
Slide MCP Server
An MCP server implementation that integrates with the Slide API, providing device and agent management capabilities.
π Three Ways to Use Slide MCP
Option 1: Hosted Web Server (Easiest) π π
- Zero Installation: Usewww.slide.recipes/mcp directly
- Always Updated: Latest version automatically available
- Multi-User: Secure per-user API key authentication
- High Availability: Monitored production infrastructure
Option 2: Go Binary (Best Performance) β‘
- Single binary: No dependencies, just download and run - 60x faster startup: ~50ms vs 2-3 seconds - 5x less memory: 10-20MB vs 50-100MB - Cross-platform: Linux, macOS, Windows binariesOption 3: TypeScript/Node.js Version π¦
- Original implementation with full feature set - Requires Node.js runtime and NPM installation - Available via NPX or Docker---
For quick setup instructions with Claude Desktop, see the installation sections below.
Features
- Device Management: List all devices with pagination and filtering options
- Agent Management: List, create, pair, and update agents
- Backup Management: List, retrieve, and initiate backups
- Snapshot Management: List and retrieve snapshots with detailed information
- Detailed Information: Get comprehensive details about each device and agent including status, storage, and network information
- User Management: List all users and retrieve detailed user information
- Alert Management: List, retrieve, and resolve system alerts
- Account Management: List accounts, view account details, and update alert email settings
- Client Management: List, create, update, and delete clients
- Flexible Filtering: Filter devices and agents by client ID, device ID, and other parameters
- Pagination Support: Control results per page with offset and limit parameters
Tools
Device Tools
- slide_list_devices
- List all devices with pagination and filtering
- Inputs:
- limit (number, optional): Results per page (max 50)
- offset (number, optional): Pagination offset
- client_id (string, optional): Filter by client ID
- sort_asc (boolean, optional): Sort in ascending order
Agent Tools
- slide_list_agents
- List all agents with pagination and filtering
- Inputs:
- limit (number, optional): Results per page (max 50)
- offset (number, optional): Pagination offset
- device_id (string, optional): Filter by device ID
- client_id (string, optional): Filter by client ID
- sort_asc (boolean, optional): Sort in ascending order
- sort_by (string, optional): Sort by field (id, hostname, name)
- slide_get_agent
- Get detailed information about a specific agent
- Inputs:
- agent_id (string, required): ID of the agent to retrieve
- slide_create_agent
- Create an agent for auto-pair installation
- Inputs:
- display_name (string, required): Display name for the agent
- device_id (string, required): ID of the device to associate with the agent
- slide_pair_agent
- Pair an agent with a device using a pair code
- Inputs:
- pair_code (string, required): Pair code generated during agent creation
- device_id (string, required): ID of the device to pair with
- slide_update_agent
- Update an agent's properties
- Inputs:
- agent_id (string, required): ID of the agent to update
- display_name (string, required): New display name for the agent
Backup Tools
- slide_list_backups
- List all backups with pagination and filtering
- Inputs:
- limit (number, optional): Results per page (max 50)
- offset (number, optional): Pagination offset
- agent_id (string, optional): Filter by agent ID
- device_id (string, optional): Filter by device ID
- snapshot_id (string, optional): Filter by snapshot ID
- sort_asc (boolean, optional): Sort in ascending order
- sort_by (string, optional): Sort by field (id, start_time)
- slide_get_backup
- Get detailed information about a specific backup
- Inputs:
- backup_id (string, required): ID of the backup to retrieve
- slide_start_backup
- Start a backup for a specific agent
- Inputs:
- agent_id (string, required): ID of the agent to backup
Snapshot Tools
- slide_list_snapshots
- List all snapshots with pagination and filtering
- Inputs:
- limit (number, optional): Results per page (max 50)
- offset (number, optional): Pagination offset
- agent_id (string, optional): Filter by agent ID
- snapshot_location (string, optional): Filter by snapshot location (exists_local, exists_cloud, exists_deleted, etc.)
- sort_asc (boolean, optional): Sort in ascending order
- sort_by (string, optional): Sort by field (backup_start_time, backup_end_time, created)
- slide_get_snapshot
- Get detailed information about a specific snapshot
- Inputs:
- snapshot_id (string, required): ID of the snapshot to retrieve
File Restore Tools
File restores provide access to files within a snapshot. The typical workflow is:
1. Create a file restore from a snapshot using slide_create_file_restore
2. Browse the restored files using slide_browse_file_restore
3. When finished, delete the file restore using slide_delete_file_restore
- slide_list_file_restores
- List all file restores with pagination and filtering
- Inputs:
- limit (number, optional): Results per page (max 50)
- offset (number, optional): Pagination offset
- sort_asc (boolean, optional): Sort in ascending order
- sort_by (string, optional): Sort by field (id)
- slide_get_file_restore
- Get detailed information about a specific file restore
- Inputs:
- file_restore_id (string, required): ID of the file restore to retrieve
- slide_create_file_restore
- Create a file restore from a snapshot
- Inputs:
- snapshot_id (string, required): ID of the snapshot to restore from
- device_id (string, required): ID of the device to restore to
- Note: You must create a file restore before you can browse its contents
- slide_delete_file_restore
- Delete a file restore
- Inputs:
- file_restore_id (string, required): ID of the file restore to delete
- slide_browse_file_restore
- Browse the contents of a file restore
- Inputs:
- file_restore_id (string, required): ID of the file restore to browse
- path (string, required): Path to browse (e.g., 'C' for root of C drive)
- limit (number, optional): Results per page (max 50)
- offset (number, optional): Pagination offset
- Note: Requires a file restore to be created first using slide_create_file_restore
Image Export Tools
Image exports allow you to export snapshots as disk images for use outside of Slide. The typical workflow is:
1. Create an image export from a snapshot using slide_create_image_export
2. Browse the available disk images using slide_browse_image_export
3. When finished, delete the image export using slide_delete_image_export
- slide_list_image_exports
- List all image exports with pagination and filtering
- Inputs:
- limit (number, optional): Results per page (max 50)
- offset (number, optional): Pagination offset
- sort_asc (boolean, optional): Sort in ascending order
- sort_by (string, optional): Sort by field (id)
- slide_get_image_export
- Get detailed information about a specific image export
- Inputs:
- image_export_id (string, required): ID of the image export to retrieve
- slide_create_image_export
- Create an image export from a snapshot
- Inputs:
- snapshot_id (string, required): ID of the snapshot to export from
- device_id (string, required): ID of the device to export to
- image_type (string, required): Image type to export (vhdx, vhdx-dynamic, vhd, raw)
- boot_mods (array of strings, optional): Optional boot modifications to apply (e.g., 'passwordless_admin_user')
- Note: You must create an image export before you can browse its contents
- slide_delete_image_export
- Delete an image export
- Inputs:
- image_export_id (string, required): ID of the image export to delete
- slide_browse_image_export
- Browse the contents of an image export (the disk images available for download)
- Inputs:
- image_export_id (string, required): ID of the image export to browse
- limit (number, optional): Results per page (max 50)
- offset (number, optional): Pagination offset
- Note: Requires an image export to be created first using slide_create_image_export
Virtual Machine Tools
Virtual machines allow you to run a snapshot as a virtualized computer on a Slide device. The typical workflow is:
1. Create a virtual machine from a snapshot using slide_create_virtual_machine
2. Control the VM using slide_update_virtual_machine to start, stop, or modify resources
3. Access the VM using the vnc_viewer_url provided in the response metadata (a direct link to a browser-based VNC console)
4. When finished, delete the virtual machine using slide_delete_virtual_machine
- slide_list_virtual_machines
- List all virtual machines with pagination and filtering
- Inputs:
- limit (number, optional): Results per page (max 50)
- offset (number, optional): Pagination offset
- sort_asc (boolean, optional): Sort in ascending order
- sort_by (string, optional): Sort by field (created)
- Note: Each virtual machine in the response includes a _vnc_viewer_url property for direct browser-based console access
- slide_get_virtual_machine
- Get detailed information about a specific virtual machine
- Inputs:
- virt_id (string, required): ID of the virtual machine to retrieve
- Note: The response includes a vnc_viewer_url in the metadata for easy browser-based access to the VM console
- slide_create_virtual_machine
- Create a virtual machine from a snapshot
- Inputs:
- snapshot_id (string, required): ID of the snapshot to restore from
- device_id (string, required): ID of the device to restore to
- cpu_count (number, optional): Number of CPU cores (1-16)
- memory_in_mb (number, optional): Amount of memory in MB (1024-12288)
- disk_bus (string, optional): Disk bus type (sata or virtio)
- network_model (string, optional): Network adapter model (hypervisor_default, e1000, rtl8139)
- network_type (string, optional): Network type (network, network-isolated, bridge, network-id)
- network_source (string, optional): Network ID when network_type is network-id
- boot_mods (array of strings, optional): Optional boot modifications to apply (e.g., 'passwordless_admin_user')
- Note: For most virtual machines, 8192MB of RAM is recommended for optimal performance
- Note: The response includes a vnc_viewer_url in the metadata for easy browser-based access to the VM console
- slide_update_virtual_machine
- Update a virtual machine's properties
- Inputs:
- virt_id (string, required): ID of the virtual machine to update
- state (string, optional): New state of the VM (running, stopped, paused)
- expires_at (string, optional): Expiration time in ISO 8601 format (e.g., 2024-08-23T01:25:08Z)
- memory_in_mb (number, optional): New amount of memory in MB (1024-12288)
- cpu_count (number, optional): New number of CPU cores (1-16)
- slide_delete_virtual_machine
- Delete a virtual machine
- Inputs:
- virt_id (string, required): ID of the virtual machine to delete
User Tools
- slide_list_users
- List all users with pagination and filtering
- Inputs:
- limit (number, optional): Results per page (max 50)
- offset (number, optional): Pagination offset
- sort_asc (boolean, optional): Sort in ascending order
- sort_by (string, optional): Sort by field (id)
- slide_get_user
- Get detailed information about a specific user
- Inputs:
- user_id (string, required): ID of the user to retrieve
Alert Tools
- slide_list_alerts
- List all alerts with pagination and filtering
- Inputs:
- limit (number, optional): Results per page (max 50)
- offset (number, optional): Pagination offset
- device_id (string, optional): Filter by device ID
- agent_id (string, optional): Filter by agent ID
- resolved (boolean, optional): Filter by resolved status
- sort_asc (boolean, optional): Sort in ascending order
- sort_by (string, optional): Sort by field (created)
- slide_get_alert
- Get detailed information about a specific alert
- Inputs:
- alert_id (string, required): ID of the alert to retrieve
- slide_update_alert
- Update an alert's properties (primarily used to resolve alerts)
- Inputs:
- alert_id (string, required): ID of the alert to update
- resolved (boolean, required): Set to true to resolve the alert
Account Tools
- slide_list_accounts
- List all accounts with pagination and filtering
- Inputs:
- limit (number, optional): Results per page (max 50)
- offset (number, optional): Pagination offset
- sort_asc (boolean, optional): Sort in ascending order
- sort_by (string, optional): Sort by field (name)
- slide_get_account
- Get detailed information about a specific account
- Inputs:
- account_id (string, required): ID of the account to retrieve
- slide_update_account
- Update an account's properties (primarily alert emails)
- Inputs:
- account_id (string, required): ID of the account to update
- alert_emails (array of strings, required): List of email addresses to send alert emails to
Client Tools
- slide_list_clients
- List all clients with pagination and filtering
- Inputs:
- limit (number, optional): Results per page (max 50)
- offset (number, optional): Pagination offset
- sort_asc (boolean, optional): Sort in ascending order
- sort_by (string, optional): Sort by field (id)
- slide_get_client
- Get detailed information about a specific client
- Inputs:
- client_id (string, required): ID of the client to retrieve
- slide_create_client
- Create a new client
- Inputs:
- name (string, required): Name of the client
- comments (string, optional): Comments about the client
- slide_update_client
- Update a client's properties
- Inputs:
- client_id (string, required): ID of the client to update
- name (string, optional): New name for the client
- comments (string, optional): New comments about the client
- slide_delete_client
- Delete a client
- Inputs:
- client_id (string, required): ID of the client to delete
π¦ Installation & Configuration
Getting an API Key
1. Log in to your Slide account
2. Navigate to your account settings
3. Generate your API key from the API section
π― Quick Setup with Claude Desktop
Option 1: Go Binary (Recommended)
Download Pre-built Binary
```bashSign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.




