Open source · since 2023

A browser terminal. Automated mainframe testing.

Open-source IBM 3270 tools for mainframe developers, testers and operators. 3270Web puts an enterprise terminal in a browser tab and uses AI to map the application behind the screens, so it can be driven in plain English. 3270Connect replays workflows headless for CI and concurrent load testing, onto a live operations console. Each is useful on its own; together they close the loop.

Self-hosted software: 3270Connect uses MIT; 3270Web uses AGPL-3.0-or-later. Your infrastructure and optional AI-provider charges are separate. 3270Web licensing options.

session · discover → replay25 workers
$3270Web ▸ mvs.example.com:992
›TN3270E negotiated · model 4 · 43x80[OK]
›AI auto-navigation exploring the host[LIVE]
›34 screens mapped · 7 business functions[OK]
›"look up account 1234" → 6 steps[OK]
›MCP · driving the same session from Claude Desktop[LIVE]
›workflow.json exported · full coverage[OK]
$3270Connect -config workflow.json -concurrent 25
›workers ramping 0 → 25[LIVE]
›2,313 workflows completed · 97.1% success[OK]
›p95 1.8s · p99 4.2s over 500 workflows[OK]
Screens mapped
34
Success
97.1%
Completed
2,313
Products
2
Each useful on its own
Licence
OSS
MIT · AGPL-3.0-or-later
Built in
Go
Single static binary
Runtime deps
0
Console served from the binary

Showcase

Watch them work

One tour per product, recorded from live sessions against the bundled sample applications — nothing is mocked. The longer walk-throughs live in each project's documentation.

3270Web in under a minute

Connect, sign on, work the screens, the command palette, and where the automation lives — recorded from a live session against the bundled sample application.

All demonstration videos
3270Connect

The 3270Connect operations console at work

An eight-worker load run launched from the browser, then the process table, the live screen flow and the charts fill in.

More walk-throughs

The products

Two products, not two halves

3270Web is an enterprise 3270 terminal that discovers your application and lets you run it in natural language. 3270Connect executes workflows at scale and measures them. Adopt either on its own — they happen to speak the same JSON and emit the same host profile.

3270Connect

Automation, load and observability

Scripted 3270 workflows that replay human online integration with configurable concurrency — as a CLI, an API server, and a live operations console served straight from the binary.

Run

  • Declarative workflow JSON — connect, fill, check, capture, disconnect
  • Concurrent execution with runtime windows, grace periods and per-workflow timeouts
  • Headless mode for CI/CD, plus verbose and failure-only diagnostics

Observe

  • Operations console with live KPIs, latency percentiles and per-process control
  • Prometheus metrics for connect and step timings, outcomes and live worker count
  • ASCII screen capture at any step for documentation and triage

Integrate

  • API server mode for orchestration and load generation
  • Host compatibility profiler emitting the shared CompatibilityProfile JSON
  • RSA token injection and per-host EBCDIC code page selection
  • Model Context Protocol server for AI-driven load testing and result analysis
Language
Go
Interfaces
CLI · API · Console · MCP
Runtime deps
None
DocumentationGitHub
Operations console — live KPIs, duration and resource charts, process intelligence

3270Web

Enterprise 3270 terminal that maps your application

An enterprise-grade 3270 terminal in the browser — no emulator install, no thick client. AI auto-navigation explores the host and maps every screen, so the application becomes addressable in plain English and its full screen coverage becomes a load profile for 3270Connect. Bring your own AI: GitHub Copilot, Claude, OpenAI, Google AI, or a model running on your own hardware.

Terminal

  • Enterprise 3270 sessions in a browser tab — nothing to install on the desktop
  • Virtual keyboard, print screen, detailed logging, and full model/size/TLS control
  • Works on a tablet — the keys a screen ends with within a thumb's reach, and a tap that places the cursor
  • Hardened by default: CSP, origin checks, CSRF and token-guarded REST

Discover

  • AI auto-navigation drives the host itself and maps every screen and transition
  • Each screen annotated with its business purpose, fields and named business functions
  • Mind-map compare diffs host divergence across environments
  • Screen snapshots diffed row by row, so a flow can be checked against the screen it used to land on

Operate & record

  • Run business functions by prompt — approval per action, or hands-free Auto Mode
  • Your choice of AI: Copilot, Claude, OpenAI, Google AI, or self-hosted Ollama
  • Full application screen coverage captured as it explores
  • Exports 3270Connect workflow JSON for performance and volume testing
  • Model Context Protocol server, so Claude Desktop can drive a session directly
Language
Go
Ships as
Docker · EXE · Binary
Interfaces
Browser · Embed · REST · AI Chat · MCP
AI providers
Copilot · Claude · OpenAI · Google · Ollama
DocumentationGitHub
A live 3270 session in the browser — session, terminal and automation controls in one menu bar

