Skip to main content
Glama
easyonthesauce

MCP Family Kiosk Display

MCP Family Kiosk Display

A polished, animated kiosk display that can be controlled by an LLM through MCP tool calls.

What this provides

  • MCP server over stdio with kiosk control tools

  • HTTP kiosk display endpoint at http://localhost:8787

  • Real-time updates via WebSocket (/ws)

  • Large readable typography and smooth animated transitions

  • Support for mixed scene elements: text, images, and videos

  • Overlay announcements for urgent family updates

  • Auto-advancing playlist mode for unattended display rotation

Related MCP server: openai-mcp

MCP integrations

The server supports two MCP transports:

  1. Stdio (default) — for LLM clients that use stdio-based MCP

  2. HTTP streaming — for tools like n8n, Zapier, or custom integrations

Stdio transport

Standard MCP over stdin/stdout. Used by most LLM clients as a subprocess.

HTTP streaming transport

call MCP tools from n8n or any HTTP client.

  • GET /mcp/tools — list all available tools

  • POST /mcp/call — invoke a tool (JSON response)

  • POST /mcp/stream — invoke a tool (Server-Sent Events response)

Example: n8n HTTP POST to /mcp/call

{
  "tool": "kiosk_show_chores",
  "arguments": {
    "dueToday": ["Dishes", "Homework", "Vacuum living room"],
    "done": ["Breakfast prep", "Make beds"],
    "points": ["Jane: 12 pts", "Max: 8 pts"],
    "theme": "party"
  }
}

Response:

{
  "ok": true,
  "message": "Chore dashboard rendered",
  "state": { /* full kiosk state */ }
}

Run locally

  1. Install dependencies

  2. Start the server

  3. Open kiosk display in browser

