
Maximo Enterprise MCP
io.github.MaxisTechnology-Dev由 GitHub 帳號 MaxisTechnology-Dev 發布v1.1.0更新於 Oct 25, 2026
MCP server for IBM Maximo, by Maxis Technology — assets, work orders, inventory, purchasing, labor.
概覽
將 AI 助理連接到 IBM Maximo 資產管理,透過約 95 個工具提供資產、工單、庫存、採購、人力與合規資料的查詢與報表能力。
- 可以做什麼
- 查詢資產、工單、作業計畫、服務請求、位置與人力,包括 KPI、停機、成本差異與利用率報告。檢查庫存水位、低庫存與補貨建議、庫房目錄與庫存估值。檢視採購資料:採購訂單、請購單、供應商與支出分析。執行報表與合規檢視,如維護 KPI 儀表板、故障柏拉圖、問題資產、校正、許可與即將到期的認證,並匯出 Excel 與 PDF。使用 AI 輔助工具進行自然語言轉 OSLC 查詢、異常偵測、根因建議、資產健康評分、故障預測與執行手冊產生。檢視結構與管理資料
- 適用情境
- 適合已在使用 IBM Maximo 的維護、可靠性、規劃或 EHS 團隊,希望助理不必離開聊天用戶端就能調閱資產歷史、工單與庫存資料、產生 KPI 或合規報表,或草擬交接班摘要與執行手冊。
- 執行需求
- 以 Python 套件形式透過 uvx 或 pip 在本機執行,也可作為託管 HTTP/SSE 服務執行。需要 MAXIMO_URL、MAXIMO_HOST 與 AUTH_MODE,以及 Maximo 憑證:基本驗證使用 MAXIMO_USERNAME 與 MAXIMO_PASSWORD,API 金鑰驗證使用 MAXIMO_API_KEY。需要能連線至 Maximo 執行個體的網路。託管模式另需 MCP_ACCESS_TOKEN 並終止 TLS。
安裝
在 SourceWeft 中
- 開啟 儀表板中的 Maximo Enterprise MCP,將其新增到工作區。
- 為需要使用其工具的對話啟用該服務。
Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。
其他 MCP 客戶端
參照 儲存庫 中的啟動說明。
README
Maximo Enterprise MCP
A production-focused integration that brings IBM Maximo Asset Management into AI workflows through the Model Context Protocol.
Built by Maxis Technology as part of Alchemize — a state-of-the-art enterprise data management platform capable of doing in hours what others do in days. Want to know more? Head over to alchemize.io.
This project now exposes:
- A stable MCP server for Claude Desktop, Cursor, and other MCP clients.
- A hosted HTTP/SSE mode for remote MCP access.
- A FastAPI tool layer for OpenAI, Gemini, Grok, and custom orchestrators.
See CHANGELOG.md for the per-version release history (64 net-new tools across waves 1–9).
The current stable surface is 95 public tools across 21 categories. Every tool ships with a strict Pydantic input model (extra="forbid").
When a customer's Maximo doesn't have a particular vertical's data populated (no oil-and-gas turnarounds, no transportation fleet, no Spatial coordinates, etc.), every tool returns
data_unavailable=Truewith a user-friendly note explaining what's missing and what an admin can do. Never a cryptic 400/404.
Maximo version compatibility
The integration suite (64 net-new tools across 8 wave smoke tests) is verified end-to-end against Maximo 7.6.x with the mxapi integration extensions (the API patch pack — mxapi* object structures published).
The codebase is defensively designed for cross-version use:
- Multi-candidate OS endpoints (
tools/*.pyconstants likeJP_OS_CANDIDATES,LABOR_OS_CANDIDATES) iteratemx*first thenmxapi*and fall through 404s - Single-condition WHERE + Python post-filter (defensive against the most restrictive build encountered — see
compound_where_drops_connection) +field/-fieldorderBy direction prefix (strict OSLC v2 spec — works on every build)- Graceful
data_unavailable=Trueflag with admin-action note when an OSLC object structure isn't published on the customer's deployment
Every read tool returns a structured envelope (success / data / metadata). Tools that need data their Maximo build doesn't expose surface a data_unavailable: true flag with an admin-action note rather than failing silently. Write tools ship # DISABLED by default.
Quick-start prompts
Once connected to Claude Desktop / Cursor / Code, try:
Responsible Use
This server speaks to a live IBM Maximo instance and exposes its data — and, when explicitly enabled, its mutating operations — to a language model. Before deploying:
- Run hosted HTTP/SSE behind an authenticated gateway. Per-request identity
comes from
MCP_AUTH_MODE=jwt(OIDC) or static + gateway-injectedX-MCP-*headers. Never expose the FastAPI tool API to untrusted callers without an identity solution in front. - TLS at the edge (or in-process via
MCP_SSL_*) is mandatory for any non-stdio deployment. The app does not terminate TLS itself. - Keep all write tools
# DISABLEDin server.py until you have reviewed the RBAC policy and audit posture for your environment. - Stamp
MAXIMO_ENV=dev|staging|prodper deployment so audit records and/healthzmake it obvious which Maximo a container is talking to. - Read SECURITY.md and
PRODUCT_GAPS_BEFORE_DEPLOY.md before
pushing to a public registry; the latter documents the exact controls
required for
https://github.com/mcp-style listings.
Architecture
Installation
Local MCP for Claude Desktop / Claude Code / Cursor
You have two ways to install: uvx (recommended — no manual install) or pip install.
Option A — uvx (recommended)
Install uv once, then point your MCP client at uvx maximo-enterprise-mcp. uvx downloads, caches, and runs the package on demand.
Option B — pip install
Then in the configs below, replace:
with:
Claude Desktop
Edit %APPDATA%\Claude\claude_desktop_config.json (Windows) or ~/Library/Application Support/Claude/claude_desktop_config.json (macOS):
Restart Claude Desktop. The hammer icon appears once tools load.
Claude Code
Add to project-level .mcp.json or global ~/.claude.json:
Run /mcp in Claude Code to verify the connection.
Cursor
Add to ~/.cursor/mcp.json (global) or .cursor/mcp.json (per project):
In Cursor: Settings → MCP → Refresh to load.
Hosted MCP over HTTP/SSE
Hosted mode is intended for trusted network or gateway-protected deployments. It now fails closed unless MCP_ACCESS_TOKEN is set.
Remote MCP clients should connect to:
- MCP SSE endpoint:
http://host:8080/sse - Health endpoint:
http://host:8080/healthz
Example remote MCP config:
FastAPI Tool API
Hosted HTTP mode also exposes a tool API for non-MCP platforms:
GET /healthzGET /v1/toolsPOST /v1/tools/{tool_name}GET /v1/providers/openai-toolsGET /v1/providers/gemini-toolsGET /v1/providers/grok-tools
Example invocation:
AI Platform Usage
OpenAI
Use GET /v1/providers/openai-tools to retrieve OpenAI-compatible tool definitions, then execute the selected tool via POST /v1/tools/{tool_name}.
Gemini
Use GET /v1/providers/gemini-tools to retrieve Gemini function declarations from the same shared tool registry.
Grok
Use GET /v1/providers/grok-tools. The payload is OpenAI-compatible so the same orchestration pattern works.
Optional Dependencies
Core installation uses requirements.txt.
Optional extras are defined in pyproject.toml:
pip install ".[ai]"for OpenAI, ChromaDB, and sentence-transformers.pip install ".[exports]"for Excel and PDF export dependencies.pip install ".[dev]"for local test and lint tooling.
Environment Variables
See .env.example for the complete set. The most important variables are:
Docker
Build
Run
Use docker-compose.yml if you want Redis included.
Deployment Guidance
The server does NOT terminate TLS itself. Every non-stdio deployment
MUST terminate TLS either at the edge or in-process via
MCP_SSL_CERTFILE / MCP_SSL_KEYFILE. See SECURITY.md.
AWS
- Recommended first target: ECS Fargate or App Runner.
- Store secrets in AWS Secrets Manager.
- Required: put ALB or API Gateway in front for TLS and access control.
- Keep Maximo connectivity private when possible.
Azure
- Recommended first target: Azure Container Apps or App Service.
- Store secrets in Key Vault.
- Required: put Application Gateway or Front Door in front for TLS and access control.
Environment Separation
Run one container image, three deployments, three secret stores. Stamp
MAXIMO_ENV=dev|staging|prod per deployment — the value lands in every
audit record and on /healthz, so an operator can confirm at a glance
which Maximo a given container is pointed at.
Recommended pattern:
Never reuse a token across environments — a leaked dev token must not unlock prod, and a misrouted dev container must not write to prod data.
Public Internet
Exposing the raw hosted MCP to the public internet requires ALL of the following — no exceptions:
- bearer or OIDC inbound authentication (
MCP_AUTH_MODE) - TLS at the edge or in-process (the app serves plaintext by default)
- explicit CORS allowlist (
MCP_ALLOWED_ORIGINS) — do NOT use* - rate limiting (
RATE_LIMIT_PER_MINUTE) and a separate edge limiter - audit logging with durable forwarding
- private Maximo connectivity or strict network controls
Development
Run unit tests
Run integration tests
Integration tests hit a real Maximo instance configured in .env. Two suites:
tests/integration_test_tools.py— tool-by-tool smoke against a single live Maximotests/integration/test_smoke_wave[1-4].py— per-wave smoke runs that gate every public tool added in waves 1–4/6
List registered MCP tools
Security Notes
- Do not commit real
.env,.mcp.json, or.cursor/mcp.jsonvalues. - Use example configs from the
*.examplefiles and keep secrets in local-only files or a secret manager. - Hosted mode requires
MCP_ACCESS_TOKEN. - The env-based role model is suitable for local or trusted deployments, not multi-tenant public hosting.
IBM and Maximo are trademarks of International Business Machines Corp., used here for descriptive purposes only. This project is not affiliated with IBM.
來源:README.md,提交 2da4219
工具
0版本歷史
1- v1.1.0最新Sep 16, 2026
評分
已滿足適用檢查項的 40%
該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。
- 近 30 天內可連通25 分
請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。
- 已宣告認證方式10 分
請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。
- 已列出工具15 分
請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。
- 描述必需15 分
- 圖示10 分
- 文件15 分
- 授權條款10 分
請在儲存庫或註冊中心條目中宣告授權條款。