Used together

Record once. Replay everywhere.

Neither product needs the other, but this is what they do as a pair: a session you click through — or that AI maps for you — becomes a file you can commit, review and run on every build, and the same file drives a thousand parallel sessions when you need a load profile.

01 · Explore3270Web

Open the host in a browser

Connect 3270Web to a TN3270 host and click through the application — or let AI Chat and chaos mode map it for you.

Connect a host
02 · Record3270Web

Capture the session

Recording turns what you did into workflow.json: connect, field writes, AID keys, checks and disconnect.

Record and replay
03 · Replay3270Connect

Run it anywhere, at any scale

3270Connect replays the same file from your laptop, a CI job, or a fleet of load generators — headless, concurrent, timed.

Run your workflow
04 · Observe3270Connect

Watch it in the console

Live KPIs and latency percentiles on the operations console, and Prometheus metrics for everything long-running.

Read the dashboard guide

Capabilities

Everything a 3270 estate needs, without a licence server

Conversational control, automated discovery, load generation and first-class telemetry — all of it open source, all of it self-hosted.

3270Web

Conversational session control

Type an instruction in plain language. The assistant reads the screen, proposes the next action, and either waits for your approval or runs hands-free in Auto Mode. Point it at GitHub Copilot, Claude, OpenAI, Google AI, or a model on your own hardware.

Both

Drive it from your AI client

Both tools speak the Model Context Protocol, so Claude Desktop and anything else that speaks MCP can drive them directly — navigate a green screen, turn chaos exploration loose, or run a load test and read the percentiles back. One line in a config file; no browser in the loop.

Both

Skills you can write

The procedures the assistant follows are files, not prose baked into a build. Drop a folder beside the binary to teach it your transaction codes, which PF key is safe on a particular screen, or the load profile you sign releases off against — and ship a set of them to your team as an extension.

3270Web

Everyone signs in to their own mainframes

Assign published host profiles to teams, roles or named people. Somebody whose account reaches one system signs in and is on it. Somebody who reaches several meets a session manager — a real 3270 selection screen, so Enter, the PF keys and the cursor behave exactly as an operator expects, because the terminal is genuinely talking to one. Where an identity provider is configured, the teams come from the directory you already run.

3270Web

Put the terminal in your own application

Name the origins allowed to embed it and 3270Web renders inside your own portal without its own chrome, with a documented message channel so the page around it can read the screen and press keys. Or skip the frame entirely and draw the screen yourself from the JSON API. Nothing is opened until you name an origin.

3270Web

The screen-scraper you already have still fits

An HLLAPI-shaped endpoint: numbered functions, one-based presentation-space positions, and return codes where a program expects them. Code written years ago is ported by changing how it makes the call, not what it does — so a migration stops being a rewrite of every call site.

3270Web

Chaos exploration

Turn the explorer loose on an application. It walks the screen graph, persists each run, and exports a discovery report — plus workflow JSON for anything it finds.

3270Web

Business understanding

Discovered screens get annotated with their purpose and field meanings, then catalogued as named business functions such as account inquiry.

3270Connect

Prometheus metrics

A load run shows up in your dashboards like any other service — connect and step timings, workflow outcomes and live worker count, on a listener of their own.

3270Connect

Concurrency that ramps cleanly

Run hundreds of workflows in parallel for a fixed runtime, with grace periods for in-flight work and latency percentiles on the console.

3270Connect

Operations console

Live KPIs, duration and resource charts, a filterable process table, streaming logs and a command palette — served from the binary, no runtime dependencies.

Both

Same profile, both tools

The host compatibility profiler emits an identical CompatibilityProfile document from either tool, so cross-environment comparison is a plain JSON diff.

Screenshots

Interfaces worth looking at

Both products ship the same visual language — glass panels, tabular numbers, four themes and a keyboard-first console.

Operations console — live KPIs, duration and resource charts, process intelligence
Workflow duration per process and host resource utilisation, side by side
Process intelligence — progress, outcomes and per-PID controls
Command palette — export, chart capture and log streaming from the keyboard
Console logs — streamed, filtered and exportable
Workflow viewer — inspect the JSON a process is running
Amber CRT theme
Ice theme
Daylight theme — the console in full light mode

Get started

Pick a door

Both projects are open source and self-hosted — 3270Connect under MIT, 3270Web under AGPL-3.0-or-later. Each one carries its own documentation; this is just the way in.

Start here if you want to see a host

3270Web

Run it, open a browser, connect to a TN3270 host — or start a bundled sample app and explore with no mainframe at all.

Start here if you want to automate

3270Connect

Point the binary at a workflow file to replay a session — then add concurrency when it needs to become a load test in CI.