The server process hosts both:

  • MCP tool interface (stdio)

  • Display web server (http://localhost:8787)

Example scene payload for kiosk_set_playlist

Use this shape from your LLM client:

  • title, subtitle

  • theme: aurora | sunrise | ocean | midnight | party

  • transition: slide | fade | zoom

  • autoAdvance, autoAdvanceSec

  • scenes[]

    • title, subtitle, accent, durationSec

    • elements[]

      • type: text with heading, body

      • type: image with url, optional caption

      • type: video with url, optional caption, and booleans muted, autoplay, loop

High-level family workflow tools

For most home-assistant use cases, prefer these tools over raw playlist JSON:

  • kiosk_show_calendar

    • Inputs: dayLabel, events[], now, next, highlight

    • events[] accepts either simple strings or objects with when, time, label

  • kiosk_show_chores

    • Inputs: dueToday[], done[], points[]

  • kiosk_show_meal_plan

    • Inputs: breakfast, lunch, dinner, prep[], shopping[]

  • kiosk_show_school_run

    • Inputs: leaveBy, weather, checklist[], reminders[]

  • kiosk_announce

    • Inputs: message (required), details[], emoji, showOverlay

Each of the tools above also supports optional visual controls:

  • title, subtitle

  • theme: aurora | sunrise | ocean | midnight | party

  • transition: slide | fade | zoom

  • autoAdvance, autoAdvanceSec

MCP client wiring

Use mcp.client.example.json as a reference for your MCP host configuration.

Customization ideas

  • Pipe in family calendar data from Home Assistant

  • Add weather and transit cards as text elements

  • Display chore boards and rotating reminders

  • Build holiday themes by switching theme and scene media

Notes

  • Keep media URLs publicly accessible by the kiosk browser.

  • For local/private media, serve files from public/ and reference relative paths.

Available Tools

13 tools
kiosk_announceB

Show an announcement scene and optional large overlay message

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It mentions 'Show' which implies a display action, but lacks details on permissions, side effects (e.g., if it interrupts other scenes), or response behavior. This is inadequate for a tool with potential behavioral implications.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that directly states the tool's function without unnecessary words. It's front-loaded and appropriately sized for its purpose, earning the highest score for conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has 0 parameters and no output schema, the description is minimally complete but lacks depth. It doesn't explain what an 'announcement scene' entails or how the overlay integrates, leaving gaps in understanding the tool's full context and behavior.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 0 parameters with 100% coverage, so no parameter documentation is needed. The description adds value by mentioning 'optional large overlay message', which hints at possible implicit parameters or behavior, justifying a score above the baseline of 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Show') and the target ('announcement scene and optional large overlay message'), making the purpose understandable. However, it doesn't explicitly differentiate from siblings like 'kiosk_set_overlay' or 'kiosk_show_scene', which might have overlapping functionality, so it misses the highest score.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. With siblings like 'kiosk_set_overlay' and 'kiosk_show_scene', there's no indication of context, prerequisites, or exclusions, leaving usage ambiguous.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

kiosk_get_statusB

Get the current kiosk display state and current scene

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It states the tool retrieves information ('Get'), implying a read-only operation, but doesn't clarify permissions, rate limits, response format, or potential side effects. This is a significant gap for a tool with zero annotation coverage.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that directly states the tool's purpose without any fluff or redundancy. It's front-loaded with the core action and resource, making it easy to parse and understand quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (0 parameters, no output schema, no annotations), the description is adequate but incomplete. It covers the basic purpose but lacks behavioral context (e.g., what 'display state' and 'scene' entail, response format), which is needed for full understanding despite the low complexity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has 0 parameters, and schema description coverage is 100%, so there's no need for parameter details in the description. The description appropriately avoids discussing parameters, earning a baseline score of 4 for not adding unnecessary information.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose with a specific verb ('Get') and resource ('current kiosk display state and current scene'), making it immediately understandable. It distinguishes itself from siblings by focusing on status retrieval rather than actions like 'announce', 'next_scene', or 'show_scene', though it doesn't explicitly contrast with them.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites, ideal contexts, or exclusions, leaving the agent to infer usage based on the tool name and sibling functions alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

kiosk_next_sceneB

Advance to the next scene

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It states 'Advance to the next scene', implying a state change, but doesn't disclose behavioral traits such as whether this requires specific permissions, what happens if no next scene exists, or if it's reversible. This leaves gaps in understanding the tool's effects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, direct sentence with no wasted words. It's front-loaded and efficiently conveys the core action, making it easy to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no annotations, no output schema, and a mutation tool (implied by 'advance'), the description is incomplete. It lacks details on behavior, error conditions, or what 'next scene' means in context, which is insufficient for safe and effective use by an AI agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has 0 parameters, and schema description coverage is 100%, so there are no parameters to document. The description doesn't need to add parameter semantics, but it could mention implicit context (e.g., current scene). Baseline is 4 for zero parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Advance to the next scene' clearly states the action (advance) and target (scene), making the purpose understandable. However, it doesn't explicitly differentiate from sibling tools like 'kiosk_previous_scene' or 'kiosk_show_scene', which would require mentioning directionality or context.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives. For example, it doesn't specify if this is for sequential navigation in a playlist or general scene progression, nor does it mention prerequisites like needing an active scene or kiosk state.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

kiosk_previous_sceneB

Go back to the previous scene

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden but offers minimal behavioral disclosure. It states the action but doesn't describe what 'previous scene' means (e.g., navigation history, playlist order), whether it's reversible, if it requires specific kiosk states, or what happens on success/failure. This leaves significant gaps for a mutation tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence with zero wasted words. It's front-loaded with the core action and target, making it immediately understandable. Every word earns its place without redundancy or unnecessary elaboration.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's mutation nature (implied by 'Go back'), lack of annotations, and no output schema, the description is incomplete. It doesn't explain behavioral aspects like side effects, error conditions, or return values, which are critical for safe invocation. The simplicity of the tool doesn't compensate for these gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has 0 parameters with 100% schema description coverage, so the schema fully documents the absence of inputs. The description doesn't need to add parameter details, and it correctly implies no required inputs by not mentioning any. This meets the baseline for parameterless tools.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Go back') and target ('to the previous scene'), providing a specific verb+resource combination. It distinguishes from obvious siblings like 'kiosk_next_scene' by indicating opposite directionality, though it doesn't explicitly differentiate from all siblings like 'kiosk_show_scene' or 'kiosk_reset_defaults'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., whether a scene must be active), exclusions, or relationships to siblings like 'kiosk_next_scene' or 'kiosk_show_scene' for navigation. Usage is implied through the action but not explicitly contextualized.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

