Synology NAS MCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| DSM_URL | No | Base URL of the Synology DSM (must be HTTPS, e.g., https://nas.example.net:5001). | |
| NAS_GID | No | Numerical GID of a DSM user with read access to the shared folder. Do not use root. | |
| NAS_UID | No | Numerical UID of a DSM user with read access to the shared folder. Do not use root. | |
| DSM_PASSWORD | No | DSM service account password. Use single quotes in .env if it contains $ or #. | |
| DSM_USERNAME | No | DSM service account username for monitoring features. | |
| DSM_CA_BUNDLE | No | Container-internal path to a custom CA bundle file for DSM certificate verification (e.g., /certs/ca.pem). | |
| MCP_TRANSPORT | No | Transport protocol. Use 'stdio' for local direct execution; defaults to 'streamable-http'. | streamable-http |
| NAS_DATA_ROOT | No | Path to the shared folder when running in stdio mode (e.g., /path/to/shared-folder). Alternative to NAS_SHARE_PATH for direct executions. | |
| MCP_AUTH_TOKEN | No | Bearer token for HTTP transport. Required for streamable-http. Must be at least 32 visible ASCII characters. | |
| NAS_SHARE_PATH | No | Absolute path to the existing shared folder mounted read-only and exposed to the MCP client (host path). | |
| DSM_PASSWORD_FILE | No | Path to a file containing the DSM password (alternative to DSM_PASSWORD). | |
| MCP_ALLOWED_HOSTS | No | Allowed Host header values when running directly. Defaults to localhost/Docker service name. | localhost |
| NAS_MAX_FILE_BYTES | No | Maximum file size in bytes for reading (default 2 MiB). | 2097152 |
| NAS_MAX_TEXT_CHARS | No | Maximum number of text characters returned from file reads (default 50000). | 50000 |
| MCP_AUTH_TOKEN_FILE | No | Path to a file containing the MCP auth token (alternative to MCP_AUTH_TOKEN). | |
| CONTROL_PLANE_API_KEY | No | OpenAI Platform API key required only for the optional Secure MCP Tunnel (ChatGPT integration). | |
| NAS_ALLOWED_CONTAINERS | No | Comma-separated list of exact container names allowed for container control (e.g., demo-web,media-indexer). | |
| NAS_MAX_SEARCH_ENTRIES | No | Maximum number of entries scanned during a search or directory listing (default 10000). | 10000 |
| CONTROL_PLANE_TUNNEL_ID | No | OpenAI Secure MCP Tunnel ID required only for the optional ChatGPT integration. | |
| NAS_DOWNLOAD_DESTINATION | No | Destination folder for downloads in Download Station 'shared_folder/subfolder' format (e.g., Downloads/MCP). | |
| NAS_ENABLE_DOWNLOAD_ACTIONS | No | Set to 'true' to enable download management tools. Defaults to false. | |
| NAS_ENABLE_CONTAINER_ACTIONS | No | Set to 'true' to enable container control tools. Defaults to false. |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_filesA | List a shared directory using a relative path and bounded pagination. |
| search_filesA | Find files by name inside the shared directory; not a full-text search. |
| read_fileA | Read bounded text from a shared text, PDF or DOCX file. No OCR. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 3 tools
Each tool has a clearly distinct purpose: listing directory contents, searching by filename, and reading file contents. There is no overlap or confusion between the three operations.
All tool names follow the same verb_noun snake_case pattern (list_files, search_files, read_file). The convention is perfectly consistent and predictable.
Three tools is a well-scoped set for a focused read-only file access server. Each tool covers a distinct necessary action and none are redundant.
The server covers reading and locating files, but lacks write/upload, delete, move, or binary file handling. For a NAS-oriented server these are notable gaps, though basic read-only workflows are supported.