Skip to main content
Glama
vitron-ai

alethia-mcp

Official
by vitron-ai

@vitronai/alethia

Agent-native E2E with verifiable safety. Your agent drives a real browser with plain English, and destructive actions are blocked by a safety gate you can prove works — with a signed audit trail and no cloud.

npm version License: MIT Patent Pending GitHub


Install

Claude Code — fastest path:

mkdir -p ~/.claude/skills/alethia && \
  curl -fsSL https://raw.githubusercontent.com/vitron-ai/alethia-mcp/main/skills/alethia/SKILL.md \
    -o ~/.claude/skills/alethia/SKILL.md

Restart Claude Code. Next time you ask it to test a page, it notices Alethia isn't configured yet and walks you through installing the bridge itself.

Everyone else (Claude Desktop, Cursor, Cline, Continue):

npm install -g @vitronai/alethia

Then add this to your client's MCP config:

{
  "mcpServers": {
    "alethia": {
      "command": "alethia-mcp"
    }
  }
}

Client

Config file

Claude Code

~/.claude/mcp.json

Claude Desktop (macOS)

~/Library/Application Support/Claude/claude_desktop_config.json

Claude Desktop (Windows)

%APPDATA%\Claude\claude_desktop_config.json

Claude Desktop (Linux)

~/.config/Claude/claude_desktop_config.json

Cursor

Settings → MCP → Add server (paste the inner "alethia": {...} object only, no mcpServers wrapper)

Cline / Continue / other

The client's own MCP config file

Restart your client after saving. The runtime auto-downloads (signed, ~100 MB) the first time your agent calls an Alethia tool. A cockpit window opens by default so you can watch — set ALETHIA_HEADLESS=1 to hide it; CI hides it automatically.

Upgrade the bridge: npm install -g @vitronai/alethia@latest. Since 0.6.0 you don't need a new bridge for new runtime versions — it queries GitHub Releases on every start.

Always run the latest without manually upgrading:

{
  "mcpServers": {
    "alethia": {
      "command": "npx",
      "args": ["-y", "@vitronai/alethia@latest"]
    }
  }
}

The @latest suffix matters — without it, npx -y can serve a stale cached version. Trade-off: adds 10–30s on a cold cache, and every spawn pulls whatever npm is currently serving (a global install is the safer default for compliance-sensitive work, since it only changes when you explicitly upgrade it).

Pin a specific runtime version (reproducible CI, bisection):

"env": { "ALETHIA_RUNTIME_VERSION": "0.4.0" }

Install the Claude Code skill (optional, teaches Claude when to use each tool):

alethia-mcp --install-skill

Related MCP server: titmas-agent-action-gate

What to ask for

You don't call these tools directly — just ask your agent in plain English, and it picks the right one.

Ask for it

What happens

"Sign in and verify the dashboard loads."

Drives the browser, reports what changed and whether anything was blocked.

"Generate tests for this page — I haven't covered it yet."

Scans the page and drafts a starter test suite, with a safety check for every destructive control it finds.

"Prove the safety gate blocks destructive actions on this page."

Finds every destructive action and confirms the gate blocks each one — a per-action pass/fail report.

"Audit this page for accessibility."

A real WCAG 2.1 AA audit, via axe-core.

"Audit this page for compliance and security."

Checks against 8 NIST SP 800-53 controls.

"Export a signed evidence pack of everything you just did."

A tamper-evident record of the session — hand it to an auditor.

"Check the dashboard and the settings page at the same time."

Runs several tests concurrently, one per page.

"Take a screenshot." / "How many items are in that list?"

Visual check, or an answer plain English can't give you directly (counts, computed styles).

"Stop everything right now — something looks wrong."

Immediate halt. Only clears from the cockpit itself — an agent can't release its own kill switch.

Typing into password, token, or credit-card fields is blocked unless you frame the request as a real login or payment test — the agent enables that for you, you don't need to name a flag.

