Skip to main content
Glama

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 (中文输出)

Related MCP server: mcp-playwright-test

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 (中文输出).

Related MCP Connectors

Related MCP Servers