kiosk_reset_defaultsB

Reset the display to defaults and starter scenes

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It states the tool resets the display, implying a destructive mutation, but doesn't disclose behavioral traits like whether it requires admin permissions, if changes are irreversible, what 'defaults' entail, or potential side effects (e.g., clearing custom settings). This leaves significant gaps for a mutation tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence with zero waste. It's front-loaded with the core action ('reset'), and every word ('display', 'defaults', 'starter scenes') adds necessary context without fluff. This is optimally concise for a no-parameter tool.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (a destructive reset with no annotations or output schema), the description is incomplete. It lacks details on what 'defaults' include, how 'starter scenes' are defined, the response format, or error conditions. For a mutation tool with zero annotation coverage, this minimal description is insufficient.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With 0 parameters and 100% schema description coverage, the baseline is 4. The description adds no parameter details, which is appropriate since there are none to document. It efficiently avoids redundancy with the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('reset') and target ('display'), specifying what gets reset ('to defaults and starter scenes'). It distinguishes from siblings like kiosk_set_theme or kiosk_set_playlist by focusing on restoration rather than configuration. However, it doesn't explicitly contrast with all siblings, such as kiosk_get_status, which is informational.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., after misconfiguration), exclusions (e.g., not for temporary changes), or direct alternatives among siblings like kiosk_set_theme for custom themes. The context is implied but not explicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

kiosk_set_overlayB

Show or hide a large overlay message on top of the display

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It states the action but lacks details on permissions needed, whether the overlay is persistent or temporary, if it affects other kiosk functions, or what happens on errors. This is insufficient for a mutation tool with zero annotation coverage.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that directly states the tool's function without any fluff. It's front-loaded and wastes no words, making it easy to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool likely performs a mutation (showing/hiding an overlay) with no annotations and no output schema, the description is incomplete. It doesn't cover behavioral aspects like side effects, error handling, or return values, which are crucial for safe invocation in a kiosk system with multiple display tools.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 0 parameters with 100% coverage, so no parameter documentation is needed. The description implies the tool might toggle or set overlay visibility, but since there are no parameters, it doesn't add semantic details beyond the schema. Baseline 4 is appropriate for zero-parameter tools.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('show or hide') and the target resource ('a large overlay message on top of the display'), making the purpose immediately understandable. However, it doesn't explicitly differentiate this tool from its siblings (like 'kiosk_announce' or 'kiosk_show_scene'), which might also involve displaying content on the kiosk.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention scenarios like urgent notifications, maintenance messages, or how it differs from other display-related tools in the sibling list, leaving the agent without context for selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

kiosk_set_playlistB

