MX Stage

io.github.mxstagev0.2.0Updated Oct 1, 2026

Local AI workbench for IBM Maximo data: every change is staged, diffed and approved before commit.

VerifiedSTDIODesktop onlyDatabasesProductivity & Workflow

Overview

AI-generated overview

A local workbench that lets an AI assistant read IBM Maximo data, propose staged cell-level changes, and commit them only after human approval.

What it does
MX Stage loads Maximo records into a staging sheet in a local browser work screen, where the assistant analyses the data and proposes changes with reasons. Every changed cell is shown as a diff, batches can be undone before commit, and the assistant's tools cannot write to Maximo themselves. A commit is triggered only by a person pressing Commit to Maximo, after which records are written one at a time with conflict checks. Procedures worked out in chat can be saved as Skills the assistant follows later.
When to use it
Use it when an assistant needs to correct or bulk-edit IBM Maximo or Maximo Application Suite (Manage) data and you want a visible diff, undo, and human approval before anything is written. It is not aimed at read-only API access, which other Maximo MCP servers already cover.
Requirements
Windows (macOS and Linux untested), Node.js 22.6 or later and Git for the installer route, and Chrome or Edge for the work screen. An IBM Maximo or Maximo Application Suite (Manage) instance with the JSON API at /maximo/api and an API key, entered in the work screen settings. Committing to a Maximo marked as production requires a license.
Before you install
The Maximo API key is entered in the work screen settings and should never be pasted into chat. Commits write to Maximo and there is no automatic rollback, so only test against a development Maximo with dummy data. The installer backs up and edits assistant settings files, and those backups can contain tokens. Uninstalling keeps backups and your own Skills unless you delete them.

Installation

In SourceWeft

  1. Open MX Stage in the dashboard and add it to a workspace.
  2. 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

MX Stage

English | 日本語

MX Stage is a local-only AI workbench for correcting IBM Maximo data with your own AI assistant (Claude Desktop, ChatGPT, IBM Bob): every change is staged, diffed and approved by a human before it is written to Maximo.

Website: https://mxstage.tsunagi.app · Contact: [email protected]

  • Your AI works on a staging sheet, not on Maximo. The AI assistant loads Maximo data into a sheet in the work screen (a browser tab), analyses it and proposes changes with reasons. You see every changed cell.
  • Only a person can commit. The AI's tools cannot write to Maximo. Changes are written only when you press Commit to Maximo in the work screen. MX Stage writes one record first, checks it, then continues, and stops on conflicts. Any batch of changes can be undone before you commit.
  • Nothing leaves your PC except calls to your Maximo and your AI assistant. There is no MX Stage cloud and no telemetry. A small local process (the bridge) serves the work screen, talks MCP to your AI assistant and relays requests to Maximo, so Maximo needs no CORS settings. Your Maximo API key stays in the memory of the browser tab.
  • Teach it your procedures. Save a procedure worked out in a conversation as a Skill; the AI follows it next time.

Why not call the Maximo REST API from the AI directly?

Several Maximo MCP servers let the AI call the REST API. That is fine for reading, but risky for bulk changes: you cannot see what the AI is about to write, and a wrong guess goes straight into production. MX Stage puts a staging sheet, a diff, an undo and a human approval in between.

Supported AI assistants

AssistantStatus
Claude Desktop (chat and Code tab)Supported
ChatGPT desktop — Codex or Work mode (Chat mode cannot use local MCP servers)Supported
Claude Code, Codex CLI and IDE extension, AntigravityWork, not officially supported
IBM BobSupported (registered by the installer)
LM StudioComing

Requirements

  • Windows (macOS and Linux are untested)
  • Node.js 22.6 or later and Git (the installer offers to install them)
  • Chrome or Edge
  • IBM Maximo or Maximo Application Suite (Manage) with the JSON API at /maximo/api and an API key

Install

Claude Desktop (simplest)

  1. Download mxstage-<version>.mcpb from the latest release.
  2. In Claude Desktop, open Settings → Extensions, then Advanced settings → Install Extension… and choose the file (or double-click the file, or drag it onto the Extensions page). Choose Install.
  3. Open http://127.0.0.1:8788/app in Chrome or Edge and enter your Maximo URL and API key in Settings. Never paste the API key into the chat.
  4. In a new chat, ask "show the MX Stage status".

