Install
$ agentstack add mcp-cast-hub-mcp-server ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.1 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.1. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
CastHub MCP Server
> Model Context Protocol server for digital signage. Manage TV fleets, presentations, schedules, and emergency alerts from Claude, Cursor, ChatGPT, or any MCP client.
[](https://www.npmjs.com/package/@cast-hub/mcp) [](LICENSE)
What this is
CastHub MCP Server lets AI assistants directly control digital signage networks. Instead of clicking through a dashboard, you tell Claude to update the lobby TV, push an emergency alert to all stores, or schedule next week's promotional content. The server exposes 30+ tools covering devices, presentations, schedules, alerts, and groups across the CastHub platform.
Why this exists
Digital signage management is repetitive, multi-step work that maps cleanly to natural language. Several signage platforms (Fugo, Revel Digital, Screenly) have shipped MCP support over the last year. CastHub MCP differentiates on hosted endpoint architecture (no local install required for the basic path), a governance layer with preview-confirm-rollback for safe agent use, and native Amazon Signage Stick integration.
Two ways to connect
Option A: Hosted endpoint (recommended)
No installation required. Add the CastHub MCP server to your Claude Desktop, Cursor, or other MCP client config:
{
"mcpServers": {
"casthub": {
"url": "https://api.cast-hub.com/mcp",
"auth": {
"type": "bearer",
"token": "YOUR_CASTHUB_API_KEY"
}
}
}
}
Generate your API key at dashboard.cast-hub.com.
Option B: Install the SDK locally
For MCP clients that require a local stdio process:
npm install -g @cast-hub/mcp
Then configure your client:
{
"mcpServers": {
"casthub": {
"command": "casthub-mcp",
"env": {
"CASTHUB_API_KEY": "your-api-key-here"
}
}
}
}
The SDK forwards MCP protocol calls to the CastHub hosted endpoint. All tool execution happens server-side; the SDK is a transport shim.
Available Tools (30+)
Devices
| Tool name | Description | |---|---| | getdevices | List all devices grouped by device group | | updatedevice | Update a device's name | | deletedevice | Delete a device by ID | | changedevicegroup | Move a device to a different group | | issuedevicecommand | Send a remote command to an Amazon Signage Stick | | getdevicecommands | List recent remote commands and their status | | createdevicecommandschedule | Create a recurring command plan for a device group | | getdevicecommandschedules | List command plans for a device group | | toggledevicecommandschedule | Enable or disable a command plan | | deletedevicecommand_schedule | Delete a command plan |
Device groups
| Tool name | Description | |---|---| | createdevicegroup | Create a new device group | | updatedevicegroup | Update a device group's title | | deletedevicegroup | Delete a device group |
Presentations
| Tool name | Description | |---|---| | getpresentations | List all presentations | | getpresentation | Get a specific presentation with all slides | | createpresentation | Create a new presentation | | createpresentationwithcontent | Create a presentation with slides in one step | | updatepresentation | Update presentation properties | | deletepresentation | Delete a presentation | | assignpresentation | Assign a presentation to a specific device group | | assignpresentationtodefault | Assign a presentation to the default group | | registerslideimageupload | Step 1 of 3 for uploading an image slide | | acknowledgeslideimageupload | Step 3 of 3 for uploading an image slide | | registerslidevideoupload | Step 1 of 3 for uploading a video slide | | acknowledgeslidevideoupload | Step 3 of 3 for uploading a video slide |
Schedules
| Tool name | Description | |---|---| | getschedules | List all schedules | | getlinearschedule | Get a Simple Schedule with all time entries | | getweeklyschedule | Get a Weekly Schedule with all time slots | | assignschedule | Assign a schedule to a device group | | removeschedule | Remove the schedule from a device group | | deleteschedule | Delete a schedule |
Alerts
| Tool name | Description | |---|---| | assignalertpresentation | Set the alert presentation for a specific device group | | assignalertpresentationtodefault | Set the alert presentation for the default group | | removealertpresentation | Remove the alert presentation from a group | | startallalerts | Start alerts on all device groups | | startgroupalert | Start an alert on a specific group | | starttextalert | Start a text alert on all device groups | | starttextalertforgroup | Start a text alert on a specific group | | stopallalerts | Stop alerts on all groups | | stopgroupalert | Stop an alert on a specific group |
Account and utility
| Tool name | Description | |---|---| | whoami | Check current login status | | getuserinfo | Get user profile and subscription details | | getdashboard | Get a comprehensive dashboard overview | | getcurrentutctime | Returns the current UTC timestamp |
How CastHub MCP compares
| Capability | CastHub MCP | Screenly MCP | Revel Digital MCP | Fugo MCP | |---|---|---|---|---| | MCP server available | Yes | Yes | Yes | Yes | | Hosted endpoint (no local CLI install) | Yes | No (CLI-based) | Yes | Yes | | Governance layer (preview, confirm, rollback) | Yes | No | No | No | | Amazon Signage Stick native support | Yes | No | Partial | No | | Flat-rate pricing | Yes | Per-screen | Per-screen | Per-screen | | Open-source player option | Roadmap | Yes (Pi via Anthias) | No | No |
Example usage
Update content for a specific group of screens
Prompt: "Push the new winter sale presentation to all 12 store screens for next week"
Tools called: get_presentations, assign_presentation, assign_schedule
Trigger an emergency alert
Prompt: "Start a fire drill alert across the warehouse group right now"
Tools called: start_text_alert_for_group
Audit fleet health
Prompt: "Show me all devices that have not checked in for over 24 hours"
Tools called: get_devices (filtered client-side)
More walkthroughs in [examples/](./examples).
Documentation
License
MIT. See [LICENSE](LICENSE).
Contributing
Issues and pull requests welcome at github.com/Cast-Hub/mcp-server/issues. For commercial questions or partnership inquiries, contact [info@cast-hub.com](mailto:info@cast-hub.com).
Source & license
This open-source MCP server is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: Cast-Hub
- Source: Cast-Hub/mcp-server
- License: MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.1 Imported from the upstream source.