Synapse RMCP
ai.dinglebearPublished by dinglebear.aiv1.0.0Updated Oct 24, 2026
Host, Docker, Compose, SSH, logs, ZFS, and file operations over MCP and CLI.
The publisher's own server: RMCP
Overview
Synapse RMCP is a local MCP server that lets an assistant inspect and manage Docker, Compose, SSH hosts, logs, ZFS and files through two action-dispatched tools
- What you can do
- Manage Docker daemons, images, networks, volumes and container lifecycle, including logs, stats and in-container exec via the flux tool's docker and container actions, plus host inspection (status, resources, services, mounts, ports, diagnostics). Manage Docker Compose projects: list, status, up, down, restart, recreate, logs, build, pull. Inspect SSH and local hosts with scout: list configured nodes, read files and directory trees, find files, list processes, disk usage, compare files. Run allowlisted read commands and multi-host emit, and transfer files between hosts within configured roots. Read ZFS pools, datasets and snapshots, and retrieve syslog, journal, dmesg and auth logs. Fetch an
- When to use it
- Use it when an assistant should help operate a homelab or server fleet: checking container and Compose state, reading logs and host resources, inspecting ZFS, or running a small set of allowlisted read commands over SSH. It suits operators who already have SSH access and Docker configured and want read-first diagnostics with gated writes.
- Requirements
- Runs locally over stdio, typically via npx with the npm launcher, which downloads the binary from GitHub Releases. Needs Node.js for the launcher, Docker CLI/Compose and Python 3 for some operations, and OpenSSH access and known_hosts for remote hosts. Host topology comes from SYNAPSE_HOSTS_CONFIG, SYNAPSE_CONFIG_FILE or the SSH config; optional SYNAPSE_HOME, SYNAPSE_RMCP_REPO, SYNAPSE_RMCP_VERSION and SYNAPSE_RMCP_RELEASE_BASE_URL tune paths and downloads. Mounted HTTP mode uses SYNAPSE_MCP_*_H
Installation
In SourceWeft
- Open Synapse RMCP in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Other MCP clients
Follow the launch instructions in the repository.
README
synapse-rmcp
Host, Docker, Compose, SSH, logs, ZFS, and file operations over MCP and CLI.
Synapse is a full-parity Rust port of synapse-mcp, built with the rmcp framework.
The server exposes two MCP tools (flux and scout) plus equivalent CLI
commands, covering all 59 production actions from the original TypeScript server.
Contents
- Naming
- Capabilities And Boundaries
- Install
- Quickstart
- Client Configuration
- Plugin Packages
- Runtime Surfaces
- MCP Tool Reference
- CLI Reference
- Authentication
- Safety And Trust Model
- Distribution Contract
- Verification
- Deployment
- Troubleshooting
- Tools and Actions
- Known Parity Gaps
- Configuration
- Run
- Architecture
- Development
- Documentation
- Related Servers
- License
Naming
The repository is synapse-rmcp, the Rust crate is synapse, the MCP server
identity is synapse, and the installed binary is synapse. The npm launcher
package is synapse-rmcp.
Across most of the RMCP family, naming follows
repo=<service>-rmcp, npm=<service>-rmcp, and CLI=r<service>. Synapse is an
exception because it is a Rust port of the older TypeScript synapse-mcp
project and keeps the operator-facing synapse binary.
Capabilities And Boundaries
Synapse provides local Docker, Compose, host, SSH, log, ZFS, and file-operation workflows through two MCP tools and the equivalent CLI:
fluxmanages Docker infrastructure, containers, Compose projects, and host inspection.scouthandles SSH/local host inspection, safe file reads, allowlisted command execution, bounded descriptor-confined file transfer, ZFS introspection, and log retrieval.- REST exists only as a compatibility shim for a subset of actions.
- The web surface is a lightweight static admin shell, not a full dashboard.
Not for: arbitrary shell access, unaudited remote mutation, or bypassing host SSH trust. Destructive Docker/Compose/exec/file-transfer actions require explicit host targets and confirmation policy.
MCP callers never provide credentials, tokens, keys, or secrets as action arguments. Tokens, OAuth settings, host topology, SSH trust, and allowlists live in server-side configuration or the local SSH environment.
Install
Use the npm launcher for stdio MCP or CLI access without a manual binary install:
For a permanent command:
The npm package downloads the synapse binary from GitHub Releases during
postinstall, keeping the release tag aligned with
packages/synapse-rmcp/package.json.
From source:
The production image includes Python 3 plus the official Docker CLI/Compose
plugin because Scout's remote descriptor wrappers and Flux Compose operations
invoke those runtime tools. The image does not contain a Docker daemon; Flux
uses the mounted socket or SSH-forwarded remote socket. Persistent appdata lives
at ~/.synapse on the host and /data in the container.
Quickstart
The first-screen 30-second path is:
Then configure an MCP client with stdio:
Start with a read-only call:
Client Configuration
stdio is preferred for local MCP clients:
Streamable HTTP uses /mcp on the configured host and port:
Plugin Packages
plugins/synapse/ ships Claude Code, Codex, and Gemini CLI manifests that all
point at the same HTTP MCP endpoint and the same shared skill.
These packages contain no lifecycle hooks. Connecting to a server that is
already running needs no setup — the manifests substitute your server_url and
api_token directly. If this machine also runs the server, bootstrap it once
by hand:
Export the relevant SYNAPSE_* variables (or write them to ~/.synapse/.env)
first; plugins/README.md maps each plugin option to its variable. Re-run
synapse setup install after a plugin update.
Runtime Surfaces
MCP Tool Reference
Synapse exposes two MCP tools:
flux: Docker daemon, container, host, and Compose operations.scout: SSH/local host inspection, filesystem reads, allowlisted exec, multi-host emit, file beam, ZFS, and logs.
Both tools use an action-dispatched JSON shape:
The detailed action tables below are curated README reference material. The generated runtime MCP schema and the Rust action definitions are the source of truth for the live tool contract.
CLI Reference
Common commands:
Authentication
Mounted HTTP supports bearer and Google OAuth modes. Loopback stdio/local dev can run without mounted HTTP auth. Important variables:
See Configuration and docs/CONFIG.md for the full auth
matrix.
Safety And Trust Model
Synapse separates read and write scopes (synapse:read, synapse:write) and
uses confirmation gates for destructive operations. SYNAPSE_MCP_ALLOW_DESTRUCTIVE
can skip prompts only in loopback-safe contexts. Host protocol is authoritative
and defaults to SSH when omitted; local execution requires the explicit built-in
local host or protocol: "local". SSH host trust is delegated to OpenSSH
known-hosts behavior, and command execution uses execvp/argv semantics without
shell interpolation. scout beam enforces both endpoints' configured read roots,
blocks sensitive and symlinked paths, and caps each transfer at 64 MiB.
scout exec and scout emit accept only these 18 typed commands
(ALLOWED_READ_COMMANDS in src/synapse/command_policy.rs):
cat, head, tail, grep, rg, ls, tree, wc, uniq, diff, stat,
file, du, df, pwd, hostname, uptime, whoami
git is deliberately excluded, as are shells, interpreters, network clients, and
mutating tools (EXEC_DENYLIST). There is no find or sort in the allowlist —
use the dedicated scout find action for filesystem search. Per-host custom
commands may be enabled via execAllowlist, but receive a zero-argument policy
until a typed argument policy is registered.
Distribution Contract
The source of truth for release identity is the version shared by Cargo.toml,
.release-please-manifest.json, packages/synapse-rmcp/package.json, release
artifacts, and server.json.
Distribution/version invariants:
- The npm package downloads the matching GitHub Release binary.
- The installed binary remains
synapse. server.jsonmust point atghcr.io/dinglebear-ai/synapse:<version>.- Plugin manifests stay versionless where marketplaces derive identity from git state.
- Generated docs and schemas must come from source-controlled generation inputs; curated README/docs should point at source-of-truth files for details.
Verification
Deployment
For a persistent mounted HTTP server:
Use bearer or OAuth before exposing the endpoint beyond loopback. Production
Docker/Compose notes live in docs/DEPLOYMENT.md and docs/DOCKER.md when
present; local operator usage can stay on stdio.
Troubleshooting
401or403from/mcp: check bearer/OAuth settings and gateway headers.- no hosts appear: check
SYNAPSE_HOSTS_CONFIG,SYNAPSE_CONFIG_FILE, and~/.ssh/config. - destructive actions are refused: confirm the host target and confirmation policy.
- SSH errors: verify OpenSSH known_hosts, mux/socket availability, and host reachability outside Synapse first.
Tools and Actions
flux — Docker infrastructure management
flux docker — Docker daemon operations (9 actions)
flux container — Container lifecycle + inspection (14 actions)
flux host — Host inspection (9 actions)
flux compose — Docker Compose project management (10 actions)
flux help — Auto-generated flux docs
scout — SSH/local host inspection
Scout simple actions (9 actions)
scout zfs — ZFS introspection (3 subactions)
scout logs — Log retrieval (4 subactions)
scout help — Auto-generated scout docs
Known Parity Gaps
synapse achieves action-level parity with synapse-mcp — all 59
production actions from synapse-mcp/docs/INVENTORY.md are implemented. However,
the following features from the original TypeScript server are not yet ported:
Not ported
Configuration
Key environment variables:
See .env.example for the full list of variables, docs/CONFIG.md for
configuration details, and docs/SECURITY.md for transport, path, transfer,
container, and CI runner trust boundaries.
Run
MCP examples:
Architecture
Development
Useful docs:
docs/API.mdfor full tool contractsdocs/CONFIG.mdfor environment and authdocs/QUICKSTART.mdfor local smoke testsplugins/synapse/skills/synapse/SKILL.mdfor agent usage guidancetests/parity.rsfor automated parity verification against synapse-mcp INVENTORY
Documentation
This README is curated for first-run orientation and high-level action discovery. Source-of-truth docs and code are split as follows:
docs/API.mdfor the curated action contract reference.docs/MCP_SCHEMA.mdfor MCP schema shape and drift expectations.docs/CONFIG.mdfor environment and auth policy.docs/QUICKSTART.mdfor local smoke tests.docs/PLUGINS.mdandplugins/synapse/skills/synapse/SKILL.mdfor agent and marketplace usage.docs/generated/openapi.jsonfor generated OpenAPI output.src/flux_service/,src/scout_service/, andsrc/mcp/for runtime source of truth.
Related Servers
runifi- UniFi controller REST API bridge.rtailscale- Tailscale API bridge for devices, users, and tailnet operations.unraid/runraid- Unraid GraphQL bridge for NAS and server management.rapprise- Apprise notification fan-out bridge for many delivery backends.rgotify- Gotify push notification bridge for sends, messages, apps, and clients.rarcane- Arcane Docker management bridge for containers and related resources.yarr- Media-stack bridge for Sonarr, Radarr, Prowlarr, Plex, and related services.rytdl- Media download and metadata workflow server.cortex- Syslog and homelab log aggregation MCP server.axon- RAG, crawl, scrape, extract, and semantic search project.labby- Homelab control plane and Labby gateway project.lumen- Local semantic code search MCP server.nugs- Project/package management helper for local agent workflows.agentcast- Agent transcript and activity publishing project.soma- RMCP scaffold/runtime template for new provider-backed servers.
License
Original Dinglebear-authored portions of this project are licensed under AGPL-3.0-only. Separate commercial licensing is available for organizations that need terms outside the AGPL. Third-party material remains under its original license. See LICENSING.md.
Source: README.md at commit cf3bdde
Tools
0Version history
1- v1.0.0LatestSep 16, 2026
Score
50% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 days25 pts
Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.
- Auth declared10 pts
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts
Other Rmcp integrations
RMCP
dev.rmcpOfficial publisher
A remote MCP directory server that lets an assistant search indexed MCP servers and tools, inspect their records and endpoints, and compare options.
YTDL RMCP
ai.dinglebear
A local Rust MCP server that lets an assistant search YouTube, download audio or video with yt-dlp, tag and transfer media, and sync Plex playlists.
Unraid RMCP
ai.dinglebear
Local MCP server and CLI that lets an assistant work with an Unraid server through its GraphQL API: NAS, Docker, VM and storage tasks.
Unraid RMCP
ai.dinglebear
A local Rust MCP server and CLI that lets an assistant query and manage an Unraid NAS through its GraphQL API, covering arrays, Docker, VMs and storage.
UniFi RMCP
ai.dinglebear
A local MCP server and CLI that lets an assistant read and, with admin scope, change UniFi Network controller data such as clients, devices, WLANs and health.