Skip to main content

rigosis-smax-mcp

MCP server for OpenText SMAX, distributed as two deterministic entry points — the command you run determines the toolset permanently, with no runtime probing or switching:

  • smax-mcp-agent — work with EMS records (Incidents, Requests, Changes, People, Devices, custom types), comments, and attachments from any MCP client; fifteen generic tools including live schema discovery (describe_entity, list_entity_types) and warn-first write validation; requires the "Access OData API" role.
  • smax-mcp-user — 11 self-service (ESS) portal tools, live-verified against a real tenant; no OData role needed.

rigosis-smax-mcp is developed and licensed by Rigosis for integration with OpenText™ Service Management software, formerly known as SMAX. It is not an OpenText product.

Requirements

  • uv (provides uvx; installs its own Python)
  • A SMAX user and a Personal Access Token (Service Portal → Personal Access Tokens), or username/password. smax-mcp-agent additionally needs the "Access OData API" role; smax-mcp-user does not.

Quick setup (recommended)

uvx --refresh --from rigosis-smax-mcp smax-mcp-setup

An interactive wizard: asks for your connection details, tests them live against your tenant, writes the Claude Desktop config for you (backing up any existing file), and prints ready-to-paste snippets for every other MCP client. It installs the end-user toolset (smax-mcp-user) by default; operators run smax-mcp-setup --agent instead to wire up smax-mcp-agent. If it ends with a success confirmation, you're done — the sections below are the manual alternative.

Migrating from 0.8.x

The old single smax-mcp command and its mode-switching environment variable are gone; rerun smax-mcp-setup to regenerate your client config.

Verify your setup first

uvx --from rigosis-smax-mcp smax-mcp-verify --profile agent   # or --profile user

This checks configuration and authenticates against your tenant before you wire up any client. It reads the environment variables below (a .env file found from the working directory upward also works). --profile also checks that profile's API surface: user does one harmless ESS read; agent checks EMS Request access — a 403 there prints a warning but still exits 0 (a restricted agent account is still a valid agent login); any other failure exits 1.

Configuration

Variable Meaning
SMAX_MCP_BASE_URL e.g. https://smax.example.com (required)
SMAX_MCP_TENANT_ID numeric tenant id (required)
SMAX_MCP_USERNAME Service Portal login (required)
SMAX_MCP_PAT Personal Access Token — recommended; paired with the username that created it
SMAX_MCP_PASSWORD alternative to PAT: password auth (JWT fetched automatically)
SMAX_MCP_VERIFY_SSL default true
SMAX_MCP_CA_BUNDLE CA bundle path for private CAs
SMAX_MCP_READ_ONLY true registers only read tools (default false)
SMAX_MCP_ATTACHMENTS_DIR sandbox directory for attachment upload/download (required for attachment tools)
SMAX_MCP_MAX_ATTACHMENT_MB default 10
SMAX_MCP_SKIP_SCHEMA_CHECK true disables the warn-only pre-write schema check
SMAX_MCP_SETUP_PROFILE smax-mcp-setup only — prefill the profile (user or agent) for admin-distributed setup commands; --agent on the command line wins over it. Never used by the servers or written into the generated config
SMAX_MCP_LANG Force the assistant's response language (a base code like tr, de, fr); overrides the profile locale. Unset = auto-detect from the user's SMAX profile. Written into the config when prefilled; also the default for the wizard's display language
SMAX_MCP_SETUP_LANG smax-mcp-setup only — override the wizard's display language (en/tr); defaults to SMAX_MCP_LANG. Never written into the generated config
SMAX_MCP_SYSTEM_NAME Customer-facing name your org calls this system (default SMAX, e.g. DODESK). The assistant uses it in user-facing wording; "OpenText SMAX" stays the technical product name. Written into the generated config and returned by whoami

Preconfigured install. An admin can bake the whole org setup into one command by pre-setting SMAX_MCP_BASE_URL, SMAX_MCP_TENANT_ID, SMAX_MCP_SYSTEM_NAME, SMAX_MCP_SETUP_PROFILE, and SMAX_MCP_LANG; the wizard then skips every question (and, when the profile is preset, the profile-confirmation prompt) and each end user only types their username and token. SMAX_MCP_LANG sets both the wizard's display language and the assistant's runtime response language, so one variable covers a single-language org. Without SMAX_MCP_LANG, smax-mcp-user auto-detects the response language from the signed-in user's SMAX profile (person/me Locale).

