What the MCP server is

The CLI's operations, exposed as tools an assistant can call, with hints that tell a client which ones are destructive.

Updated

screenly mcp starts a server on stdio that exposes the Screenly API as a set of tools. An assistant connected to it can list screens, upload content, build playlists, manage labels, and publish an app.

It is part of the CLI, not a separate download. Every current build includes it.

Behaviour hints

Every tool is annotated with readOnlyHint, destructiveHint, idempotentHint, and openWorldHint.

That matters more than it sounds. A client can tell screen_list from playlist_delete without parsing English, and prompt for confirmation before a destructive call rather than after it. If your client supports confirmations, these are what drive them.

Roughly half the tools are read-only. The rest are split between creating things and modifying or deleting them.

What it is good at

  • Questions about a fleet. “Which screens in the Frankfurt plant are offline?” is a screen_list call and some filtering, answered without anyone writing a query.
  • Bulk work through labels. “Find every screen labeled Warehouse and assign the Safety Rotation playlist” is label_list then label_link_playlist, which is the shape where an assistant saves real time because the alternative is a lot of clicking.
  • Publishing something you just made. edge_app_publish_from_html turns a page an assistant generated into a Screenly app on your screens. See Publishing HTML as an app.

What it is not

It is not a separate permission system. The server holds no access of its own and does exactly what your token allows, in one workspace. See Permissions.

Was this page helpful?

Thanks. Glad it helped.

Thanks. That tells us where to look next.

Type to search the documentation