Skip to main content
Glama
GlassOnTin
by GlassOnTin

rms-mcp

License: MIT

A resident MCP server for an RMS / Global Meteor Network station. It lets Claude Code (or any MCP client) inspect the station over an SSH/WireGuard tunnel — "how did last night go?", "is capture healthy?", "show me the detections" — without SSHing in and re-deriving the answer each time.

It runs beside RMS, not inside it: a small pure-Python daemon in its own virtualenv that reads RMS's own outputs (FTPdetectinfo, the recalibrated platepars, the logs) and resolves every path from the live .config, so a station on an NVMe (data_dir: /mnt/nvme/RMS_data) or with renamed subdirs Just Works. No import RMS, so it can't be broken by — and can't break — the capture environment.

Tools

Read (safe inspection):

Tool

Returns

rms_status

capture/service states, disk, current capture night, ml_filter, last upload

rms_list_nights

recent archived nights, newest first (sorted by date, not name)

rms_night_summary

meteor count, FOV, recalibration status, upload bundle — for a night, or the latest

rms_detections

per-detection kinematics (frame span, peak magnitude, meteor-vs-streak hint)

rms_logs

tail the current RMS log, optionally filtered

Write (gated — see Scoped access):

Tool

Does

Scope

rms_config_get

read one .config value

config.<key>

rms_config_set

change one .config value — backs up first, preserves comments, never appends, does not restart capture

config.<key>

rms_reprocess

launch RMS reprocessing of a captured night under ~/vRMS — refuses the live night, won't stack jobs (dry_run to preview)

reprocess

Related MCP server: jakubs-mcp-tools

Security & scoped access

Loopback-bound (127.0.0.1:8740), every request carries a bearer token that maps to a paired client, every call is authorised against that client's standing policy (deny by default) and audited to ~/.config/rms-mcp/audit.log. Reach it from another machine over an SSH -L tunnel or WireGuard — never expose the port directly.

Grant management is CLI-only (no MCP tool can alter policy, so nothing can self-escalate):

rms-mcp pair phone                                            # prints a token once
rms-mcp allow phone rms_status,rms_night_summary,rms_detections '' 90d   # read-only
rms-mcp allow ops   rms_config_set,rms_reprocess 'config.ml_filter reprocess' 30d
rms-mcp policies                                              # show grants
rms-mcp unpair phone

A refusal names the exact allow line that would grant it. The single bearer minted on first run is adopted as a full-access local client, so an already-connected client keeps working while you add narrower ones.

Run

python3 -m venv .venv && .venv/bin/pip install -r requirements.txt
.venv/bin/python -m rms_mcp            # serve
.venv/bin/python -m rms_mcp token      # print the bearer token

As a persistent user service:

systemctl --user enable --now rms-mcp
loginctl enable-linger "$USER"         # survive logout/reboot

Connect a client

# from the client machine, tunnel to the station's loopback port:
ssh -N -f -L 8740:127.0.0.1:8740 ian@meteor
claude mcp add --transport http rms http://127.0.0.1:8740/mcp \
  --header "Authorization: Bearer $(ssh ian@meteor '~/source/rms-mcp/.venv/bin/python -m rms_mcp token')"
A
license - permissive license
-
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • F
    license
    -
    quality
    C
    maintenance
    MCP server for infrastructure discovery and remote management, enabling SSH command execution, file transfer, log tailing, and machine/service inventory with a companion web dashboard.
    1
  • A
    license
    -
    quality
    C
    maintenance
    SSH-based MCP server that enables remote execution of SSH commands, file transfers, and secure server management via the MCP protocol.
    ISC

View all related MCP servers

Related MCP Connectors

  • Zero-install remote MCP server for proof-of-existence file attestation.

  • A paid remote MCP for hosted MCP server, built to return verdicts, receipts, usage logs, and audit-r

  • An MCP server for deep research or task groups

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/GlassOnTin/rms-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server