Synology Chat

Official registry Other

Read channels and posts, find users, send messages and files on any Synology Chat server.

Install

Add this to your client's MCP configuration (Claude Desktop: claude_desktop_config.json; Cursor: .cursor/mcp.json; VS Code and others use the same "mcpServers" shape).

OCI package ghcr.io/louis-lastella/synology-chat-mcp:0.2.0
Claude Code
claude mcp add synology-chat -e 'SYNOLOGY_CHAT_URL=<SYNOLOGY_CHAT_URL>' -e 'SYNOLOGY_CHAT_USER=<SYNOLOGY_CHAT_USER>' -e 'SYNOLOGY_CHAT_PASS=<your synology_chat_pass>' -e 'SYNOLOGY_CHAT_VERIFY_SSL=true' -- docker run -i --rm ghcr.io/louis-lastella/synology-chat-mcp:0.2.0
JSON configuration (Claude Desktop, Cursor, VS Code)
{
    "mcpServers": {
        "synology-chat": {
            "command": "docker",
            "args": [
                "run",
                "-i",
                "--rm",
                "ghcr.io/louis-lastella/synology-chat-mcp:0.2.0"
            ],
            "env": {
                "SYNOLOGY_CHAT_URL": "<SYNOLOGY_CHAT_URL>",
                "SYNOLOGY_CHAT_USER": "<SYNOLOGY_CHAT_USER>",
                "SYNOLOGY_CHAT_PASS": "<your synology_chat_pass>",
                "SYNOLOGY_CHAT_VERIFY_SSL": "true"
            }
        }
    }
}

Environment variables

  • SYNOLOGY_CHAT_URL required Base URL of your Synology Chat server, e.g. https://nas.example.com:5001
  • SYNOLOGY_CHAT_USER required Username of the Synology account (no 2FA)
  • SYNOLOGY_CHAT_PASS required secret Password of the Synology account
  • SYNOLOGY_CHAT_VERIFY_SSL Set to false for self-signed certificates

Documentation

From the project's README on GitHub, refreshed weekly. Links open on GitHub.

Contents
  1. synology-chat-mcp
  2. Tools
  3. Configuration
  4. Install
  5. Notes
  6. Development
  7. License

synology-chat-mcp

MCP server for Synology Chat. Works with any self-hosted Synology Chat instance: list channels, read recent posts, find users, send messages and upload files from any MCP client (Claude Desktop, Claude Code, Hermes, ...).

It logs in as a normal DSM user through the Synology Web API, so it sees exactly what that user sees in Chat (channels and DMs), no bot or webhook setup needed.

Tools

ToolWhat it does
list_channels()Joined channels and DMs (id, name, type, members, unread)
find_user(name_query)Find users by partial username
get_recent_posts(channel_id, limit=20)Most recent messages/files in a channel or DM
dm_channel_for_user(user_id)1:1 DM channel id for a user, or null if none exists yet
send_message(channel_id, message)Post a text message
send_file(channel_id, file_path, message="")Upload a local file, optionally followed by a message

Configuration

All config comes from environment variables, set them in your MCP client config:

VariableRequiredExample
SYNOLOGY_CHAT_URLyeshttps://chat.example.com, https://nas.local:5001, http://192.168.1.10:5000
SYNOLOGY_CHAT_USERyesDSM username
SYNOLOGY_CHAT_PASSyesDSM password
SYNOLOGY_CHAT_VERIFY_SSLnofalse for self-signed certificates (default true)

A URL without scheme means https, without port it uses 443 (https) or 80 (http).

Install

Needs uv. No clone required, uvx runs it straight from GitHub.

Claude Desktop (claude_desktop_config.json):

{
  "mcpServers": {
    "synology-chat": {
      "command": "uvx",
      "args": ["--from", "git+https://github.com/Louis-Lastella/synology-chat-mcp", "synology-chat-mcp"],
      "env": {
        "SYNOLOGY_CHAT_URL": "https://chat.example.com",
        "SYNOLOGY_CHAT_USER": "your-username",
        "SYNOLOGY_CHAT_PASS": "your-password"
      }
    }
  }
}

Claude Code:

claude mcp add synology-chat \
  -e SYNOLOGY_CHAT_URL=https://chat.example.com \
  -e SYNOLOGY_CHAT_USER=your-username \
  -e SYNOLOGY_CHAT_PASS=your-password \
  -- uvx --from git+https://github.com/Louis-Lastella/synology-chat-mcp synology-chat-mcp

Hermes (~/.hermes/config.yaml):

mcp_servers:
  synology-chat:
    command: uvx
    args: [--from, git+https://github.com/Louis-Lastella/synology-chat-mcp, synology-chat-mcp]
    env:
      SYNOLOGY_CHAT_URL: https://chat.example.com
      SYNOLOGY_CHAT_USER: your-username
      SYNOLOGY_CHAT_PASS: your-password

From a local clone instead: git clone, uv sync, then use uv with args --directory /path/to/synology-chat-mcp run synology-chat-mcp.

Docker (no uv needed), image ghcr.io/louis-lastella/synology-chat-mcp:

{
  "mcpServers": {
    "synology-chat": {
      "command": "docker",
      "args": ["run", "-i", "--rm",
               "-e", "SYNOLOGY_CHAT_URL", "-e", "SYNOLOGY_CHAT_USER", "-e", "SYNOLOGY_CHAT_PASS",
               "ghcr.io/louis-lastella/synology-chat-mcp"],
      "env": {
        "SYNOLOGY_CHAT_URL": "https://chat.example.com",
        "SYNOLOGY_CHAT_USER": "your-username",
        "SYNOLOGY_CHAT_PASS": "your-password"
      }
    }
  }
}

Also listed in the official MCP Registry as io.github.Louis-Lastella/synology-chat-mcp.

Notes

  • Accounts with 2-factor authentication are not supported (the Web API wants a fresh OTP per login). Use an account without 2FA.
  • DMs show up with type anonymous, that is Synology's name for 1:1 conversations.
  • find_user only matches the username, not display names.
  • Downloading attachments is not a tool yet. The session is available via synology_chat_mcp._client().session; call GET /webapi/entry.cgi?api=SYNO.Chat.Post.File&method=get&version=2&post_id=<id>&_sid=<sid> with the header X-SYNO-TOKEN: <session.syno_token>.

Development

uv sync
uv run python tests/test_parse_url.py

License

MIT

Frequently asked questions

What is Synology Chat?

Read channels and posts, find users, send messages and files on any Synology Chat server.

How do I install Synology Chat?

It runs on your machine. In Claude Code: claude mcp add synology-chat -e 'SYNOLOGY_CHAT_URL=<SYNOLOGY_CHAT_URL>' -e 'SYNOLOGY_CHAT_USER=<SYNOLOGY_CHAT_USER>' -e 'SYNOLOGY_CHAT_PASS=<your synology_chat_pass>' -e 'SYNOLOGY_CHAT_VERIFY_SSL=true' -- docker run -i --rm ghcr.io/louis-lastella/synology-chat-mcp:0.2.0. For other clients, paste the JSON configuration from this page into their MCP settings.

Does Synology Chat need an API key?

Yes. It expects SYNOLOGY_CHAT_URL, SYNOLOGY_CHAT_USER, SYNOLOGY_CHAT_PASS, which you set in its configuration.

Is Synology Chat open source?

Yes. Its code is on GitHub under the MIT license.

Who maintains Synology Chat?

It is published by Louis-Lastella. AI.tn lists it but does not maintain or endorse it.

From the official MCP Registry. Listing is not an endorsement: review a server's code and permissions before giving it access to your data.