Serverless, read-only pCloud remote MCP server for Cloudflare Workers
Four read-only tools with clear verb-noun naming (pcloud_list_folder, pcloud_read_file, pcloud_search, pcloud_get_file_link). All have descriptions (34 - 50 chars) and input schemas with typed parameters. Tool annotations present (readOnlyHint, idempotentHint). However, descriptions are minimal (below the 50 - 200 char LLM-optimized baseline), parameter descriptions lack detail on constraints/formats, and output schemas are not documented in the visible code. Error handling is implemented (PCloudApiError, PCloudContentLimitError, etc.) but recovery guidance is not visible in tool definitions. Security is strong: no credentials in parameters, rate limiting, and byte budgets enforced server-side.
Get a download link for a pCloud file
List contents of a pCloud folder
Read contents of a pCloud file
Search for files and folders in pCloud
Tool descriptions are 34 - 50 characters, below the LLM-optimized 50 - 200 char baseline. Descriptions lack WHEN to use, prerequisites, or return value hints. E.g., 'List contents of a pCloud folder' does not explain what structure is returned or when to call it before other operations.
Parameter descriptions lack constraint details. 'path' is described as 'Virtual pCloud folder path' but does not specify format, length limits, or allowed characters. 'maxBytes' in pcloud_read_file lacks min/max bounds or default behavior. LLMs cannot infer constraints from names alone.
Output schemas are not documented in tool definitions. Code shows internal types (PCloudMetadata, PCloudFolderEntry) and byte budgets (PCLOUD_JSON_MAX_BYTES, SEARCH_PCLOUD_JSON_MAX_BYTES) but tool registration does not expose what fields agents should expect. LLMs cannot plan downstream calls without knowing response structure.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 54 | 2026-07-28+ | v2 |
Error handling is implemented (PCloudApiError, PCloudContentLimitError, PCloudPathLimitError) but recovery guidance is not visible in tool definitions. Errors should tell LLMs what to do next (e.g., 'Path too long, try a shorter search scope' or 'File too large, use maxBytes parameter').
pcloud_search lacks pagination parameters (limit, offset, cursor). Code shows SEARCH_MAX_SCANNED_ENTRIES=10,000 and SEARCH_MAX_DEPTH=64 but tool does not expose these limits or allow result limiting. Large result sets will blow context windows.