MREF Contract Manager MCP Server
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@MREF Contract Manager MCP ServerShow me all active leases expiring this year"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
MREF Contract Manager — MCP Server
IBM Maximo Real Estate and Facilities · AI-powered contract management via Model Context Protocol
Demo
Animated SVG — plays automatically. Full console output: docs/DEMO.txt
Related MCP server: maximo-mcp-ai-integration
What it does
The MREF Contract Manager MCP Server connects IBM Bob (AI assistant) to a live IBM Maximo Real Estate and Facilities instance through OSLC REST APIs, exposing 10 tools for natural-language contract management — no manual API calls required.
"Show me all active leases expiring this year"
"Create a 5-year lease for the Chicago office starting 2026-01-01"
"Export all contracts to CSV"
"Search contracts containing termination option"
"Bulk import from contracts_q1.csv"
"Generate an executive portfolio report"Architecture
┌──────────────────────────────────────────┐
│ IBM Bob (AI Assistant) │
│ MCP Client Layer │
└──────────────────┬───────────────────────┘
│ Model Context Protocol (stdio)
┌──────────────────▼───────────────────────┐
│ mref_comprehensive_mcp_server.py │
│ FastMCP Server · 10 Tools │
└──────────────────┬───────────────────────┘
│ HTTP/HTTPS · OSLC REST
┌──────────────────▼───────────────────────┐
│ mref_oslc_client.py │
│ MREFOSLCClient · Session management │
└──────────────────┬───────────────────────┘
│ JSESSIONID cookie auth
┌──────────────────▼───────────────────────┐
│ IBM Maximo Real Estate and Facilities │
│ /p/websignon/signon │
│ /oslc/spq/cstRELeaseQC (GET) │
│ /oslc/so/cstRELeaseCF (POST) │
└──────────────────────────────────────────┘The 10 Tools
# | Tool | What it does |
1 |
| Tests authentication and API reachability |
2 |
| Retrieves all contracts with pagination |
3 |
| Filters by status, city, country, date range |
4 |
| Full-text name search across all records |
5 |
| Status / location / date breakdowns |
6 |
| Markdown or JSON report (summary / detailed / executive) |
7 |
| Creates a new contract via OSLC POST |
8 |
| (roadmap — PUT not yet implemented) |
9 |
| Exports records to a local CSV file |
10 |
| Batch-creates contracts from a CSV file |
Quick Start
1 · Prerequisites
Requirement | Version |
Python | 3.11+ |
IBM Bob | MCP-enabled build |
MREF access | Valid username + password |
2 · Install
git clone https://github.com/rjbhavar/MREF-Contract-Management-MCP
cd MREF-Contract-Management-MCP
python3.11 -m pip install -r requirements.txt3 · Configure
cp config.example.json config.json
# edit config.json → set base_url, username, passwordconfig.json is gitignored and never committed.
4 · Register with IBM Bob
Add to your workspace .bob/mcp.json:
{
"mcpServers": {
"mref-contract-manager": {
"command": "python3.11",
"args": ["-u", "/absolute/path/to/mref_comprehensive_mcp_server.py"],
"cwd": "/absolute/path/to/MREF-Contract-Management-MCP"
}
}
}5 · Verify
python3.11 test_all_operations.pyExpected: Result: 10 passed · 0 failed · 1 skipped (of 11 total)
Repository Structure
MREF-Contract-Management-MCP/
├── mref_comprehensive_mcp_server.py # FastMCP server — 10 tools
├── mref_oslc_client.py # OSLC API client
├── test_all_operations.py # End-to-end test suite
├── config.example.json # Configuration template
├── requirements.txt
├── oslc-objects/ # OSLC package — import into your instance
│ ├── MREF_Contract_OSLC_v2.zip
│ ├── cstRELeaseCF.json
│ ├── cstRELeaseQC.json
│ └── manifest.json
└── docs/
├── demo.svg # Animated terminal demo (this README)
└── DEMO.txt # Full console outputOSLC API Reference
Auth
POST /p/websignon/signon
{ "userName": "<user>", "password": "<pass>" }
→ sets JSESSIONID cookieQuery
GET /oslc/spq/cstRELeaseQC?oslc.select=*&oslc.pageSize=100Create
POST /oslc/so/cstRELeaseCF
{ "userName": "<user>", "password": "<pass>",
"spi:triNameTX": "My Lease", "spi:triIdTX": "LEASE-001", ... }Key fields: dcterms:identifier · spi:triNameTX · spi:triIdTX · spi:triCityTX · spi:triStateProvTX · spi:triCountryTX · spi:triStartDA · spi:triExpirationDA · spi:triContractStatusCL · spi:triProviderTypeLI
Object Migration
The OSLC package is bundled — no export step needed.
Log in to MREF → Tools → Administration → Object Migration → New Import Package
Upload the
.zip, click Validate, then ImportRun
python3.11 test_all_operations.pyto confirm
Full guide: OBJECT_MIGRATION_GUIDE.md
Security
Credentials stored in
config.json(gitignored, never committed)All POST payloads use
client.username/client.passwordfrom the loaded config — no hardcoded values anywhereJSESSIONID held in memory only for session lifetime
SSL cert verification configurable in
mref_oslc_client.py
Troubleshooting
Symptom | Resolution |
|
|
|
|
Tool not visible in Bob | Restart Bob; verify |
No contracts returned | Run |
License
Apache 2.0 — see LICENSE
Version: 2.3.0 · Status: ✅ Production Ready
Made with IBM Bob
This server cannot be deployed
Maintenance
Related MCP Connectors
Import, review and track renewals on your business contracts from your AI assistant.
ContractOracle - 10 contract analysis tools: clause extraction, redlines, DORA mappings.
- RenewlyOAuthgg.renewly
Read contracts, track renewals, surface vendor leverage, and draft cancellation/renewal emails.
Connect your AI assistant to governed tender and RFP dossiers: sources, versions, decisions.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceWraps IBM Maximo API services as MCP tools, enabling AI applications like Dify Agent to manage assets, work orders, and inventory through natural language interactions with enterprise asset management systems.-
- AlicenseNot gradedqualityDmaintenancehe Maximo MCP Server bridges AI agents (Claude, Cursor, Antigravity) with your IBM Maximo environment. It empowers your AI to autonomously discover Object Structures (APIs), inspect schemas, and query live data via OSLC. Instead of hallucinating field names, the AI validates queries instantly and ca29 npm9Apache 2.0
- AlicenseCqualityDmaintenanceEnables AI models to interact with IBM FileNet Content Manager for document lifecycle management, metadata extraction, legal holds, and AI-powered search, summaries, and Q\&A.26Apache 2.0
- AlicenseNot gradedqualityAmaintenanceEnables AI assistants to interact with IBM Engineering Lifecycle Management (ELM), including DOORS Next Generation, EWM, and ETM, for managing requirements, work items, tests, and project builds through natural language.MIT