
georgepearse/mcp-tui-test
Developer tools이 페이지는 AI로 자동 번역되었습니다. 기술적인 세부 사항은 원문을 확인하세요. 원문 보기
테스트 터미널 사용자 인터페이스를 위한 MCP 서버 - Playwright와 같은 TUI 애플리케이션
개요
MCP(Model Context Protocol) 서버는 터미널 사용자 인터페이스(TUI) 애플리케이션을 테스트할 수 있는 AI 조수를 가능하게 합니다. 이 서버는 TUI 응용 프로그램을 실행하고 상호 작용하고, TUI 응용 프로그램을 검증하는 도구를 제공합니다. - : 스트림 모드 (클릭 도구) 또는 버퍼 모드 (위치 인식을 가진 전체 TUI) 중에서 선택하십시오. - : 구성 가능한 크기로 터미널 기반 응용 프로그램을 시작하십시오. : 사용자 입력, 특수 키 및 제어 조합을 시뮬레이션하십시오. - : 현재 터미널 디스플레이를 읽고 분석하십시오. : 특정 화면 좌표 (부퍼 모드)에서 텍스트를 검증합니다. - : 실시간 모니터 커서 위치 (부퍼 모드) - : 비동기적으로 특정 콘텐츠에 대한 대기 - : Verify는 동시에 TUI 출력 응용 프로그램에서 수행됩니다. - 베스트 : CLI 도구, 명령 줄 응용 프로그램, 간단한 대화 형 프로그램 - 용도 : 스트림 기반 테스트를 위한 pexpect - 특징 : 텍스트 일치, 패턴 대기, 출력 캡처 - 예제 사용 사례 : git, npm, grep, ...
개요(AI 번역)
**Like Playwright, 하지만 터미널 사용자 인터페이스 **
MCP(Model Context Protocol) 서버는 터미널 사용자 인터페이스(TUI) 애플리케이션을 테스트할 수 있는 AI 조수를 가능하게 합니다. 이 서버는 TUI 응용 프로그램을 실행하고 상호 작용하고, TUI 응용 프로그램을 검증하는 도구를 제공합니다.
. . . . . . . . . . . . . . . . . . .
특징
-Dual Testing Mode: 스트림 모드(클릭 도구) 또는 버퍼 모드(위치 인식을 가진 전체 TUI) 중에서 선택하십시오. -Launch TUI 응용 프로그램: configurable 차원을 가진 어떤 맨끝 근거한 신청 시작
- ** 키보드 입력 ** : 사용자 입력, 특수 키 및 제어 조합을 시뮬레이션
- Capture Screen Output: 현재 단말 표시를 읽고 분석
- Position-Based Testing: 특정 화면 좌표(buffer mode)에서 텍스트를 검증 -Cursor Tracking: 실시간 모니터 커서 위치(부퍼 모드)
- ** 텍스트에 대한 경고**: 비동기적으로 나타나는 특정한 내용을 기다립니다
- 등록: 예상된 내용이 출력에 있음을 확인합니다.
- Session Management: 여러 TUI 애플리케이션을 동시에 실행
테스트 모드
스트림 모드 (기본값)
- 베스트 : CLI 도구, 명령줄 응용 프로그램, 간단한 대화형 프로그램
이 페이지는 AI로 자동 번역되었습니다. 기술적인 세부 사항은 원문을 확인하세요.
README
원문 README의 일부입니다. 원문 보기.
MCP TUI Test
Like Playwright, but for Terminal User Interfaces
An MCP (Model Context Protocol) server that enables AI assistants to test Terminal User Interface (TUI) applications. This server provides tools to launch, interact with, and verify TUI applications programmatically.
Features
- Dual Testing Modes: Choose between stream mode (for CLI tools) or buffer mode (for full TUIs with position awareness)
- Launch TUI Applications: Start any terminal-based application with configurable dimensions
- Send Keyboard Input: Simulate user typing, special keys, and control combinations
- Capture Screen Output: Read and analyze the current terminal display
- Position-Based Testing: Verify text at specific screen coordinates (buffer mode)
- Cursor Tracking: Monitor cursor position in real-time (buffer mode)
- Wait for Text: Asynchronously wait for specific content to appear
- Assertions: Verify that expected content is present in the output
- Session Management: Run multiple TUI applications simultaneously
Testing Modes
Stream Mode (Default)
- Best for: CLI tools, command-line applications, simple interactive programs
- Uses: pexpect for stream-based testing
- Features: Text matching, pattern waiting, output capture
- Example use cases: git, npm, grep, interactive shell scripts
Buffer Mode
- Best for: Full TUI applications, ncurses apps, dialog boxes, menus
- Uses: pexpect + pyte for screen buffer emulation
- Features: All stream features PLUS position-based assertions, cursor tracking, region extraction
- Example use cases: htop, vim, dialog, interactive menus
When to use which mode:
- Use stream mode for applications that output text sequentially
- Use buffer mode for applications that draw complex UIs with cursor movement
Installation
Prerequisites
- Python 3.10 or higher
- uv
Install
Once published to PyPI, no install is needed — run it straight from uvx:
uvx mcp-tui-test
For development:
uv venv
source .venv/bin/activate
uv pip install -e ".[dev]"
Go implementation
A sibling Go implementation lives in go/ — the same tool contract
(same tool names, same structured result shapes, same tui://{session_id}/screen
resource), as a single static binary with zero runtime dependencies:
go install github.com/GeorgePearse/mcp-tui-test/go/cmd/mcp-tui-test@latest
{
"mcpServers": {
"tui-test": { "command": "mcp-tui-test" }
}
}
Built on the official Go MCP SDK,
creack/pty, and vt10x for buffer-mode screen emulation. The Python package
remains the home of the pytest plugin; the two share the tool schema, so clients
can’t tell them apart.
Structured results
Every tool returns structured content (with an output schema), not prose: a
설치
uvx mcp-tui-test설정
{
"mcpServers": {
"tui-test": { "command": "mcp-tui-test" }
}
}