🎯 What is This?
The Maximo MCP Server is a Model Context Protocol server that connects AI assistants (like Antigravity, Cursor, or VS Code Copilot) directly to your IBM Maximo environment. Instead of manually copying API documentation, the AI can:
| Capability | Description |
|---|
| 🔍 Discover APIs | Find available Object Structures (MXWO, MXASSET, etc.) |
| 📋 Inspect Schemas | Get exact field names, types, and descriptions |
| 📊 Query Live Data | Execute OSLC REST queries and see real results |
| 🎨 Generate UI | Create Carbon Design System tables and dashboards |
| ✅ Validate Instantly | Test queries before generating final code |
| ✏️ Create Records | Create Work Orders, Assets, Service Requests via AI |
| 🔄 Update Records | Partially update any Maximo record by ID |
| ⚡ Run Actions | Trigger Maximo business workflows (status changes, approvals) |
📚 Documentation
Core Guides
French Translations
Word Documents
All guides are also available in .docx format in the docs/ folder for offline reading and sharing.
⚡ Quick Start
Prerequisites
- Node.js v18 or higher
- Maximo API Key with read access
- AI IDE with MCP support (Antigravity, Cursor, VS Code + Continue)
Installation
Installation
Method 1: Run directly with npx (Recommended)
Method 2: Clone from Source
# Clone the repository
git clone https://github.com/markusvankempen/maximo-mcp-ai-integration-options.git
cd maximo-mcp-ai-integration-options
# Install dependencies
npm install
# Set up environment variables
cp .env.example .env
# Edit .env with your Maximo credentials
Environment Configuration
Edit the .env file with your Maximo credentials:
# .env (never commit this file!)
MAXIMO_URL=https://your-maximo-host.com/maximo/api
MAXIMO_HOST=https://your-maximo-host.com
MAXIMO_API_KEY=your-api-key-here
MAXIMO_OPENAPI_PATH=./maximo_openapi.json
PORT=3002
Download the OpenAPI Schema (Recommended)
The OpenAPI schema file enables offline schema lookups for faster AI responses:
# Download from your Maximo instance
curl -X GET "https://your-maximo-host.com/maximo/oslc/oas/api" \
-H "apikey:your-api-key-here" \
-o maximo_openapi.json
Alternatively, download via Swagger UI at: https://your-host/maximo/oslc/oas/api.html (Click "Explore" or "Download")
Method 3: Direct Browser Download (Manual)
If curl fails (e.g., due to SSL/network errors), you can manually download the file:
-
Open this URL in your browser:
https://[YOUR_MAXIMO_HOST]/maximo/oslc/oas/api
(Replace [YOUR_MAXIMO_HOST] with your actual server address)
-
You may be prompted to log in to Maximo.
-
Once the JSON loads, right-click the page and select "Save Page As...".
-
Save the file as maximo_openapi.json in your project root folder.
Note: This file is ~12MB and contains all Object Structure definitions for your Maximo instance.
IDE Configuration
VS Code with GitHub Copilot (Recommended)
Option 1: Install from the MCP Server Gallery
- Enable
chat.mcp.gallery.enabled in VS Code settings
- Open the Extensions view (
⇧⌘X)
- Type
@mcp maximo in the search field
- Click Install to add the Maximo MCP server
Option 2: Add manually via mcp.json
- Open the Command Palette (
⇧⌘P) → MCP: Open Workspace Folder Configuration
- Add the following configuration:
{
"inputs": [
{
"type": "promptString",
"id": "maximo-url",
"description": "Maximo REST API Base URL (e.g., https://your-host/maximo/api)"
},
{
"type": "promptString",
"id": "maximo-api-key",
"description": "Maximo API Key",
"password": true
},
{
"type": "promptString",
"id": "maximo-host",
"description": "Maximo Host URL (e.g., https://your-host)"
}
],
"servers": {
"maximo-mcp-server": {
"type": "stdio",
"command": "npx",
"args": ["-y", "maximo-mcp-server"],
"env": {
"MAXIMO_URL": "${input:maximo-url}",
"MAXIMO_API_KEY": "${input:maximo-api-key}",
"MAXIMO_HOST": "${input:maximo-host}"
}
}
}
}
- VS Code will prompt you for your Maximo credentials when the server starts.
💡 Tip: This project includes a .vscode/mcp.json file. If you clone the repo, VS Code will auto-detect the MCP server configuration.
Google Antigravity (Manual Setup Required)
⚠️ Note: The Antigravity MCP Store is curated and does not auto-discover servers from the registry. You must add this server manually.
- Open Antigravity
- Click "..." dropdown at the top of the Agent panel
- Select "MCP Servers" → "Manage MCP Servers" → "View raw config"
- Add to your
mcp_config.json:
{
"mcpServers": {
"maximo-mcp-server": {
"command": "npx",
"args": ["-y", "maximo-mcp-server"],
"env": {
"MAXIMO_URL": "https://your-maximo-host/maximo/api",
"MAXIMO_API_KEY": "your-api-key-here",
"MAXIMO_HOST": "https://your-maximo-host"
}
}
}
}
- Save and click Refresh
Cursor / Claude Desktop
# Copy the template
cp config/mcp_config.json.example ~/.cursor/mcp.json
# Or for Claude Desktop:
cp config/mcp_config.json.example ~/Library/Application\ Support/Claude/claude_desktop_config.json
Edit with your Maximo credentials:
{
"mcpServers": {
"maximo-mcp-server": {
"command": "npx",
"args": ["-y", "maximo-mcp-server"],
"env": {
"MAXIMO_URL": "https://your-maximo-host/maximo/api",
"MAXIMO_API_KEY": "your-api-key-here"
}
}
}
}
Verify Connection
In your AI IDE, ask:
"Is the Maximo MCP server connected?"
The AI will call get_instance_details and confirm connectivity.
🎬 Live Demo
Asset Manager Application
We built a complete Maximo Asset Manager web application using only natural language prompts and the MCP server.

50 assets loaded with real-time filtering and search
Demo Features
| Feature | Screenshot |
|---|
| Full Dashboard | 50 assets, 4 stat cards, 3 sites |
| Search Filter |  |
| Site Filter |  |
🎥 Screen Recording
A complete video demonstration is available: assets_demo_recording.webp
Try It Yourself
# Start the local proxy server
node server.js
# Open in browser
open http://localhost:3002/demos/assets.html
🛠 Available MCP Tools
The server exposes 9 tools to the AI — 6 read tools and 3 write/CRUD tools:

Read Tools
| Tool Name | Description |
|---|
list_object_structures | List available Maximo Object Structures (APIs) |
get_schema_details | Get field definitions for an Object Structure |
query_maximo | Execute OSLC REST queries |
render_carbon_table | Generate Carbon Design HTML tables |
render_carbon_details | Generate detail view for a record |
get_instance_details | Check server connectivity |
Write Tools (CRUD)
⚠️ Write tools modify live data. Use a read-only API key for exploration; only enable write access for known workflows.
| Tool Name | Description |
|---|
create_record | Create a new record in any Maximo Object Structure |
update_record | Partially update fields on an existing record by ID |
run_action | Execute Maximo business actions (status changes, approvals) |
💡 Use Cases
1. Generate API Calls
"Get me the last 10 approved work orders from BEDFORD site"