ibmi-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| IBMI_SSL | No | Enable TLS | false |
| IBMI_HOST | Yes | IBM i hostname or IP | |
| IBMI_PORT | No | TN5250 port | 23 |
| IBMI_USER | No | Username for auto-signon | |
| IBMI_CODEPAGE | No | EBCDIC codepage | cp037 |
| IBMI_PASSWORD | No | Password for auto-signon | |
| IBMI_DEVICE_NAME | No | Virtual device name | |
| IBMI_TERMINAL_TYPE | No | Terminal type | IBM-3179-2 |
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
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| connectA | Connect to an IBM i system via TN5250. Args: host: IBM i hostname or IP. Defaults to IBMI_HOST env var. port: TN5250 port. Defaults to IBMI_PORT env var or 23. use_ssl: Enable TLS. Defaults to IBMI_SSL env var. Returns the initial screen after connection. |
| disconnectA | Disconnect the active TN5250 session. |
| read_screenA | Read the current 5250 screen content. Returns structured data with:
|
| send_keysB | Type text into the current input field at the cursor position. Args: text: The text to type. Returns the updated screen state. |
| send_keyA | Send an attention/function key and wait for the host response. Args: key: Key name. Valid values: Enter, F1-F24, PageUp, PageDown, Tab, Backtab, Clear, Help, Print, Attn. Returns the updated screen after the host processes the key. |
| set_cursorA | Position the cursor at the specified location. Args: row: Row number (1-based, top row is 1). col: Column number (1-based, leftmost column is 1). Returns the updated screen state. |
| upload_fileB | Upload a file from the local system to the IBM i. Args: local_path: Path to the file on the local system. remote_path: Destination path on the IBM i (IFS path). Returns status with file details, or an error. |
| download_fileB | Download a file from the IBM i to the local system. Args: remote_path: Path to the file on the IBM i (IFS path). local_path: Destination path on the local system. Returns status with file details, or an error. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 8 tools
Each tool targets a distinct operation: session management (connect, disconnect), screen interaction (read_screen, send_key, send_keys, set_cursor), and file transfer (download_file, upload_file). There is no overlap, and agents can easily distinguish which tool to use.
All tool names follow a consistent verb_noun pattern with underscores (e.g., download_file, send_keys). There is no mixing of camelCase or other conventions, making the naming predictable and easy to remember.
With 8 tools, the server covers the essential operations for IBM i terminal emulation and file transfer without being overly large or minimal. The count is well-scoped for the server's purpose.
The tool set covers the core workflow: connect, interact with the screen, transfer files, and disconnect. A minor gap is the lack of a dedicated tool for waiting on screen conditions, but agents can achieve this by combining send_key and read_screen.