Centralis

The operations hub for Thermograph — one connector over the application database, the climate lake, fleet logs, dashboards, Forgejo, the docs and notes, and the Discord community.

Connect Claude

Add this as a custom connector. You will need a bearer token — ask the operator, and do not share it.

https://mcp.thermograph.org/mcp

Claude web / desktop: Settings → Connectors → Add custom connector, paste the URL above.

Claude Code:

claude mcp add --transport http centralis \
  https://mcp.thermograph.org/mcp \
  --header "Authorization: Bearer $CENTRALIS_TOKEN"

Then ask Claude “run onboarding” — it will walk you through the rest, and everything below is available as a tool.

The toolkit

Some of these arrive with Centralis. The ones marked install locally cannot be proxied — Figma needs an interactive sign-in and a browser tool needs your actual browser — so they run on your machine.

Centralisstart here

The Thermograph control plane: the application database, the Iceberg climate lake, fleet logs, Grafana dashboards, Forgejo, the planning docs and notes, the public API, and Discord (proxied).

Why: One connector covering the whole business. If you install nothing else, install this — it is how you ask questions about the estate at all.

Auth: Bearer token. Ask the operator for one; do not share it.

Check it works: Ask: "what's running on prod right now?" — it should call fleet_status and list the Swarm services.

Discord (Thermograph.org community)no install needed

139 tools for the community server — channels, messages, threads, forums, roles, members, moderation, events, webhooks and polls.

Why: Discord is the support venue and a product channel: the daily unusual-weather post and alert DMs live there. Community work is business work.

Auth: None for you — Centralis holds the bot token and proxies the calls.

Only install the standalone server (npx @quadslab.io/discord-mcp init) if you need Discord in a client that cannot reach Centralis.

Check it works: Ask: "list the Discord channels" — it should call discord_list_channels.

Figmainstall locally

Figma's official MCP server: read design files, inspect frames and components, and pull design context into code.

Why: Thermograph's visual system is a single hand-written stylesheet where every value is a design token. Design changes start in Figma and have to land as tokens, not raw hex.

Auth: Interactive OAuth with your own Figma account.

This one is deliberately NOT proxied through Centralis: its OAuth flow is interactive, and a headless server cannot complete a sign-in on your behalf. Centralis does carry native figma_* tools that use a shared personal access token for read-only file and design-token queries — those work without this, but the official server is better for design-to-code.

Check it works: Ask it to read any Figma file you have access to.

Chrome DevToolsinstall locally

Drive a real browser: navigate, screenshot, read the console and network activity.

Why: Every design or feature change is validated at 390 / 800 / 1920 / 2560 / 3840px in light and dark. That check needs a real browser on your machine, which no remote server can provide.

Auth: None.

Local only — it controls a browser on your own machine, so it cannot be a remote connector.

Check it works: Ask it to screenshot https://thermograph.org at 390px wide.

Forgejo (git, registry, CI)no install needed

Repositories, pull requests, issues and CI, through Centralis's native forge_* tools.

Why: Forgejo is the estate's sole git host — GitHub is retired — and it is mesh-only, so it is not reachable from a laptop off the WireGuard network.

Auth: None for you — Centralis holds the token.

The native tools encode this estate's rules — writes open pull requests, because dev/main/release are protected. A generic Forgejo MCP would happily try to push directly and fail.

Check it works: Ask: "what PRs are open on the monorepo?"

Grafana (live observability)install locally

The official grafana/mcp-grafana server, read-only: live dashboards as rendered, alert-rule state, datasource health, and ad-hoc queries against Loki/Prometheus.

Why: Centralis's native dashboard_* tools read the repo JSON that Grafana is provisioned FROM, and write PRs. This reads what Grafana is actually showing right now — the other half of the picture. It authenticates as you (a Grafana service-account token), which is why it installs locally rather than being proxied.

Auth: Grafana service-account token — separate from the Google SSO humans use. See the setup guide; never commit the raw token.

Keep --disable-write unless you specifically need to mutate Grafana; and remember dashboard changes are provisioned from repo JSON, so a durable edit still goes through Centralis's dashboard_write (a PR), not a live write here.

Check it works: claude mcp get grafana — should show Status: ✔ Connected.

Skills

Operational guides, loadable in Claude with the skill tool or readable here: