Mainframe MCP Server
by notharshhaaio.github.NotHarshhaa/mainframe-mcp-serverv2.5.0
MCP server for IBM z/OS jobs, datasets, USS, and operational diagnostics via Zowe SDK.
context tax
queued
security
queued
cold start
queued
freshness
Slowing4mo ago
Install Mainframe MCP server
Install in Claude Code
claude mcp add mainframe -e ZOSMF_HOST='<zosmf-host>' -e ZOSMF_PASSWORD='<zosmf-password>' -e ZOSMF_TOKEN='<zosmf-token>' -- npx -y @notharshhaa/mainframe-mcp-serverInstall in Cursor
{
"mcpServers": {
"mainframe": {
"command": "npx",
"args": [
"-y",
"@notharshhaa/mainframe-mcp-server"
],
"env": {
"ZOSMF_HOST": "<zosmf-host>",
"ZOSMF_PASSWORD": "<zosmf-password>",
"ZOSMF_TOKEN": "<zosmf-token>"
}
}
}
}Add to ~/.cursor/mcp.json (global) or .cursor/mcp.json (project).
Install in Claude Desktop
{
"mcpServers": {
"mainframe": {
"command": "npx",
"args": [
"-y",
"@notharshhaa/mainframe-mcp-server"
],
"env": {
"ZOSMF_HOST": "<zosmf-host>",
"ZOSMF_PASSWORD": "<zosmf-password>",
"ZOSMF_TOKEN": "<zosmf-token>"
}
}
}
}Settings → Developer → Edit Config (claude_desktop_config.json), then restart.
Install in VS Code
{
"servers": {
"mainframe": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@notharshhaa/mainframe-mcp-server"
],
"env": {
"ZOSMF_HOST": "<zosmf-host>",
"ZOSMF_PASSWORD": "<zosmf-password>",
"ZOSMF_TOKEN": "<zosmf-token>"
}
}
}
}Add to .vscode/mcp.json in your workspace.
Install in Windsurf
{
"mcpServers": {
"mainframe": {
"command": "npx",
"args": [
"-y",
"@notharshhaa/mainframe-mcp-server"
],
"env": {
"ZOSMF_HOST": "<zosmf-host>",
"ZOSMF_PASSWORD": "<zosmf-password>",
"ZOSMF_TOKEN": "<zosmf-token>"
}
}
}
}Add to ~/.codeium/windsurf/mcp_config.json.
Configuration
| Variable | Required | Secret | Description |
|---|---|---|---|
| ZOSMF_HOST | yes | — | z/OSMF hostname or IP address |
| ZOSMF_PORT | — | — | z/OSMF HTTPS port (default 443) |
| ZOSMF_BASE_PATH | — | — | Optional API gateway or mediation layer prefix for z/OSMF |
| ZOSMF_USER | — | — | z/OS user id (required with ZOSMF_PASSWORD unless ZOSMF_TOKEN is set) |
| ZOSMF_PASSWORD | — | yes | Password for basic auth (required with ZOSMF_USER unless ZOSMF_TOKEN is set) |
| ZOSMF_TOKEN | — | yes | Auth token (alternative to user/password) |
| ZOSMF_TOKEN_TYPE | — | — | Token type when using ZOSMF_TOKEN (e.g. LTPA2) |
| ZOSMF_REJECT_UNAUTHORIZED | — | — | Verify TLS certificates (true in production) |
| LOG_LEVEL | — | — | Log level: fatal, error, warn, info, debug, trace, silent |
| MCP_TRANSPORT | — | — | Transport: stdio (IDE) or sse (container/network) |
| MCP_SSE_PORT | — | — | Listen port when MCP_TRANSPORT=sse |
| MAX_JOB_OUTPUT_LINES | — | — | Max lines returned from a single spool DD |
| MAX_DATASET_READ_LINES | — | — | Max lines returned from dataset or USS reads |
| MAX_JES_SPOOL_FILES | — | — | Max spool files fetched during diagnostics |
| MAX_AUDIT_LINES | — | — | Max RACF audit log lines per query |
| CMCI_CONTEXT | — | — | CICSplex name or region APPLID (required for CICS tools) |
| CMCI_HOST | — | — | CMCI hostname (defaults to ZOSMF_HOST) |
| CMCI_PORT | — | — | CMCI HTTPS port (default 1490) |
| CMCI_BASE_PATH | — | — | CMCI REST base path |
| DB2_LOCATION | — | — | Db2 subsystem location name (required for Db2 tools) |
| DB2_HOST | — | — | Db2 REST hostname (defaults to ZOSMF_HOST) |
| DB2_PORT | — | — | Db2 REST port (default 50400) |
| DB2_BASE_PATH | — | — | Db2 REST base path |
| SMF_SUMMARY_DATASET | — | — | Optional SMF summary dataset for offline metrics |
| RMF_METRICS_ENABLED | — | — | Query z/OSMF RMF metrics when available |
| RACF_AUDIT_USS_PATH | — | — | USS path to RACF audit log file |
| RACF_AUDIT_DATASET | — | — | Sequential dataset containing RACF audit records |
| SECURITY_READ_ONLY | — | — | When true, blocks write tools such as submit_jcl |
| SECURITY_ALLOWED_TOOLS | — | — | Comma-separated allowlist of MCP tool names |
| SECURITY_BLOCKED_TOOLS | — | — | Comma-separated blocklist of MCP tool names |
| SECURITY_ALLOWED_DATASET_PATTERNS | — | — | Comma-separated dataset patterns (e.g. USERDEV.*,SYS1.*) |
| SECURITY_ALLOWED_USS_PATHS | — | — | Comma-separated USS path prefixes |
| SECURITY_AUDIT_LOGGING | — | — | Log every tool invocation to stderr (SIEM-friendly JSON) |
| SECURITY_MAX_JCL_BYTES | — | — | Maximum inline JCL size for submit_jcl |
Freshness
Slowing — last maintenance signal 4mo ago. The newest of the signals below sets the band.
Last commit (default branch)
no data · GitHub
Latest release
no data · GitHub
Package published
no data · npm/PyPI
Registry entry updated
2026-06-08 · 4mo ago · official registry · v2.5.0
FAQ
›How do I install the Mainframe MCP server in Claude Code?
Run: claude mcp add mainframe -e ZOSMF_HOST='<zosmf-host>' -e ZOSMF_PASSWORD='<zosmf-password>' -e ZOSMF_TOKEN='<zosmf-token>' -- npx -y @notharshhaa/mainframe-mcp-server. For Cursor, VS Code, Claude Desktop and Windsurf, use the install tabs above.
›Does Mainframe require an API key?
Yes. It expects ZOSMF_HOST, ZOSMF_PASSWORD, ZOSMF_TOKEN, of which 2 are secrets.
›Can I use Mainframe as a remote (hosted) MCP server?
No hosted endpoint is published; it runs locally over stdio.
›Is Mainframe in the official MCP registry?
Yes, as io.github.NotHarshhaa/mainframe-mcp-server.