More paste-ready examples: the agent cookbook has full walkthroughs — bootstrapping tests on an unknown page, a full compliance pass, parallel multi-page checks, a live partner demo. Every one is a literal prompt you paste in.


Add Alethia to your project

No per-project install needed — once the MCP server is configured, any agent in any project can use it.

  1. Drop a .alethia file anywhere your repo treats as test code — tests/e2e/, wherever fits.

    # tests/e2e/login.alethia
    name login flow
    navigate to http://127.0.0.1:5173
    assert "Sign in" is visible
    click Sign in
    type dev@company.com into the email field
    assert dashboard is visible
  2. Ask your agent to run it: "Run tests/e2e/login.alethia against http://127.0.0.1:5173."

  3. In CI, run it without an agent or MCP host at all:

    alethia run tests/e2e/login.alethia

    Exits 0 on pass, 1 on fail. Drop-in workflow: examples/github-actions.yml.

A working reference (demo app + specs + CI + benchmark) lives at vitron-ai/alethia-anvil.


Why not just Cypress or Playwright?

Cypress / Playwright

Alethia

Who writes the test

a human, in a .spec file

an AI agent, in plain English

Proving destructive actions are blocked

manual review

one prompt — an automated, machine-readable report

Speed per step

~200 ms (Playwright MCP), ~2 s (Playwright CLI)

~13 ms — reproduce the numbers yourself

Evidence

screenshots, videos

a signed evidence pack

Network

telemetry on by default for most cloud dashboards

air-gap deployable — zero telemetry, bound to 127.0.0.1

It's not only a testing tool, either — ask an agent to check getComputedStyle() or offsetWidth on a page it's actively building, and you get a live, uncached answer straight from the DOM instead of a reload-and-inspect cycle.

Go deeper: Architecture · Safety gate · FAQ · UI patterns for agent-driven testing


CLI flags

alethia-mcp                  Run as a stdio MCP server (default)
alethia-mcp run <path>       Run an NLP test file from the shell (CI mode)
alethia-mcp run --nlp "..."  Run inline NLP from the shell
alethia-mcp run -            Read NLP from stdin
alethia-mcp --version        Print the version and exit
alethia-mcp --health-check   Probe the Alethia runtime and exit 0/1
alethia-mcp --debug          Run with debug logging on stderr

A shorter alethia alias (same binary) is also installed, so the run subcommand can be invoked as alethia run <path>.

Environment variables

Variable

Default

Description

ALETHIA_HOST / ALETHIA_PORT

127.0.0.1 / 47432

Where the runtime listens

ALETHIA_TIMEOUT_MS

60000

Per-request timeout

ALETHIA_HEADLESS

unset (visible)

1 hides the cockpit window. CI environments auto-hide.

ALETHIA_HIGHLIGHTS

on for tell

Per-step highlights on the target. 0 disables for headless/max-speed runs.

ALETHIA_RUNTIME_VERSION

unset (latest)

Pin the runtime to a specific version for reproducible CI

ALETHIA_RUNTIME_DIR

~/.alethia/runtime

Where the auto-installed runtime lives

ALETHIA_BRIDGE_VERSION

unset

Pin the bridge itself, skip the npm auto-update check

ALETHIA_BRIDGE_SRI

unset

Require the auto-downloaded bridge tarball to match this sha512-... hash

ALETHIA_SKIP_AUTO_UPDATE

unset

1 disables the bridge's npm registry check entirely

ALETHIA_DEBUG

unset

1 for debug logging on stderr

