SYNOLOGY/MCP.
Install
◆ v0.4.5 — self-hosted · LAN-only by default

Your NAS.
Now an agent.

A Model Context Protocol server that exposes Synology Drive, Spreadsheet, MailPlus, and Calendar as 37 typed tools for Claude, Cursor, and any MCP client. No third-party middleman. No data leaves your network.

37
MCP tools
4
Modules
311
Unit tests
0
Cloud hops
session · stdio● live
$ claude mcp add synology-office \
-- node ./dist/index.js
# 37 tools registered
> drive_search_files({
query: "Q3 strategy",
folder: "/team-shared"
})
→ 4 results · 12ms
NAS → Agent
DRIVESPREADSHEETMAILPLUSCALENDARDRIVESPREADSHEETMAILPLUSCALENDARDRIVESPREADSHEETMAILPLUSCALENDARDRIVESPREADSHEETMAILPLUSCALENDAR
◆ Four modules. 37 tools.

Every Synology
surface. One protocol.

Each module wraps the official Synology Office Suite REST API directly — no scraping, no shims, no third-party broker. Your agent calls a typed tool; the tool calls your NAS.

◆ 01
11 tools

Drive.

List, search, upload, label, share. The full file system, agent-native.

$ drive_search_files("Q3")
→ Q3-strategy.osheetspreadsheet
Roadmap-2026.pdfpdf
team-shared/folder
meeting-notes.odocdoc
◆ 02
13 tools

Spreadsheet.

Read sheets, write cells, append rows. Batch updates with style retention.

ABC
1RegionQ2Q3
2NA142k168k
3EU88k104k
4APAC52k71k
◆ 03
6 tools

MailPlus.

Read inboxes. Send, move, mark. Triage by intent, not by hand.

INBOX · 2 new
Ops teamQ3 budget review
Alex ChenRe: deployment window
GitHubPR #142 merged
◆ 04
7 tools

Calendar.

Create events. Update times. Read across calendars. Plan tomorrow tonight.

WK 18 · MAY 2026
M
T
W
T
F
◆ 02 — How it moves

One direction.
From agent to disk.

Stateless tool calls over JSON-RPC 2.0. The MCP server holds the session — your client doesn't manage tokens, retries, or the Synology auth dance.

CLIENTJSON-RPC

MCP Client

Claude Desktop, Claude Code, Cursor, GoClaw, or any MCP-compatible agent. Speaks JSON-RPC 2.0 over stdio or SSE.

stdio · sse →
SERVERNode 22+

synology-office-mcp

Tools, resources, prompts. AuthManager + TokenCache. Path-guard, origin-guard, log redaction. Single ESM binary.

HTTPS · sid cookie →
TARGETDSM 7.2.2

Your NAS

DSM 7.2.2+. Drive 3.5.2+. Office 3.6.0+. MailPlus 3.3.1+. Calendar 2.5.3+. HTTPS by default.

Stateless.

Each call independent. Session lives inside the server.

Read-heavy.

Writes require explicit confirm:true at tool boundary.

Single binary.

tsup → dist/. node dist/index.js. No runtime deps to install.

Zod-validated.

Every env var, every tool input. Fail-fast at startup.

The principles

Three rules. No exceptions.

◆ 01

Self-hosted.

Your NAS, your data, your network. No SaaS broker between your agent and your bytes.

◆ 02

Read-heavy. Safe writes.

Destructive operations refuse to run without an explicit confirm flag at the tool boundary.

◆ 03

No third-party middleman.

Every Synology call goes through the official REST API. No reverse-engineered shims.

◆ 03 — Security model

LAN-only.
By default.

No telemetry. No outbound calls beyond your NAS. The server starts in the safest configuration; everything else is an explicit choice you make and we log.

01

TLS verification on by default.

Self-signed bypass is opt-in and logged loudly at startup.

02

Credentials never in URLs.

POST with form body. Session id forwarded via Cookie header only.

03

SSE binds loopback.

Server refuses to start on non-loopback without MCP_AUTH_TOKEN set.

04

Path traversal blocked.

Every Drive path passes through path-guard at the tool boundary.

05

Logs redact secrets.

Passwords, tokens, sids never reach stdout. Configurable redactor.

06

Destructive ops require confirm.

Delete, move, batch_update — every write demands { confirm: true }.

◆ 04 — Install

60 seconds.
One command.

Pick a client. Paste the snippet. Restart the agent. Your NAS is now a tool surface.

Node 22+ESM-only. Strict TypeScript build.
pnpm 9+For source builds; not needed for npm install.
DSM 7.2.2 build 72806+Verify in Control Panel → Info Center.
terminal · npm
              
# 1. Install the binary
npm install -g synology-office-mcp
# 2. Set NAS credentials
export SYNO_HOST=192.168.1.100
export SYNO_USERNAME=your_user
export SYNO_PASSWORD=your_pass
# 3. Start
synology-mcp
Spreadsheet module needs the official synology/spreadsheet-api Docker container running on your NAS.Docs →

Move your
NAS forward.

MIT licensed. Open source. Self-hosted from the first byte to the last.