Use a least-privilege SMAX integration account — every tool acts as that one configured user.

Connect an MCP client

The server speaks MCP over stdio. Pick the command for your profile — smax-mcp-agent (shown below) or smax-mcp-user. Generic client configuration:

  • command: uvx
  • args: ["--from", "rigosis-smax-mcp", "smax-mcp-agent"]
  • environment: the variables above

Claude Code:

claude mcp add smax \
  --env SMAX_MCP_BASE_URL=https://smax.example.com \
  --env SMAX_MCP_TENANT_ID=123456789 \
  --env SMAX_MCP_USERNAME=integration.user \
  --env SMAX_MCP_PAT=your-token \
  --env SMAX_MCP_ATTACHMENTS_DIR=/path/to/attachments \
  -- uvx --from rigosis-smax-mcp smax-mcp-agent

Claude Desktop (claude_desktop_config.json):

{
  "mcpServers": {
    "smax": {
      "command": "uvx",
      "args": ["--from", "rigosis-smax-mcp", "smax-mcp-agent"],
      "env": {
        "SMAX_MCP_BASE_URL": "https://smax.example.com",
        "SMAX_MCP_TENANT_ID": "123456789",
        "SMAX_MCP_USERNAME": "integration.user",
        "SMAX_MCP_PAT": "your-token",
        "SMAX_MCP_ATTACHMENTS_DIR": "C:\\smax-attachments"
      }
    }
  }
}

Windows note: SMAX_MCP_ATTACHMENTS_DIR takes a normal Windows path; create the directory before first use.

In a session, call whoami first as a connectivity smoke test.

Support

Contact your Rigosis representative. Use of this software is governed by the LICENSE file and your agreement with Rigosis Information Systems.

Release files for rigosis-smax-mcp 0.9.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for rigosis-smax-mcp 0.9.2
File Size Uploaded
rigosis_smax_mcp-0.9.2.tar.gz 58.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for rigosis-smax-mcp 0.9.2
File Interpreter ABI Platform
rigosis_smax_mcp-0.9.2-py3-none-any.whl Python 3 none any Details

Total release size: 117.9 kB

Release files / rigosis_smax_mcp-0.9.2.tar.gz

Download URL rigosis_smax_mcp-0.9.2.tar.gz
Size 58.9 kB
Tags Source
SHA-256 checksum
How to use checksums
902701dd502c6076a5123a8d0a2fcfa1d534fa0973f47d27d4ad77b02aa25da5
BLAKE2b-256 checksum
How to use checksums
4d64c359a6afeabf5c9546ae6a8bf1d6b03cde3f580465a8ca352be82955e8c3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 30, 2026.

Transparency log

Release files / rigosis_smax_mcp-0.9.2-py3-none-any.whl

Download URL rigosis_smax_mcp-0.9.2-py3-none-any.whl
Size 59.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
e4d874ad7add63578d492f1830fc777b7b460a0dbbf2d9569faa01e1f82d70e8
BLAKE2b-256 checksum
How to use checksums
b6bb534272e0cee204e6913b6097b4f530fec12ee8ca1cd9e5b83652c0435e86
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 30, 2026.

Transparency log

Release history Release notifications | RSS feed

0.15.0

2 release files

0.13.1

2 release files

0.13.0

2 release files

0.12.0

2 release files

0.11.0

2 release files

0.10.0

2 release files

This release

0.9.2 This release

2 release files

0.9.1

2 release files

0.9.0

2 release files

0.8.1

2 release files

0.7.2

2 release files

0.7.1

2 release files

0.7.0

2 release files

0.6.4

2 release files

0.6.3

2 release files

0.6.2

2 release files

0.6.1

2 release files

0.6.0

2 release files

0.5.0

2 release files

0.4.2

2 release files

0.4.1

2 release files

0.3.4

2 release files

0.3.3

2 release files

0.3.2

2 release files

0.3.1

2 release files

0.3.0

2 release files

0.2.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page