Skip to main content
Glama

library

The user's Library on Clousd: every file they want on their phones lives here once (photos, videos, documents, apps) and is used by id. op=list shows it; op=upload adds a local file and returns its id; op=send copies files to phones right away (photos and videos into the gallery as if taken there, documents into Downloads, apks installed). For a task that needs a file, prefer run(files=...) - the file is placed on the phone before the first step.

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

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

Input Schema

NameRequiredDescriptionDefault
opNolist (default) | upload | sendlist
idsNosend: library ids, comma-separated
kindNolist: only this kind - image | video | doc | apk (empty = all)
pathNoupload: a local file to add - photo (.jpg .png .webp .heic), video (.mp4 .mov), document (.pdf .txt .csv .md .json .docx .xlsx .zip) or .apk; photo 25 MB, video 200 MB, document 50 MB, apk 300 MB
devicesNosend: devices to copy the files to (names, labels or numbers)

Output Schema

NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.1/5.0
Behavior4/5

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

Annotations only declare the safety profile (not read-only, not destructive, not idempotent). The description adds real behavioral context beyond that: send places photos and videos into the gallery 'as if taken there', documents into Downloads, and installs apks — meaningful side effects an agent should know about. It does not mention size limits or that send can be repeated with different effects, but the core consequences are disclosed.

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?

Front-loads the resource definition, then the three ops, then the alternative-tool routing. Dense but every clause carries information; only the parenthetical file-type list is somewhat redundant with the schema.

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

Completeness4/5

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

With five optional parameters, full schema coverage and an output schema, the description's job is to explain the op model and the cross-tool routing, which it does. It is sufficiently complete for an agent to choose an op and call it correctly, though it could say more about how ids are obtained across ops.

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

Parameters3/5

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

Schema description coverage is 100%, so each parameter's meaning, formats, size limits and enum values are already documented. The description reinforces that files are referenced by id and that upload returns an id, but adds no syntax or format detail beyond the schema. Baseline 3 applies.

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?

States the specific resource (the user's Clousd Library) and enumerates the three operations with their concrete effects: list shows it, upload adds a local file and returns an id, send copies files to phones. It also distinguishes itself from run(files=...), so an agent can tell the two apart without reading schemas.

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

Usage Guidelines4/5

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

Explicitly routes the agent away from this tool when a task simply needs a file present: 'prefer run(files=...)' when the file should be on the phone before the first step. Per-op usage is implied by the op descriptions, but there is no guidance on when to list vs. send versus other siblings like apps or devices.

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.