This server presents basic tool definitions with clear names and reasonable descriptions, but suffers from critical gaps in parameter documentation, output schema definition, and error handling guidance. 7 of 8 tools are read-only and lack parameter descriptions. The one write tool (syncthing_scan_folder) has an undocumented optional parameter. No output schemas are documented, forcing LLMs to infer response structure. Error handling is minimal, tools throw raw API errors without recovery guidance. The naming convention is consistently strong (verb_noun_resource pattern), and most descriptions are in the 30-100 character range, but lack actionable context about when to use each tool or what to expect in responses.
Get current connection status for all devices
Get detailed information about a specific file including local and global versions
Get list of errors for a specific folder
Get detailed status of a specific folder including sync state, errors, and byte counts
Get overall Syncthing system status including version, uptime, and system info
List all configured devices with their IDs and connection status
No output schemas documented for any tool. LLMs must infer response structure from tool behavior, risking misinterpretation of available fields for downstream chaining.
syncthing_scan_folder has an optional 'sub' parameter with a description, but the parameter is not marked as non-required in the schema properly. The schema shows 'required: ["folder"]' which is correct, but there is no minLength, maxLength, or pattern constraint documented for the folder or sub parameters to guide LLM input validation.
No error handling guidance. When syncthingApi() throws an error (e.g., 'Syncthing API error: 401 Unauthorized'), the tool returns a raw error message with no recovery path. LLMs cannot determine if the error is retryable, requires user intervention (check API key?), or is fatal.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | F | 47 | 2026-07-28+ | v2 |
| 2026-03-09 | F | 47 | - | v1 |
List all configured folders with their IDs, labels, and paths
Trigger a scan of a folder or subfolder to detect changes
Tools that return lists (syncthing_list_folders, syncthing_list_devices, syncthing_get_folder_errors) do not support pagination. If a Syncthing instance has hundreds of folders or devices, the raw JSON response could exhaust the context window. No limit parameter is offered.
Tool descriptions lack actionable context about when to use each tool or what dependencies exist. For example, syncthing_get_folder_status requires a folder ID but does not hint that syncthing_list_folders should be called first to discover valid folder IDs.
API key is loaded from SYNCTHING_API_KEY environment variable and passed directly in the X-API-Key header. While this avoids exposing the secret as a tool parameter (correct), there is no documentation in the server metadata about the required environment variables or how to set up authentication. A user deploying this server without the env var will see a cryptic exit(1) error.