Replace the full display playlist with one or more scenes (supports text, image, and video elements)

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It states the tool 'replaces' the playlist, implying a destructive mutation, but doesn't clarify if this requires specific permissions, whether the replacement is immediate or scheduled, if there are rate limits, or what happens to the previous playlist. For a mutation tool with zero annotation coverage, this is a significant gap in transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that front-loads the core action ('Replace the full display playlist') and adds necessary detail ('with one or more scenes') and supported element types. Every word earns its place, with no redundancy or unnecessary elaboration, making it highly concise and well-structured.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (a mutation with no parameters) and lack of annotations or output schema, the description is minimally adequate. It explains what the tool does and the types of elements supported, but doesn't cover behavioral aspects like permissions, effects, or error handling. For a mutation tool, this leaves gaps that could hinder an agent's correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 0 parameters with 100% coverage, so no parameter documentation is needed. The description adds value by specifying that scenes can include 'text, image, and video elements', which provides semantic context beyond the empty schema. However, it doesn't detail how to structure these elements (e.g., formats or ordering), keeping it from a perfect score.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Replace the full display playlist') and the resource ('with one or more scenes'), specifying the types of elements supported (text, image, and video). It distinguishes from siblings like 'kiosk_show_scene' (which likely shows a single scene) by indicating it replaces the entire playlist. However, it doesn't explicitly contrast with all siblings, such as 'kiosk_set_overlay' or 'kiosk_set_theme', which may have overlapping functionality.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention when to choose this over 'kiosk_show_scene' for single scenes, 'kiosk_set_overlay' for overlays, or 'kiosk_set_theme' for theme changes. There are no explicit when/when-not instructions or prerequisites, leaving usage context implied at best.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

kiosk_set_themeB

Change the active visual theme and transition

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It states 'Change,' implying a mutation, but doesn't disclose behavioral traits such as whether this requires specific permissions, if changes are reversible, or if there are rate limits. This is a significant gap for a mutation tool with zero annotation coverage.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence with zero waste. It's front-loaded with the core action and target, making it easy to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given that this is a mutation tool with no annotations, no output schema, and no parameters, the description is incomplete. It lacks details on what 'theme and transition' entail, potential side effects, or expected outcomes, making it inadequate for safe and effective use by an agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 0 parameters with 100% coverage, so no parameter documentation is needed. The description doesn't add param info, but that's acceptable here; baseline is 4 as it doesn't need to compensate for any gaps, though it doesn't exceed expectations.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Change') and the target ('active visual theme and transition'), making the purpose understandable. However, it doesn't differentiate from siblings like kiosk_set_overlay or kiosk_set_playlist, which also modify visual aspects, so it's not fully specific to sibling context.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives. For example, it doesn't explain if this is for aesthetic changes only, or how it differs from kiosk_set_overlay or kiosk_show_scene, leaving the agent to guess based on tool names alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

kiosk_show_calendarB

Render a ready-made family calendar dashboard from simple event data

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It mentions 'render' and 'dashboard,' implying a display operation, but doesn't disclose behavioral traits such as whether this is read-only, if it modifies state, what happens to existing displays, or any performance considerations. For a tool with zero annotation coverage, this is a significant gap.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that front-loads the key action ('Render') and purpose. Every word earns its place, with no wasted text, making it highly concise and well-structured.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (display rendering with no parameters) and lack of annotations/output schema, the description is minimally adequate. It states what the tool does but lacks details on behavior, output format, or integration with sibling tools. For a zero-param tool, it meets basic needs but could be more informative.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 0 parameters with 100% coverage, so no parameter documentation is needed. The description adds value by explaining the source ('simple event data'), which isn't in the schema. Baseline is 4 for zero parameters, as it appropriately focuses on the tool's function without redundant param info.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Render a ready-made family calendar dashboard from simple event data.' It specifies the verb ('render'), resource ('family calendar dashboard'), and source ('simple event data'). However, it doesn't explicitly differentiate from sibling tools like 'kiosk_show_chores' or 'kiosk_show_meal_plan' beyond the calendar focus.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives. The description doesn't mention prerequisites, context for 'simple event data,' or when to choose this over other display tools like 'kiosk_show_scene.' Usage is implied by the name but not explicitly stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

kiosk_show_choresB