How the bridge keeps itself current

  • The runtime auto-installs on first use from signed GitHub releases (Ed25519-verified). The bridge asks GitHub what the current version is on first start (cached 1h) — no version pin lives in the bridge source, so a globally-installed bridge keeps pulling current runtimes as they ship.

  • The bridge also auto-updates itself (since 0.8.0): checks npm on startup, verifies the tarball's SHA-512, installs to ~/.alethia/bridge/<version>/. Never crosses a major version without explicit action; a new version only becomes trusted after it completes a real MCP handshake, and versions that crash before that get quarantined after 3 attempts.

  • The bundled Claude Code skill auto-refreshes the same way — each spawn compares it to ~/.claude/skills/alethia/SKILL.md and overwrites if stale.

Troubleshooting

"Alethia desktop runtime is not running" — run alethia-mcp --health-check (triggers auto-install if missing). If that fails, check network reachability to GitHub.

"WRITE_HIGH" / "EA1 POLICY BLOCK" in the audit log — a destructive action was blocked. This is correct, fail-closed behavior — not an error to fix. Widening it requires human configuration; an agent can't do it from inside a call.

"SENSITIVE_INPUT_DENIED" — a password/token/credit-card field was detected. Only override with allowSensitiveInput: true for legitimate auth/payment tests.

MCP client doesn't see the tools — run alethia-mcp --health-check, check your config shape, restart the client, and set ALETHIA_DEBUG=1 to log bridge traffic.

"Server transport closed unexpectedly" / bridge exits silently — usually a stale cached bridge. If using npx -y @vitronai/alethia without @latest, add it or run rm -rf ~/.npm/_npx. If using a global install, run npm install -g @vitronai/alethia@latest. Then fully quit and restart your client (Cmd-Q on macOS, not just close the window).

"I see a new release on GitHub but my runtime hasn't upgraded" — the "what's current" check is cached for 1 hour. Bust it with rm ~/.alethia/.latest-release ~/.alethia/.bridge-registry-cache, then restart your client.

Security posture

The runtime is local-only by architecture: its signed binary refuses to navigate anywhere outside file://, localhost, 127.0.0.1, .local, and RFC1918 private ranges. This is a compile-time constant — no flag, env var, or UI toggle changes it. Full threat model and disclosure process: SECURITY.md. Abuse reports: team@vitron.ai.

Privacy

Local-only by architecture — nothing is collected, transmitted, or stored outside your machine. Page content, screenshots, and test instructions are processed locally and never sent anywhere. Evidence packs are written to your filesystem only on explicit request. Zero telemetry, zero analytics, zero crash reporting. Questions: team@vitron.ai.

License and patent notice

This bridge is MIT-licensed — see LICENSE. The Alethia runtime itself is patent pending (U.S. Application No. 19/571,437); the MIT license on this bridge does not grant a patent license to the runtime. Commercial runtime use may require a separate license. Licensing inquiries: team@vitron.ai.

A
license - permissive license
-
quality - not tested
A
maintenance

Maintenance

Maintainers
Response time
Release cycle
1Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    -
    quality
    B
    maintenance
    Governed MCP gateway that lets AI agents call tools with policy enforcement, prompt-injection screening, a kill-switch, and tamper-evident signed audit logs.
    Last updated
    Apache 2.0
  • A
    license
    B
    quality
    C
    maintenance
    An MCP server that enforces deterministic authorization boundaries for AgentTeams workflows by verifying evidence and policy, returning ALLOW, BLOCK, or REQUIRE_APPROVAL decisions before actions are executed.
    Last updated
    6
    Apache 2.0
  • F
    license
    -
    quality
    C
    maintenance
    Provides policy-driven runtime authorization and security evaluation for MCP-based agents, including MCP streaming HTTP gateway, mock MCP servers, deterministic agent demos, and audited tool invocation with redacted PostgreSQL audit chains.
    Last updated

View all related MCP servers

Related MCP Connectors

  • Remote MCP for A2A failure replay MCP, structured receipts, audit logs, and reviewer-ready evidence.

  • Control plane for autonomous software labor. Agents claim objectives over MCP with audit trail.

  • Hosted AgentLux MCP server for marketplace, identity, creator, services, and social flows.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/vitron-ai/alethia-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server