MCP Hub
Back to servers

AutoDev MCP

A dual-track testing server that combines CLI test execution with Playwright-based browser testing and persistent SQLite logging. It enables automated test pipelines, Git integration, and evidence-based requirement generation to streamline the development lifecycle.

Updated
Feb 10, 2026

AutoDev MCP (Dual-Track Testing)

AutoDev MCP is a TypeScript MCP server that keeps your original CLI testing and adds an extra Chrome Dev (browser) testing track with persistent logs.

What it does

  • Keeps original test flow via CLI (run_tests) - not replaced
  • Adds browser test flow (browser_* tools) via Playwright + CDP events
  • Persists everything to SQLite:
    • sessions
    • logs (cli/browser/console/error/network/assertion)
    • screenshots
  • Supports combined execution via run_pipeline
  • After pipeline completion, automatically provides 10 requirement/optimization directions (中文输出)

Install

npm install
npm run build

Run MCP server (stdio)

npm run start

For local development:

npm run dev

Optional config: autodev.config.json

{
  "projectRoot": ".",
  "storage": {
    "databasePath": ".autodev/logs/autodev.db",
    "screenshotsDir": ".autodev/logs/screenshots"
  },
  "commands": {
    "test": "npm test"
  },
  "browser": {
    "headless": true,
    "timeoutMs": 15000
  },
  "pipeline": {
    "maxIterations": 3
  },
  "compact": {
    "enabled": true,
    "warningThreshold": 0.8,
    "compactThreshold": 1.0,
    "estimatedMaxChars": 120000
  },
  "git": {
    "enabled": true,
    "autoCommitOnFeatureComplete": true,
    "defaultCommitPrefix": "feat",
    "protectSensitiveFiles": true,
    "sensitiveFilePatterns": [
      "(^|/)\\.env(\\..*)?$",
      "(^|/)credentials\\.json$",
      "(^|/)secret(s)?(\\.|$)",
      "(^|/).+\\.pem$",
      "(^|/).+\\.key$"
    ]
  }
}

Tool overview

CLI track (original)

  • run_tests
  • generate_tests (stub)
  • fix_failures (stub)

Browser track (new, additional)

  • browser_open
  • browser_navigate
  • browser_interact
  • browser_assert
  • browser_screenshot
  • browser_get_console
  • browser_get_errors
  • browser_get_network
  • browser_close

Orchestration/query

  • run_pipeline (CLI first, browser optional)
  • propose_requirements (always outputs 10 directions)
  • check_compact (检查上下文占用并给出 none/warn/compact 建议)
  • git_commit_feature(小功能完成后按策略提交 git)
  • git_status_summary(查看当前仓库改动状态)
  • test_get_session_logs
  • test_compare_sessions

Example workflow

  1. Run original tests:
    • call run_tests
  2. Start browser session:
    • call browser_open with URL
  3. Interact and assert:
    • browser_interact
    • browser_assert
  4. Capture screenshot if needed:
    • browser_screenshot
  5. Close and finalize summary:
    • browser_close
  6. Query persisted logs:
    • test_get_session_logs
  7. Generate next-cycle demand directions:
    • propose_requirements

run_pipeline also includes suggestedRequirements in the final output so you can directly pick your next approved requirement.

run_pipeline now also returns compactSuggestion:

  • none: 上下文充足,继续执行
  • warn: 上下文超过预警阈值(默认 80%),建议当前小任务结束后 compact
  • compact: 上下文达到 compact 阈值(默认 100%),建议立即 compact

run_pipeline 现在也会在测试通过后尝试执行 gitCommit

  • 若目录是 git 仓库且存在可提交改动,会自动提交
  • 若不是 git 仓库,自动跳过并给出原因
  • 默认会拦截疑似敏感文件(如 .env*.pem*.key

测试日志与截图位置

  • SQLite 数据库:.autodev/logs/autodev.db
  • 截图目录:.autodev/logs/screenshots

你可以通过 MCP 工具查看:

  • test_get_session_logs:按 sessionId 拉取日志、摘要、截图路径
  • test_compare_sessions:对比两次测试结果

评分标准(需求方向)

每条方向的评分由以下字段组成:

  • impact:影响面(1-10)
  • confidence:把握度(1-10)
  • effort:工作量映射分值(S=2, M=5, L=8)

公式:

priorityScore = (impact × confidence) / effort

分数越高,优先级越高。

Notes

  • Browser track is explicitly additive and independent from original CLI tests.
  • generate_tests and fix_failures are stubs in this version and intentionally logged for future extension.
  • Requirement generation is evidence-based (sessions/logs/assertions/errors) and returns exactly 10 scored directions each cycle (中文输出).

Reviews

No reviews yet

Sign in to write a review