Render a chore dashboard with due tasks, completed items, and points

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It states 'render a chore dashboard', implying a display or output operation, but doesn't disclose behavioral traits like whether this is read-only, if it requires specific permissions, what format the output takes, or if it has side effects. For a tool with zero annotation coverage, this is inadequate.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that front-loads the key action ('render') and resource ('chore dashboard'), followed by specific content details. Every word earns its place with no waste, making it highly concise and well-structured.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has 0 parameters, no annotations, and no output schema, the description is minimally complete. It states what the tool does but lacks behavioral context, usage guidelines, or output details. For a simple display tool, this might be adequate, but it doesn't fully compensate for the missing structured data.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has 0 parameters, and schema description coverage is 100%. The description doesn't need to add parameter semantics, so a baseline of 4 is appropriate. It efficiently describes the tool's function without unnecessary parameter details.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'render' and the resource 'chore dashboard' with specific content elements: 'due tasks, completed items, and points'. It distinguishes from siblings like 'kiosk_show_calendar' or 'kiosk_show_meal_plan' by focusing on chores. However, it doesn't explicitly contrast with all siblings, so it's not a perfect 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites, context, or exclusions, leaving the agent to infer usage based on the name and description alone. This is a significant gap for a tool in a set with many similar 'show' functions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

kiosk_show_meal_planB

Render a meal planner scene with prep and shopping details

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It mentions 'Render a meal planner scene', implying a display or visualization action, but does not specify whether this is read-only, requires specific permissions, affects system state, or has side effects like triggering updates. For a tool with zero annotation coverage, this is a significant gap in transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that directly states the tool's function without any wasted words. It is front-loaded with the core action ('Render a meal planner scene') and adds clarifying details ('with prep and shopping details') concisely. Every part of the sentence contributes to understanding the tool's purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (0 parameters, no output schema, no annotations), the description is adequate but has clear gaps. It explains what the tool does but lacks behavioral context (e.g., read/write nature, side effects) and usage guidelines. For a simple rendering tool, this might be minimally viable, but it doesn't fully compensate for the absence of annotations or output schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has 0 parameters, and schema description coverage is 100%, meaning there are no parameters to document. The description does not need to add parameter semantics beyond the schema, so it meets the baseline expectation. No additional value is required, and it avoids unnecessary parameter details.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose with a specific verb ('Render') and resource ('meal planner scene'), and mentions additional details ('prep and shopping details'). It distinguishes itself from siblings like 'kiosk_show_calendar' or 'kiosk_show_chores' by focusing on meal planning. However, it doesn't explicitly differentiate from 'kiosk_show_scene', which might be a more general sibling, leaving some ambiguity.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. With siblings like 'kiosk_show_scene' (which might show generic scenes) and 'kiosk_next_scene' (which might cycle through scenes), there is no indication of specific contexts, prerequisites, or exclusions for using this meal planner tool. This lack of guidance could lead to confusion in tool selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

kiosk_show_sceneB

Jump to a specific scene index in the current playlist

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden but only states the action without behavioral details. It doesn't disclose if this requires specific permissions, affects playback state, has side effects, or what happens on error (e.g., invalid index), which is inadequate for a mutation tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, clear sentence with no wasted words, front-loading the key action. It's appropriately sized for a simple tool with no parameters, making it highly efficient and easy to parse.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has no parameters and no output schema, the description is minimal but covers the basic action. However, as a mutation tool with no annotations, it lacks details on behavior, error handling, or output, making it only adequate but with clear gaps in context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 0 parameters with 100% coverage, so no parameter documentation is needed. The description appropriately doesn't mention parameters, aligning with the schema, and thus meets expectations without redundancy, though it could hint at implied inputs like scene index.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Jump to') and resource ('a specific scene index in the current playlist'), making the purpose understandable. However, it doesn't explicitly differentiate from siblings like 'kiosk_next_scene' or 'kiosk_previous_scene', which also navigate scenes, so it lacks sibling distinction for a perfect score.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives. For example, it doesn't specify if this is for direct scene selection versus sequential navigation with siblings, or mention prerequisites like needing a playlist to be set first, leaving usage unclear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

kiosk_show_school_runB

