oci ghcr.io/shafthq/shaft-engine-mcp:10.3.20260826stdioMITupdated 7d ago
Reliable Java test automation, from first intent to production-grade evidence.
What can you do with shaft mcp?
SHAFT
Reliable Java test automation, from first intent to production-grade evidence.
One strong, maintainable framework for Web, Mobile, API, CLI, Database, and native testing—with synchronized actions, configuration-first execution, readable assertions, and unified reports.
Generate your first project · Explore the user guide · Star SHAFT on GitHub ⭐
SHAFT removes the repeated plumbing around drivers, waits, assertions, configuration, test data, screenshots, logs, and Allure evidence. Its modular Maven reactor keeps the core lean and lets teams add advanced tooling only when they need it.
From zero to useful evidence
-
Open the SHAFT landing page and generate a ready-to-run Maven project.
-
Extract it and run:
mvn test -
Inspect the sample result, screenshots, logs, and Allure evidence.
The generated project uses the canonical Maven coordinate io.github.shafthq:shaft-engine and gives you a repeatable baseline for local runs and CI.
One orchestration layer, every execution surface
Test intent and configuration enter SHAFT's orchestration layer, fan out across the required execution surfaces, and return through one unified evidence flow.
flowchart LR
accTitle: SHAFT execution and evidence workflow
accDescr: Test intent and configuration enter SHAFT orchestration, run across Web, Mobile, API, and Native execution surfaces, and produce unified evidence.
I[Test intent] --> S[SHAFT orchestration]
C[Configuration] --> S
S --> W[Web]
S --> M[Mobile]
S --> A[API]
S --> N[Native, CLI, and Database]
W --> E[Unified evidence]
M --> E
A --> E
N --> E
| Engineering need | What SHAFT provides |
|---|---|
| Stable UI automation | Managed Selenium and Appium drivers, synchronized actions, locator builders, screenshots, and accessibility evidence. |
| End-to-end coverage | REST, GraphQL, Database, CLI, and native desktop actions in the same test flow. |
| Trustworthy verdicts | Hard and soft assertions, structured logs, attachments, failure context, and Allure reports. |
| Scalable execution | Configuration-first local, Grid, BrowserStack, LambdaTest, TestNG, JUnit, and Cucumber runs. |
| Maintainable architecture | A focused engine, BOM-aligned optional modules, public extension points, and reusable test assets. |
| Assisted workflows | Capture, Doctor, deterministic Heal, MCP/CLI tools, provider adapters, and an IntelliJ IDEA plugin. |
Built for long-lived automation suites
- Strong defaults, explicit control. Sensible behavior gets teams moving; configuration keeps environments and CI reproducible.
- Modular by design. Start with
shaft-engine, then adopt visual, video, cloud, native, or agentic modules without rebuilding the test architecture. - Evidence is part of execution. Logs, screenshots, attachments, and reports share one lifecycle instead of becoming after-the-fact glue.
- Open and inspectable. SHAFT is MIT licensed, built in public, and guarded by its pull-request gate, security policy, and published release history.
Agent-ready, source-grounded
SHAFT ships 30 first-party skills for planning, authoring, running, diagnosing,
and reporting tests. Start with $shaft-developer; it routes the immediate job
to one focused specialist. Exact MCP names and CLI syntax are generated from
source in shaft-mcp-tools.md and
shaft-cli-commands.md.
Join the project
- Found a bug or have an idea? Open an issue.
- Want to contribute? Read CONTRIBUTING.md and our Code of Conduct.
- Found a vulnerability? Follow SECURITY.md and report it privately.
- Does SHAFT help your team? Star the repository so more automation engineers can find it.
BrowserStack, LambdaTest, Applitools, and JetBrains have provided tooling or open-source program support. This is support for the project, not a claim of financial sponsorship, customer status, or endorsement.
SHAFT is free and MIT licensed. You can support ongoing maintenance, documentation, and public infrastructure through GitHub Sponsors.
MIT licensed — see LICENSE.
Install
Add shaft mcp to your client. Pick the one you use.
claude mcp add ghcr-io-shafthq-shaft-engine-mcp-10-3-20 -- docker run -i --rm ghcr.io/shafthq/shaft-engine-mcp:10.3.20260826codex mcp add ghcr-io-shafthq-shaft-engine-mcp-10-3-20 -- docker run -i --rm ghcr.io/shafthq/shaft-engine-mcp:10.3.20260826amp mcp add ghcr-io-shafthq-shaft-engine-mcp-10-3-20 -- docker run -i --rm ghcr.io/shafthq/shaft-engine-mcp:10.3.20260826{
"mcpServers": {
"ghcr-io-shafthq-shaft-engine-mcp-10-3-20": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/shafthq/shaft-engine-mcp:10.3.20260826"
]
}
}
}Add to `claude_desktop_config.json`, then restart Claude Desktop.
{
"mcpServers": {
"ghcr-io-shafthq-shaft-engine-mcp-10-3-20": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/shafthq/shaft-engine-mcp:10.3.20260826"
]
}
}
}Add to `~/.cursor/mcp.json`, or `.cursor/mcp.json` for a single project.
code --add-mcp '{"name":"ghcr-io-shafthq-shaft-engine-mcp-10-3-20","command":"docker","args":["run","-i","--rm","ghcr.io/shafthq/shaft-engine-mcp:10.3.20260826"]}'Or add the block manually to `.vscode/mcp.json` under `servers`.
{
"mcpServers": {
"ghcr-io-shafthq-shaft-engine-mcp-10-3-20": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/shafthq/shaft-engine-mcp:10.3.20260826"
]
}
}
}Add to `~/.codeium/windsurf/mcp_config.json`.
{
"mcpServers": {
"ghcr-io-shafthq-shaft-engine-mcp-10-3-20": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/shafthq/shaft-engine-mcp:10.3.20260826"
]
}
}
}Add to `cline_mcp_settings.json` via the MCP Servers panel.
{
"mcpServers": {
"ghcr-io-shafthq-shaft-engine-mcp-10-3-20": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/shafthq/shaft-engine-mcp:10.3.20260826"
]
}
}
}Add to `~/.gemini/settings.json`.
{
"mcpServers": {
"ghcr-io-shafthq-shaft-engine-mcp-10-3-20": {
"type": "local",
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/shafthq/shaft-engine-mcp:10.3.20260826"
],
"tools": [
"*"
]
}
}
}Add to `~/.copilot/mcp-config.json`, or run `/mcp add` inside the CLI.
{
"context_servers": {
"ghcr-io-shafthq-shaft-engine-mcp-10-3-20": {
"command": {
"path": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/shafthq/shaft-engine-mcp:10.3.20260826"
]
}
}
}
}Add to your Zed `settings.json`.
docker run -i --rm ghcr.io/shafthq/shaft-engine-mcp:10.3.20260826Run `goose configure`, choose **Add Extension → Command-line Extension**, and paste this command.
Score
39 / 100
Incomplete
- Documentation25/25
- Maintenance25/25
- Trust16/20
- Capability0/15
- Install experience12/15
- Documents what it does and how to connect
- Has a resolvable package or endpoint
- Exposes at least one tool, prompt or resource
- README has substantive content
- Includes a code example
- Documents its configuration
- Mentions credentials or security posture
- Last commit 0 days ago
- Has a release history
- Repository is not archived
- Licensed MIT
- Namespace verified in the official MCP registry
- Claimed by its owner
- Published under an organisation
- 0 tool(s) documented
- Provides prompt templates
- Provides resources
- 12 documented install method(s)
- Published to a package registry
- Offers a hosted endpoint — no local install
Version history
| Versions | Published |
|---|---|
| 10.3.20260826Latest | Aug 26, 2026 |
| 10.3.20260824 | Aug 24, 2026 |
| 10.3.20260820 | Aug 20, 2026 |
| 10.3.20260818 | Aug 18, 2026 |
| 10.3.20260817 | Aug 16, 2026 |
| 10.3.20260809 | Aug 9, 2026 |
| 10.3.20260806 | Aug 9, 2026 |
| 10.3.20260801 | Aug 2, 2026 |
| 10.3.20260728 | Jul 28, 2026 |
| 10.3.20260727 | Jul 27, 2026 |
| 10.3.20260722 | Jul 22, 2026 |
| 10.3.20260719 | Jul 19, 2026 |
| 10.3.20260717 | Jul 18, 2026 |
| 10.3.20260716 | Jul 16, 2026 |
| 10.3.20260715 | Jul 15, 2026 |
| 10.3.20260714 | Jul 15, 2026 |
| 10.3.20260713 | Jul 13, 2026 |
| 10.3.20260712 | Jul 12, 2026 |
| 10.3.20260711 | Jul 11, 2026 |
| 10.3.20260710 | Jul 10, 2026 |
| 10.3.20260709 | Jul 9, 2026 |
| 10.3.20260708 | Jul 8, 2026 |
| 10.3.20260707 | Jul 7, 2026 |
| 10.3.20260705 | Jul 5, 2026 |
| 10.3.20260703 | Jul 3, 2026 |
| 10.3.20260702 | Jul 3, 2026 |
| 10.2.20260628 | Jun 28, 2026 |
| 10.2.20260627 | Jun 28, 2026 |
| 10.2.20260623 | Jun 23, 2026 |
| 10.2.20260622 | Jun 22, 2026 |
| 10.2.20260621 | Jun 21, 2026 |
| 10.2.20260620 | Jun 19, 2026 |
| 10.2.20260618 | Jun 18, 2026 |
| 10.2.20260617 | Jun 17, 2026 |
| 10.2.20260615 | Jun 15, 2026 |
| 10.2.20260614 | Jun 14, 2026 |
| 10.2.20260612 | Jun 12, 2026 |
| 10.2.20260506 | Jun 10, 2026 |
| 10.2.20260501 | May 5, 2026 |
| 10.2.20260424 | May 2, 2026 |
| 10.2.20260422 | Apr 22, 2026 |
| 10.1.20260331 | Apr 9, 2026 |
| 10.1.20260324 | Mar 26, 2026 |
| 10.1.20260319 | Mar 19, 2026 |
| 10.1.20260315 | Mar 15, 2026 |
| 10.1.20260312 | Mar 14, 2026 |
| 9.4.20251116 | Nov 16, 2025 |