Skip to main content
Glama

klyo games: publish HTML5 browser games

Upload a package from disk (no public URL needed)

klyo_upload_package

The way to release a game from a file on disk, with no tunnel and without exposing an unreleased game publicly. Returns three things at once: (1) paczki_w_poczekalni: packages already on the account that have not become a game yet, each with its upload_id; (2) bilet: a token valid for one hour ONLY for sending files, which you put in the Authorization: Bearer header (it opens no tool; you do not have it in your configuration, which is why you get it here); (3) a recipe: if you have a shell (curl), send the file with the ticket in two HTTP requests; if you do not, ask the owner to upload the ZIP in the studio at https://dev.klyo.pl/ (it lands in the waiting room, nothing is published) and call this tool again: the package will appear in paczki_w_poczekalni. Pass the returned upload_id to klyo_publish_game or klyo_update_game instead of zip_url. Do not save the ticket in project files.

Examples: • How do I send a ZIP from my disk to klyo? • Publish this game, the file is on my computer • The owner uploaded a package in the studio, which one should I publish? • I don't want to expose the game publicly, how do I upload the package?

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.8/5.0
Behavior5/5

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

Annotations are minimal (only four boolean hints), so the description carries the burden — and it delivers richly: the ticket is valid for one hour ONLY, opens no tool, must not be saved in project files, uploads land in a waiting room with nothing published, and the tool must be called again after manual upload. This far exceeds what the annotations disclose.

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

Conciseness4/5

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

The description is front-loaded with the core purpose and well-structured via a numbered three-part return list and a clear recipe. It is long (~230 words) and contains some parenthetical asides that could be tightened (e.g., 'it opens no tool; you do not have it in your configuration, which is why you get it here'), and the four examples slightly repeat stated use cases — but nearly every sentence earns its place.

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

Completeness5/5

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

With no output schema, the description must explain return values, and it does comprehensively: all three returned items, the ticket's purpose and expiry, two execution paths (curl vs. owner upload), the re-call flow, and integration with sibling tools. The full lifecycle from disk file to publishable upload_id is covered with no critical 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?

With 0 parameters, the baseline is 4 and there is nothing for the description to explain about schema fields. It does add useful invocation semantics by specifying where the returned ticket goes (Authorization: Bearer header) and what upload_id is for, which is context the empty schema cannot convey.

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

Purpose5/5

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

The opening sentence states a specific verb and resource: "release a game from a file on disk, with no tunnel and without exposing an unreleased game publicly." The title reinforces the differentiator ('no public URL needed'), and the description names klyo_publish_game/klyo_update_game as the next step, making clear this is the disk-upload entry point rather than a publish/update tool.

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

Usage Guidelines5/5

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

The description explicitly routes the agent: pass the returned upload_id to klyo_publish_game or klyo_update_game instead of zip_url, and call the tool again after the owner uploads manually. The four examples map directly to trigger scenarios (disk file, owner uploaded in studio, avoid public exposure), leaving no ambiguity about when to choose this tool.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.