maximo-jobplan
Enables natural language interactions for creating, querying, updating, and deleting job plans in IBM Maximo.
README
Maximo Job Plan Management via MCP
This project uses the Model Context Protocol (MCP) to interact with IBM Maximo for job plan management.
Overview
The Maximo Job Plan MCP Server provides a seamless interface for AI assistants to interact with IBM Maximo's job plan management system. It enables natural language interactions for creating, querying, updating, and deleting job plans.
Features
- Import Job Plans: Bulk import job plans from CSV files
- List Job Plans: Query and filter job plans with OSLC queries
- Get Job Plan Details: Retrieve detailed information about specific job plans
- Delete Job Plans: Remove job plans from the system
- Natural Language Interface: Use conversational commands through AI assistants
Available MCP Tools
The maximo-jobplan MCP server provides 4 tools for managing job plans:
1. import_jobplans
Import job plans from CSV data into Maximo.
Example usage:
"Import job plans from jobplanMaximo.csv"
CSV Format:
JPNUM,DESCRIPTION,JPDURATION,STATUS,JOBTYPE,PLUSCJPREVNUM
HVAC-PM-001,Quarterly HVAC System Inspection,4.0,ACTIVE,PM,0
2. list_jobplans
List all job plans from Maximo with optional filtering.
Example usage:
"List all job plans"
"Show me HVAC job plans"
3. get_jobplan
Get detailed information about a specific job plan.
Example usage:
"Get details of job plan HVAC-PM-001"
"Show me the BREAKINSP job plan"
4. delete_jobplan
Delete a job plan by number.
Example usage:
"Delete job plan TEST-001"
Installation
Prerequisites
- Node.js 18 or higher
- npm or yarn
- Access to IBM Maximo instance
- Maximo API key
Setup Steps
-
Clone the repository
git clone <repository-url> cd maximo-jobplan-mcp -
Install dependencies
npm install -
Build the project
npm run build -
Configure environment variables
Set the following environment variables:
MAXIMO_BASE_URL: Your Maximo instance URL (e.g.,https://your-maximo-instance.com)MAXIMO_API_KEY: Your Maximo API key
-
Configure MCP Client
For Bob/Claude Desktop, add to your MCP settings:
{ "mcpServers": { "maximo-jobplan": { "command": "node", "args": ["C:/path/to/maximo-jobplan-server/build/index.js"], "env": { "MAXIMO_BASE_URL": "https://your-maximo-instance.com", "MAXIMO_API_KEY": "your-api-key-here" } } } }
Project Structure
maximo-jobplan-mcp/
├── src/
│ └── index.ts # Main MCP server implementation
├── build/ # Compiled JavaScript output
├── docs/ # Documentation files
│ ├── MCP_SETUP_GUIDE.md
│ ├── QUICK_START.md
│ └── README_MAXIMO_CONNECTION.md
├── examples/
│ └── jobplanMaximo.csv # Sample job plans
├── package.json
├── tsconfig.json
├── .gitignore
└── README.md
Usage Examples
Using with AI Assistants
Simply use natural language commands:
- "List all job plans in Maximo"
- "Show me details of HVAC-PM-001"
- "Import the job plans from the CSV file"
- "Get all PUMP job plans"
- "Delete job plan TEST-001"
Programmatic Usage
// The MCP server handles all interactions through the protocol
// No direct API calls needed when using with MCP clients
Configuration
Maximo Connection
The server connects to Maximo using:
- Base URL: Configured via
MAXIMO_BASE_URLenvironment variable - Authentication: API key via
MAXIMO_API_KEYenvironment variable - API Endpoint:
/maximo/api/os/MXAPIJOBPLAN
CSV Import Format
Job plans CSV must include these columns:
JPNUM: Job plan number (max 12 characters)DESCRIPTION: Job plan descriptionJPDURATION: Duration in hoursSTATUS: Status (e.g., ACTIVE, INACTIVE)JOBTYPE: Job type (e.g., PM, CM)PLUSCJPREVNUM: Revision number
Development
Build Commands
# Build the project
npm run build
# Watch mode for development
npm run watch
# Prepare for distribution
npm run prepare
Testing
Test the MCP server connection:
node build/index.js
Troubleshooting
Connection Issues
- Verify environment variables are set correctly
- Check Maximo URL is accessible
- Validate API key has proper permissions
- Review SSL certificates (development mode disables SSL verification)
Import Failures
- Check CSV format matches required columns
- Verify job plan numbers are 12 characters or less
- Ensure required fields are populated
- Check for duplicate job plan numbers
Security Considerations
⚠️ Important Security Notes:
-
SSL Verification: Currently disabled for development. Enable for production:
httpsAgent: new https.Agent({ rejectUnauthorized: true // Enable SSL verification }) -
API Key Storage: Store API keys securely using:
- Environment variables
- Secret management systems
- Encrypted configuration files
-
Access Control: Ensure only authorized users can access the MCP server
License
MIT License - See LICENSE file for details
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.