Official Model Context Protocol (MCP) server for Sign Inspire Cloud Digital Signage
Server has 4 tools with basic schemas and descriptions, but significant gaps prevent higher scores. All tools have descriptions (10-80 chars, mostly adequate) and input schemas with type definitions. However, parameter descriptions are sparse or missing entirely. list_locations and list_media lack any parameter descriptions (empty properties). create_campaign has good parameter coverage but missing output schema documentation. No error recovery guidance, no pagination support for list operations, and no tool annotations (readOnlyHint/destructiveHint). Naming is clear and verb-based. Overall structure is functional but falls short of production-grade quality.
Create a new digital signage campaign and publish it to specified screens.
Get real-time playback and online status of a specific screen.
List all digital signage locations and their current status.
List all available media assets in the Sign Inspire library.
list_locations and list_media have empty input schemas (no properties defined) and lack pagination support. Large result sets will blow context windows. No limit, offset, or cursor parameters.
No output schemas documented for any tool. LLMs cannot plan downstream calls or extract required fields (e.g., location_id from list_locations to pass to create_campaign). Responses are raw JSON dumps.
Error handling returns raw error messages without recovery guidance. No distinction between retryable vs. fatal errors. Example: 'Error executing tool: ...' gives LLM no actionable next step.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 54 | 2026-07-28+ | v2 |
create_campaign lacks date validation and format guidance. start_date and end_date are described as 'ISO 8601' but no validation, no error message if format is wrong, no guidance on timezone handling.
No tool annotations (readOnlyHint, destructiveHint, idempotentHint). create_campaign is destructive (publishes to screens) but unmarked. Agents cannot distinguish safe vs. risky operations.