Centralis
The operations hub for Thermograph — one connector over the application database, the climate lake, fleet logs, dashboards, OneDev, the docs and notes, and the Discord community.
Connect Claude
Add this as a custom connector and sign in with Google:
https://mcp.jinemi.com/mcp
Claude web / desktop: Settings → Connectors → Add custom connector, paste the URL above, then press Connect. Claude will send you to Google and back.
Claude Code:
claude mcp add --transport http centralis \
https://mcp.jinemi.com/mcp
then run /mcp and choose Authenticate.
Then ask Claude “run onboarding” — it will walk you through the rest, and everything below is available as a tool.
Your Google address has to be on the team list
Signing in with Google proves who you are; it does not by itself let you in.
An owner adds your address to the team first (team_manage, in
effect at once). If you get “not on the team list”, that is
the step that is missing — send them the address you tried, retry as soon as
they have, and nothing else is needed.
What you can reach
Two roles. Members get the reads — logs, the application database, the climate lake, docs and notes, code and pull requests — plus the writes that go through a PR. Owners additionally get the tools that change production directly, read secrets, and promote releases.
A tool your role cannot use is not hidden behind a refusal; it is simply not in your session at all, so it costs you no context either.
Bearer tokens
Still supported, and still the right thing for a script, a cron job or anything that cannot open a browser:
claude mcp add --transport http centralis \
https://mcp.jinemi.com/mcp \
--header "Authorization: Bearer $CENTRALIS_TOKEN"
If you are a person with a Google account, prefer signing in. Either way, please don't borrow somebody else's credential: Centralis records every change against the identity that asked for it, so a borrowed one files your work under their name and leaves the log unable to answer who did what when it matters.
Connect ChatGPT
Centralis is a plain MCP server with OAuth in front of it, so it is not Claude-specific. Settings → Connectors → Advanced → Developer mode, then add this URL with OAuth and sign in with Google:
https://mcp.jinemi.com/mcp?toolsets=research,docs,ops,forge
Keep the ?toolsets= part — see below; ChatGPT copes much worse
than Claude with the full surface. research is the one to keep
whatever else you change: it carries search and fetch,
the two tool names ChatGPT’s research surface calls on its own initiative,
and without them it can sign in and then find nothing to call.
On a Business or Enterprise workspace an admin has to enable custom connectors first. Full guide, including what to do when it does not work: /setup/chatgpt.
Trim the tool surface
The full connector is every native tool — tens of thousands of tokens of context before you have asked anything — plus the servers mounted on top. If you only need part of the estate, name the parts:
https://mcp.jinemi.com/mcp?toolsets=ops,data
Available: business, community, core, data, docs, forge, google, ops, product, research, taiga, workspace.
Leave the parameter off to get everything, which is the default. Unselected
tools are never registered, so they cost nothing at all — this is a context
saving, not a permission. core always comes along.
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, OneDev (code.jinemi.com), 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: Sign in with Google — add the connector and Claude walks you through it. Your Google address must be on the team list first; ask an owner. A hand-issued bearer token is the alternative, for scripts and for anything that cannot open a browser.
chatgpt— Settings → Connectors → Advanced → Developer mode, then add https://mcp.jinemi.com/mcp?toolsets=research,docs,ops,forge with OAuth and sign in with Google. Keep the ?toolsets= part — the whole surface is far more tools than ChatGPT will hold. Full guide: https://mcp.jinemi.com/setup/chatgptcode— claude mcp add --transport http centralis https://mcp.jinemi.com/mcp — then run /mcp and pick Authenticate. For a headless or scripted client, pass a bearer token instead: --header "Authorization: Bearer $CENTRALIS_TOKEN"desktop— Settings → Connectors → Add custom connector → https://mcp.jinemi.com/mcp, then Connect and sign in with Googleweb— Settings → Connectors → Add custom connector → https://mcp.jinemi.com/mcp, then Connect and sign in with Google
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.
all— Nothing to install. Arrives with Centralis under the discord_ prefix.
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.
code— claude mcp add --transport http figma https://mcp.figma.com/mcpdesktop— Settings → Connectors → Add custom connector → https://mcp.figma.com/mcp, then complete the Figma sign-in.web— Settings → Connectors → Add custom connector → https://mcp.figma.com/mcp, then complete the Figma sign-in.
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.
code— claude mcp add chrome-devtools -- npx -y chrome-devtools-mcp@latestdesktop— Add to claude_desktop_config.json: {"mcpServers":{"chrome-devtools":{"command":"npx","args":["-y","chrome-devtools-mcp@latest"]}}}
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.
OneDev (git, PRs, CI)no install needed
Repositories, pull requests and CI over OneDev CE at code.jinemi.com, through Centralis's native onedev_* tools — projects, read, prs, pr_open, ci, status, branches, branch_create, branch_delete, branch_protection, pr_update, pr_await, deploy_await, pr_merge, repo_settings, packages, tags, agents, build_log, write. Project paths are hierarchical (Jinemi/centralis, never a bare centralis) and the REST API is under /~api. OneDev has no issue tracker of its own (issueManagement is off on every project) — Taiga owns planning, via the taiga_* tools.
Why: OneDev has been the estate's forge of record since 2026-08-25. It is the only way to reach the estate's actual current git history, open PRs and CI now that Forgejo is retired outright — nothing lands anywhere else any more.
Auth: None for you — Centralis holds the token.
all— Nothing to install. Arrives with Centralis under the onedev_ prefix.
There is no OneDev-equivalent CLI yet — no tea for OneDev the way there was for Forgejo. Day-to-day git work goes through these tools, or the OneDev web UI directly at https://code.jinemi.com.
Check it works: Ask: "what PRs are open on Jinemi/centralis?" — it should call onedev_prs.
tea (Forgejo's CLI — retired)install locally
Forgejo's own command-line client: pull requests, issues, releases, repository listings and raw API calls, from whatever shell you are already in. It only ever spoke to Forgejo at dev.jinemi.com, never to OneDev.
Why: Forgejo was retired outright on 2026-08-31, not merely frozen — the Caddy vhosts, swarm stack, images and data volumes were deleted from central1, and the dev.jinemi.com DNS record itself was removed. There is no host left for tea to reach: every command, read or write, now fails to resolve the name. OneDev has been the estate's only forge since 2026-08-25 (see the onedev connector); nothing tea could do transfers to it.
all— Do not install it. If you have it from before the retirement, an existing tea login pointed at dev.jinemi.com is dead weight, not a fallback — remove it or ignore it.
The detailed gap analysis this entry used to carry — what tea could and could not do against the live Forgejo — is preserved in docs/mcp-audit.md for the historical record. None of it is actionable any more.
Check it works: Nothing to verify — there is no live target.
Forgejo (retired)install locally
Was reads against dev.jinemi.com — repositories, pull requests, issues and CI history — through Centralis's native forge_* tools.
Why: Forgejo was the estate's git host until OneDev took over as forge of record on 2026-08-25. It was retired outright on 2026-08-31: Caddy vhosts, the swarm stack, images and data volumes deleted from central1, DNS removed. The forge_* tools that read it were never carried over in the Go migration — they do not exist on Centralis's tool surface at all any more, opt-in or otherwise. For anything current, use the onedev connector instead.
Auth: None for you — Centralis holds the token.
all— Nothing to install, and nothing arrives — forge_read, forge_write, forge_prs, forge_issues, forge_ci and the rest of the family are gone.
If a client still lists a forge toolset, that name now selects OneDev's onedev_* tools (see cmd/centralis/main.go's directUpstreamToolsets) — it is not a way to reach Forgejo, which no longer answers at all.
Check it works: Nothing to verify against — the host is gone.
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.
code— claude mcp add grafana -s user -e GRAFANA_URL=https://monitor.jinemi.com -e GRAFANA_SERVICE_ACCOUNT_TOKEN="<token>" -- uvx mcp-grafana --disable-write
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:
- Orientation — What Thermograph is, how the estate is laid out, and the rules that are not negotiable. (Anyone new to the business)
- Operations — Release flow, how to read the fleet, and what to do when something breaks. (Anyone deploying or debugging)
- Community — Channel structure, the notes/summary/recording conventions, and moderation norms. (Anyone working in Discord)
- Voice summaries (war-room) — How kylene's finished per-call summaries get mirrored out of Google Drive into the docs repo, since docs_search cannot see Drive. kylene is the estate's only voice pipeline. (The periodic mirror loop)
- Notes & docs — Where written work belongs, and how to get it into the docs repo properly. (Everyone)
- Estate search — Routing table, ID discipline and traps for the five estate search tools. (Everyone searching Discord, Taiga, OneDev or Drive)