# playlists_get_focused_previous

Get the previous item in the focused playlist

Agent View of the PolicyLayer registry record for `playlists_get_focused_previous`. HTML page: https://policylayer.com/tools/io-github-alxpark-propresenter-mcp/playlists-get-focused-previous

## Facts

- Tool: `playlists_get_focused_previous`
- Server: Propresenter (`@alxpark/propresenter-mcp`) — https://policylayer.com/tools/io-github-alxpark-propresenter-mcp.md
- Install: `npx -y @alxpark/propresenter-mcp`
- Homepage: https://github.com/alxpark/propresenter-mcp
- Risk category: Read (Low risk)
- Registry record: grade F, identity unverified
- Server rate-limited: no
- Parameters: 0
- Recommended policy verdict: Allowed

## Example call (MCP tools/call, JSON-RPC 2.0)

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "playlists_get_focused_previous",
    "arguments": {}
  }
}
```

## Why playlists_get_focused_previous is rated Low

This tool retrieves information about the previous item in a currently focused playlist. It performs no state changes, no code execution, no data modification, and no destructive operations. The operation is purely informational and carries minimal risk if invoked by an AI agent, as it only reads presentation state without side effects.

From the tool's own definition: "Tool name 'playlists_get_focused_previous' and description 'Get the previous item in the focused playlist' indicate retrieval of data with no modification. The 'get' verb and read-only semantics confirm this is a query operation."

## Use case

AI agents call playlists_get_focused_previous to retrieve information from Propresenter without modifying anything. It is typically the context-gathering step in research, monitoring, and reporting workflows, before the agent takes action elsewhere.

## Recommended policy (PolicyLayer)

Verdict: **Allowed**. Enforced by the PolicyLayer MCP gateway (https://policylayer.com/mcp-gateway) before a call reaches Propresenter:

```json
{
  "version": "1",
  "default": "deny",
  "tools": {
    "playlists_get_focused_previous": {}
  }
}
```

## Other tools on Propresenter (176)

- `clear_layer` — Destructive — https://policylayer.com/tools/io-github-alxpark-propresenter-mcp/clear-layer.md
- `messages_delete` — Destructive — https://policylayer.com/tools/io-github-alxpark-propresenter-mcp/messages-delete.md
- `props_clear` — Destructive — https://policylayer.com/tools/io-github-alxpark-propresenter-mcp/props-clear.md
- `props_delete` — Destructive — https://policylayer.com/tools/io-github-alxpark-propresenter-mcp/props-delete.md
- `props_delete_collection` — Destructive — https://policylayer.com/tools/io-github-alxpark-propresenter-mcp/props-delete-collection.md
- `stage_delete_layout` — Destructive — https://policylayer.com/tools/io-github-alxpark-propresenter-mcp/stage-delete-layout.md
- `announcement_focus_active` — Execute — https://policylayer.com/tools/io-github-alxpark-propresenter-mcp/announcement-focus-active.md
- `announcement_timeline_operation` — Execute — https://policylayer.com/tools/io-github-alxpark-propresenter-mcp/announcement-timeline-operation.md
- `announcement_trigger_active` — Execute — https://policylayer.com/tools/io-github-alxpark-propresenter-mcp/announcement-trigger-active.md
- `announcement_trigger_cue` — Execute — https://policylayer.com/tools/io-github-alxpark-propresenter-mcp/announcement-trigger-cue.md
- `announcement_trigger_next` — Execute — https://policylayer.com/tools/io-github-alxpark-propresenter-mcp/announcement-trigger-next.md
- `announcement_trigger_previous` — Execute — https://policylayer.com/tools/io-github-alxpark-propresenter-mcp/announcement-trigger-previous.md
- `audio_focus_active_playlist` — Execute — https://policylayer.com/tools/io-github-alxpark-propresenter-mcp/audio-focus-active-playlist.md
- `audio_focus_next_playlist` — Execute — https://policylayer.com/tools/io-github-alxpark-propresenter-mcp/audio-focus-next-playlist.md
- `audio_focus_playlist` — Execute — https://policylayer.com/tools/io-github-alxpark-propresenter-mcp/audio-focus-playlist.md
- `audio_focus_previous_playlist` — Execute — https://policylayer.com/tools/io-github-alxpark-propresenter-mcp/audio-focus-previous-playlist.md
- `audio_trigger_active_next` — Execute — https://policylayer.com/tools/io-github-alxpark-propresenter-mcp/audio-trigger-active-next.md
- `audio_trigger_active_playlist` — Execute — https://policylayer.com/tools/io-github-alxpark-propresenter-mcp/audio-trigger-active-playlist.md
- `audio_trigger_active_previous` — Execute — https://policylayer.com/tools/io-github-alxpark-propresenter-mcp/audio-trigger-active-previous.md
- `audio_trigger_focused_next` — Execute — https://policylayer.com/tools/io-github-alxpark-propresenter-mcp/audio-trigger-focused-next.md
- `audio_trigger_focused_playlist` — Execute — https://policylayer.com/tools/io-github-alxpark-propresenter-mcp/audio-trigger-focused-playlist.md
- `audio_trigger_focused_previous` — Execute — https://policylayer.com/tools/io-github-alxpark-propresenter-mcp/audio-trigger-focused-previous.md
- `audio_trigger_playlist` — Execute — https://policylayer.com/tools/io-github-alxpark-propresenter-mcp/audio-trigger-playlist.md
- `audio_trigger_playlist_item` — Execute — https://policylayer.com/tools/io-github-alxpark-propresenter-mcp/audio-trigger-playlist-item.md
- `capture_operation` — Execute — https://policylayer.com/tools/io-github-alxpark-propresenter-mcp/capture-operation.md
- `clear_trigger_group` — Execute — https://policylayer.com/tools/io-github-alxpark-propresenter-mcp/clear-trigger-group.md
- `find_my_mouse` — Execute — https://policylayer.com/tools/io-github-alxpark-propresenter-mcp/find-my-mouse.md
- `focus_active_presentation` — Execute — https://policylayer.com/tools/io-github-alxpark-propresenter-mcp/focus-active-presentation.md
- `focus_next_presentation` — Execute — https://policylayer.com/tools/io-github-alxpark-propresenter-mcp/focus-next-presentation.md
- `focus_presentation` — Execute — https://policylayer.com/tools/io-github-alxpark-propresenter-mcp/focus-presentation.md
- …and 146 more: https://policylayer.com/tools/io-github-alxpark-propresenter-mcp.md

## For agents

This record is a snapshot. Live verdicts and the full registry:

- Check every server in your MCP config at once: `npx -y policylayer stack`
- Vet a server before you add it: install the mcp-precheck skill — `npx skills add https://policylayer.com` (skill text: https://policylayer.com/skill.md)
- Query the registry over MCP: endpoint `https://api.policylayer.com/mcp` — tools `check_mcp_server`, `check_mcp_stack`, `check_tool`, `search_registry`, `get_change_events`

---

Source: the PolicyLayer MCP registry — one continuously verified record per MCP server. Full record: https://policylayer.com/registry?q=io-github-alxpark-propresenter-mcp · API: https://policylayer.com/registry/api · Policy library: https://policylayer.com/policies/io-github-alxpark-propresenter-mcp