The extension needs no Node.js or Git: Claude Desktop runs it. To use MX Stage from other assistants as well (ChatGPT desktop, IBM Bob, Claude Code in the terminal, Antigravity), use the installer below; it detects the extension and does not register MX Stage twice.

Other assistants (installer)

Ask Claude Code (or the Code tab of Claude Desktop) to install it: give it this repository's URL and say "install this". It follows Installation steps for Claude Code below and asks before running each command.

To install by hand, clone this repository to %USERPROFILE%\mxstage and run node scripts/setup-local.mjs in it.

One install registers MX Stage with every supported assistant found on this PC. Then restart the assistant you use, open mxstage on the desktop (or http://127.0.0.1:8788/app), and enter your Maximo URL and API key in Settings. Never paste the API key into the chat.

In Settings, also choose for each Maximo whether it is production or test. Committing to production needs a license (see License); everything else is free.

To update, say "update MX Stage"; to remove it, say "uninstall MX Stage" (see Uninstall).

Where it is registered

~ is %USERPROFILE%. The installer only touches assistants that are installed (Claude Desktop: its settings folder exists; Antigravity: ~\.gemini; Codex: ~\.codex; IBM Bob: ~\.bob), backs up every file before changing it (to ~\.config\mxstage\backup\), and never changes other servers' settings. node scripts/setup-local.mjs --status shows what is registered without changing anything. To leave an assistant out, add --no-claude-desktop, --no-antigravity, --no-codex or --no-bob (--no-skills copies no Skills). --claude-code registers Claude Code even when the extension is enabled.

AssistantMCP serverSkillsAfter installing or updating
Claude Code (CLI)mcpServers.mxstage in ~\.claude.json. Not registered when the MX Stage extension (.mcpb) is enabled in Claude Desktop, because the Code tab already gets MX Stage from the extension and would show every tool twice (an entry the installer added earlier is removed). Add --claude-code to register anyway for Claude Code in a terminal (remembered for later runs)~\.claude\skills\<name>\SKILL.mdRestart Claude Code
Claude Desktop (Code tab)Same as Claude Code, or the extension (.mcpb) when it is enabledSame as Claude CodeQuit Claude Desktop from the system tray and open it again
Claude Desktop (chat)mcpServers.mxstage in %APPDATA%\Claude\claude_desktop_config.json. Microsoft Store version: also in %LOCALAPPDATA%\Packages\Claude_<publisher ID>\LocalCache\Roaming\Claude\claude_desktop_config.json when that folder exists. Not registered when the MX Stage extension (.mcpb) is installed and enabled in Claude Desktop (an entry the installer added earlier is removed)Not copied (see Skills)Quit from the system tray (closing the window is not enough) and open again
AntigravitymcpServers.mxstage in ~\.gemini\config\mcp_config.json~\.gemini\config\skills\<name>\SKILL.mdStart a new conversation
Codex (ChatGPT desktop, CLI, IDE extension)[mcp_servers.mxstage] in ~\.codex\config.toml~\.agents\skills\<name>\SKILL.mdRestart Codex
IBM BobmcpServers.mxstage in ~\.bob\settings\mcp.json~\.bob\skills\<name>\SKILL.mdRestart IBM Bob

Uninstall

Say "uninstall MX Stage" to Claude Code, or run in %USERPROFILE%\mxstage:

bash
node scripts/setup-local.mjs --uninstall

This removes the mxstage entries from every assistant (restoring any setting the installer replaced), the Skills it copied (unless you edited them), the sign-in shortcut and desktop shortcut, and the bridge it started. It keeps your own Skills (~\.config\mxstage\skills\) and the backups. To remove everything, also delete %USERPROFILE%\mxstage and ~\.config\mxstage (the backups are full copies of the original settings files, including any tokens in them), and clear the site data for 127.0.0.1:8788 in your browser.

Installation steps for Claude Code

When the user asks to install MX Stage, follow these steps and get the user's approval before each command.

  1. Check prerequisites: node --version (22.6 or later) and git --version. If missing, with the user's agreement install them with winget install OpenJS.NodeJS.LTS / winget install Git.Git, then confirm node and git work in a new shell.
  2. Get the code into %USERPROFILE%\mxstage (~/mxstage on macOS and Linux):
    • if it does not exist: git clone <this repository URL> "%USERPROFILE%\mxstage"
    • if it exists: git pull --ff-only in it (if local changes block it, stop and tell the user)
  3. Install: in that folder run node scripts/setup-local.mjs --json. This also runs npm install and builds the work screen. Do not use mxstage.cmd (it waits for a key press at the end).
  4. Read the result: success if no item in steps has "level": "error". For error or warn, tell the user its message and hint and follow the hint. Do not edit settings files by guesswork.
  5. Tell the user to restart the assistant they use, to enter the Maximo URL and API key in the work screen settings (http://127.0.0.1:8788/app), and never to paste the API key into the chat.

Update: steps 2 to 4. Ask the user to restart their assistant afterwards so the new bridge is used. Uninstall: node scripts/setup-local.mjs --uninstall --json. Status: node scripts/setup-local.mjs --status --json (changes nothing).

Skills

A Skill is a procedure the AI assistant follows.

LocationContentsUpdates
Built-inskills/ in this repository (mxstage-workbench)The basic procedure and rules for every taskReplaced with MX Stage updates; do not edit
Yours~/.config/mxstage/skills/<name>/SKILL.mdProcedures for your tasks or customersYours; kept across updates and never sent anywhere
  • Every assistant gets the basic procedure: it is attached to the result of the first tool call in each conversation, so assistants that cannot load Skill files (Claude Desktop chat, for example) follow the same rules.
  • Create Skills from the chat: say "save this procedure as a Skill". The AI shows the name, description and body, and saves it after you agree.
  • Run the installer again to copy new or changed Skills to each assistant.

Documentation

The detailed guides are in Japanese for now:

Development

bash
npm run typecheck      # tsc (app and bridge)npx vitest run         # tests (app and bridge)npm run test:setup     # installer tests (write only to temporary folders)npm run build          # build the built-in Skill and the work screen (dist/app)npm run dev:app        # dev server for the work screen (http://localhost:5173/app?demo=1 shows sample data; relays to the dev bridge on 8790)npm run dev:fake-maximo  # a fake Maximo at https://127.0.0.1:9797 (API key: test-api-key)npm run dev:bridge     # a bridge on port 8790 that accepts the development license for the fake Maximo

Disable IBM telemetry when installing dependencies ($env:IBM_TELEMETRY_DISABLED='true'; npm install in PowerShell); the installer does this itself. See dev/README.md for developing and testing license checks.

Only test commits against a development Maximo with dummy data. There is no automatic rollback of changes written to Maximo.

License

MX Stage is licensed under the Business Source License 1.1. The source is available, but it is not open source. The LICENSE file is authoritative; this is a summary.

  • Free: everything except committing to a production Maximo — loading, analysing and editing production data, building Skills, and committing to test environments. You may read, modify and redistribute the source under the same license.
  • License needed: using MX Stage to create, change or delete data in a production Maximo environment — US$4,800 per production environment per year, for any number of users and PCs. The license key names the environment's URLs (up to three aliases). Pricing.
  • Production environment: the Maximo your organization uses to record day-to-day operations, and an environment being prepared to replace it (for example, a migration target before go-live). Test environment: everything else (development, test, training, demonstration, migration rehearsal), even if it holds a copy of production data.
  • Each version becomes Apache License 2.0 four years after its release.
  • Third-party packages and fonts (IBM Carbon Design System, IBM Plex and others) keep their own licenses (THIRD_PARTY_NOTICES.md).

IBM and Maximo are trademarks of International Business Machines Corporation. MX Stage is an independent product and is not affiliated with or endorsed by IBM.

Source: README.md at commit a3f7592

Tools

0
Tool metadata has not been indexed yet.

Version history

1
  1. v0.2.0LatestOct 1, 2026