Render a school-run readiness screen with leave time and checklist

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It states the tool renders a screen but doesn't describe what 'render' entails (e.g., display changes, side effects, permissions needed, or response format). For a tool with zero annotation coverage, this leaves significant gaps in understanding its behavior and implications.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that front-loads the key action and content. It wastes no words and directly communicates the tool's function. Every part of the sentence earns its place by specifying what is rendered and what it includes.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (no parameters, no output schema, no annotations), the description is adequate but has clear gaps. It explains what the tool does but lacks behavioral context (e.g., what 'render' means operationally) and usage guidelines. For a tool with no structured fields to rely on, this leaves the agent with incomplete information to use it effectively.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, and schema description coverage is 100% (since there are no parameters to describe). The description doesn't need to compensate for any parameter gaps, and it appropriately doesn't discuss parameters. Baseline for zero parameters is 4, as the description focuses on the tool's purpose without unnecessary parameter details.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Render a school-run readiness screen with leave time and checklist.' It specifies the action ('Render'), the target ('school-run readiness screen'), and key content elements ('leave time and checklist'). However, it doesn't explicitly differentiate from siblings like 'kiosk_show_scene' or 'kiosk_show_calendar' beyond the content focus.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites, appropriate contexts, or when other sibling tools (like 'kiosk_show_scene' or 'kiosk_show_calendar') might be more suitable. The agent must infer usage from the tool name and description alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 13 tool updatesv1.0.0
    • First observedkiosk_announce
    • First observedkiosk_get_status
    • First observedkiosk_next_scene
    • First observedkiosk_previous_scene
    • First observedkiosk_reset_defaults
    • First observedkiosk_set_overlay
    • First observedkiosk_set_playlist
    • First observedkiosk_set_theme
    • First observedkiosk_show_calendar
    • First observedkiosk_show_chores
    • First observedkiosk_show_meal_plan
    • First observedkiosk_show_scene
    • First observedkiosk_show_school_run

TDQS

A3.7/5.0
Disambiguation5/5

Every tool has a clearly distinct purpose with no overlap. For example, kiosk_announce is for announcements, kiosk_show_calendar is for calendar displays, and kiosk_next_scene is for scene navigation, making it easy for an agent to select the right tool without confusion.

Naming Consistency5/5

All tool names follow a consistent 'kiosk_' prefix with descriptive verb_noun patterns, such as kiosk_set_overlay and kiosk_show_scene. This uniformity enhances readability and predictability across the toolset.

Tool Count5/5

With 13 tools, the server is well-scoped for managing a family kiosk display, covering scene control, overlays, playlists, themes, and specific dashboard views. Each tool serves a unique function, justifying its inclusion without bloat.

Completeness5/5

The toolset provides complete coverage for the domain, including scene navigation (next, previous, show), configuration (set_playlist, set_theme, reset_defaults), status retrieval (get_status), and specialized dashboards (calendar, chores, meal_plan, school_run), leaving no obvious gaps for agent workflows.

Maintenance

ActivityInactive
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    A comprehensive MCP server enabling LLMs to execute commands, manage files, interact with Figma, search the web, generate images, and more, extending their capabilities beyond text generation.
    Apache 2.0
  • F
    license
    Not graded
    quality
    D
    maintenance
    A versatile MCP server that enables natural language software development tasks using multiple LLM providers (OpenAI, Anthropic) with real-time visualization, cost management, and a comprehensive tool suite.
    -
  • A
    license
    Not graded
    quality
    B
    maintenance
    A production-ready MCP server that gives an LLM agent standalone-equivalent control over a Mineflayer Minecraft bot — movement, mining, crafting, inventory, combat, containers, chat, and much more — exposed as 110 strongly-typed tools across 23 groups, with full bot lifecycle management and dual (poll + push) event streaming.
    95
    2
    MIT

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/easyonthesauce/mcpDisplay'

If you have feedback or need assistance with the MCP directory API, please join our Discord server