Allows running Jest test suites as repository-based verification tests within visual automation workflows.
Supports executing pytest frameworks as part of repository-based verification tests for automation tasks.
Provides tools for executing arbitrary Python code with dependency isolation and custom Python-based verification logic.
Enables the migration of task run and execution logs from JSONL format into SQLite databases for structured storage.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Qontinui MCP Serverload the login workflow config and run it on my primary monitor"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
qontinui-mcp
Lightweight MCP server for Qontinui Runner - enables AI-driven visual automation.
Installation
Quick Start
Start the Qontinui Runner (desktop application)
Configure your AI client (Claude Desktop, Claude Code, Cursor, etc.)
Add to your MCP configuration:
Run workflows via AI
The AI can now:
Load workflow configuration files
Run visual automation workflows
Monitor execution status
Control which monitor to use
Configuration
Environment variables:
Variable | Description | Default |
| Runner host address | Auto-detected (WSL-aware) |
| Runner HTTP port |
|
| Directory for automation results |
|
| Directory for dev logs |
|
Features
Area A: SSE Event Streaming
Real-time event streaming via Server-Sent Events (SSE) for monitoring workflow execution.
Endpoint: /sse/events
Client Usage:
Event Types:
qontinui/execution_started- Workflow beginsqontinui/execution_progress- Step completionqontinui/execution_completed- Workflow endsqontinui/test_started- Test beginsqontinui/test_completed- Test endsqontinui/image_recognition- Match found/failedqontinui/error- Error occursqontinui/warning- Non-fatal issue
Area B: MCP Prompts
Parameterized prompt templates for common automation tasks. Prompts aggregate context from the runner to provide structured debugging, analysis, and verification workflows.
Prompt | Description | Arguments |
| Analyze a test failure with structured debugging approach |
|
| Visual analysis of a screenshot for UI verification |
|
| Structured workflow to fix a failing Playwright test |
|
| Verify current GUI state matches expected workflow state |
|
| Generate a verification test for a UI behavior |
|
| Review automation run results and identify issues |
|
| Debug template matching and image recognition issues |
|
| Task status summary with execution progress |
|
| Analyze why a verification criterion failed |
|
| Generate a verification plan for a feature |
|
Area C: Tool Caching
Version-based tool caching to optimize MCP tool list requests.
Endpoint: /tool-version
Response:
The MCP server caches tools and invalidates the cache when:
The runner's tool version changes (config loaded, tests added/removed)
Cache is older than 5 minutes (fallback)
Area E: Permission System
Fine-grained permission control for tool calls inspired by OpenCode's permission system.
Permission Levels:
Level | Description | Example Tools |
| Safe operations that only read data |
|
| Operations that run workflows or tests |
|
| Operations that change data |
|
| Operations that can disrupt execution |
|
Configuration:
Area F: MCP Resources
Read-only data access via URI scheme for accessing runner data.
URI Scheme: qontinui://{type}/{id}
Resource Types:
URI Pattern | Description | MIME Type |
| Currently loaded workflow configuration |
|
| JSONL log files (general, actions, image-recognition, playwright) |
|
| Screenshot metadata and file paths |
|
| Verification test definitions |
|
| DOM capture HTML content |
|
| Task run details |
|
Area G: Inline Python Execution
Execute arbitrary Python code with optional dependency isolation via uvx.
Tool: execute_python
Parameters:
code(required): Python code to executedependencies: List of pip packages to installtimeout_seconds: Execution timeout (default: 30)working_directory: Working directory for execution
Example:
Area H: Agent Spawning
Hierarchical task decomposition by spawning sub-agents with focused tasks.
Tool: spawn_sub_agent
Parameters:
task(required): Task description for the sub-agenttools: List of tool names to restrict the sub-agent tomax_iterations: Maximum turns/iterations (default: 10)context: Additional context to provide
Example:
Available Tools
Core Tools
Tool | Permission | Description |
| READ_ONLY | Get runner status |
| READ_ONLY | List available monitors |
| MODIFY | Load a workflow configuration file |
| MODIFY | Load config if not already loaded |
| READ_ONLY | Get loaded configuration info |
| EXECUTE | Run a workflow by name |
| DANGEROUS | Stop current execution |
Task Management Tools
Tool | Permission | Description |
| READ_ONLY | Get all task runs |
| READ_ONLY | Get specific task run details |
| READ_ONLY | Get events for a task run |
| READ_ONLY | Get screenshots for a task run |
| READ_ONLY | Get Playwright results for a task run |
| EXECUTE | Migrate JSONL logs to SQLite |
Automation Run Tools
Tool | Permission | Description |
| READ_ONLY | Get recent automation runs |
| READ_ONLY | Get specific automation run details |
Test Management Tools
Tool | Permission | Description |
| READ_ONLY | List all verification tests |
| READ_ONLY | Get test by ID |
| EXECUTE | Execute a verification test |
| READ_ONLY | List test results |
| READ_ONLY | Get test history summary |
| MODIFY | Create a new verification test |
| MODIFY | Update an existing test |
| MODIFY | Delete a verification test |
Test Types:
playwright_cdp- Browser DOM assertions using Playwrightqontinui_vision- Visual verification using image recognitionpython_script- Custom Python verification logicrepository_test- Run pytest, Jest, or other test frameworks
Log Tools
Tool | Permission | Description |
| READ_ONLY | List available screenshots |
| READ_ONLY | Read runner JSONL log files |
Log Types:
general- General executor eventsactions- Workflow action/tree eventsimage-recognition- Image recognition results with match detailsplaywright- Playwright test execution results
DOM Capture Tools
Tool | Permission | Description |
| READ_ONLY | List DOM captures |
| READ_ONLY | Get DOM capture metadata |
| READ_ONLY | Get DOM capture HTML content |
AWAS (AI Web Action Standard) Tools
Tools for interacting with websites that support the AWAS standard.
Tool | Permission | Description |
| EXECUTE | Discover AWAS manifest for a website |
| READ_ONLY | Check if a website supports AWAS |
| READ_ONLY | List available AWAS actions |
| EXECUTE | Execute an AWAS action |
Advanced Tools
Tool | Permission | Description |
| EXECUTE | Execute inline Python code |
| EXECUTE | Spawn a sub-agent with a specific task |
Example Usage
Basic Workflow Execution
Test-Driven Verification
Automation Analysis
Development
Architecture
The MCP server is a thin wrapper that:
Exposes runner capabilities via MCP protocol
Provides permission control for tool calls
Caches tool definitions for performance
Aggregates context for structured prompts
Streams events via SSE for real-time monitoring
License
MIT