Skip to main content
Glama
SH4RKKK

ibm-i-5250-mcp

by SH4RKKK

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
IBMI_HOSTYesIBM i host or IP address
IBMI_USERYesUser profile for signing on
IBMI_PASSWORDYesPassword for the user profile
IBMI_5250_MENUNoMenu to show at sign on
IBMI_5250_PORTNoTelnet port; 992 for TLS, 23 for plain23
IBMI_5250_CCSIDNoEBCDIC code page37
IBMI_ALLOWED_CLNoAdditional commands allowed in restricted mode
IBMI_BLOCKED_CLNoCommands blocked when restricted mode is off
IBMI_RESTRICTEDNoEnable restricted mode (allowlist of commands)true
IBMI_5250_CURLIBNoCurrent library to set at sign on
IBMI_5250_DEVICENoVirtual device to claim; if not set, the host picks a QPADEVxxxx
IBMI_5250_VIEWERNoEnable the live view pagefalse
IBMI_5250_PROGRAMNoProgram to call at sign on
IBMI_5250_TERMINALNoTerminal type to negotiateIBM-3477-FC
IBMI_MCP_CONFIG_DIRNoPath to a folder containing configuration files
IBMI_5250_VIEWER_PORTNoPort for the live view page5250
IBMI_5250_TLS_INSECURENoAccept any certificate when using TLS (992)false

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": true
}
logging
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
session_openA

Open a 5250 session to an IBM i and sign on, then return the first screen. Also starts a live view in the browser so a human can watch what you do. Returns a screen snapshot: the literal 24x80 screen plus a field list with refs you use in screen_do.

screen_snapshotA

Return the current screen without changing anything: the literal screen text, the field list with refs, the cursor position, the keyboard state and any message line. Use this to look before acting.

screen_doA

Drive the screen: type into fields, move the cursor and press keys, in one call. Actions run in order and only the final screen comes back, so put a whole interaction in one call instead of one action per call.

Each action is a line: "type f1: ACME LTD" put text in a field, by ref from the snapshot, by "row,col", or by DDS name once known "key: Enter" Enter, F1 to F24, PageUp, PageDown, Help, Clear, Print "cursor: 6,53" move the cursor, which is an argument to the key: Help on a message line explains that message, Help anywhere else explains the field under it

Typing sends nothing to the host. A 5250 holds it locally and transmits only on a key, so ["type f1: ACME", "type f2: 100", "key: Enter"] is one exchange with the box, not three. If an action fails the run stops there and the error names it, with the screen as it stands.

session_closeA

Sign off and close the session, releasing the virtual device. Always do this when finished: just dropping the connection leaves a disconnected interactive job on the box, so the next run meets an "Attempt to Recover Interactive Job" screen instead of the application, and it holds licensed interactive capacity.

run_testsA

Replay screen regression tests against a program and report what passed. A test is a Markdown file with 5250-do blocks (the same action lines screen_do takes) and 5250-expect blocks (checks against the screen that came back), so it reads as a specification. Use this after compiling a change to see whether the display behaviour it was supposed to keep still holds, or before making one to write the expected screens first and watch them fail. Opens its own session and closes it, unless you pass session to reuse one that is already open.

list_serversA

List the configured IBM i servers, named by the .env. files on disk, plus the keys screen_do accepts.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A4.3/5.0

Scored across 6 tools

Disambiguation5/5

Each tool owns a distinct responsibility: session lifecycle (open/close), passive inspection (screen_snapshot), active interaction (screen_do), regression testing (run_tests), and configuration (list_servers). Even though screen_snapshot and screen_do both return screens, one is inspect-only and the other is action-driven, so there is no real ambiguity.

Naming Consistency3/5

The resource-prefixed names like session_open, session_close, and screen_do are readablearke, but the convention is not uniform: screen_snapshot is a noun phrase while run_tests and list_servers use verb_noun order. All names share lowercase snake_case, but an agent cannot consistently predict whether the verb appears first or last.

Tool Count5/5

Six tools is well-scoped for a 5250 automation server: session lifecycle, inspection, action, testing, and server discovery each get one clear tool. There is no redundancy or bloat, and each tool earns its place.

Completeness5/5

The surface covers the full session lifecycle and interaction loop: open, snapshot, act, close, plus regression testing and server discovery. screen_do's combined action syntax handles typing, cursor movement, and keys in one exchange, so there are no obvious dead ends for the intended domain.

Maintenance

ActivityMaintained
ResponsivenessNo issues