Start the build-and-verify loop for this repo

project.initializeGuidedStarts a multi-step job and tells your agent what to do next.

What it does

Step 1 of the Test Maze loop: project.initialize → feature.implement → feature.verify → testrun.create (or testrun.record_results) → pdlc.verify. It returns what the connected workspace already knows about the product (id, name, description, vision, lifecycleStage) and opens a new PDLC session. A PDLC session is an optional tracker of where you are in the product loop: plan → write tests → code → verify → ship (states INTAKE, PLAN, AUTHOR, CODE, VERIFY, REPAIR, SHIP, DONE). This tool does not read the repository itself. It returns a prompt name, not an answer: prompt: {name: "product-init", args}. Fetch that prompt with prompts/get using exactly those args, follow it against the repo to write a JSON product summary, then save the summary with product.update. Keep the returned sessionId and pass it to feature.implement, feature.verify and pdlc.verify if you want progress tracked; leaving it out is fine and everything else still works. Every call opens a brand-new session (it is not a refresh), so call it once per piece of work, not on every message. Next: product.update, then feature.implement.

Ask your agent

You don’t call project.initialize yourself. Say something like this to Claude Code, Cursor or another MCP-connected agent:

  • “Set up Test Maze for this project”
  • “Get Test Maze to understand what my app does before we start building”
  • “Start tracking this repo so you can test what we build”

Inputs

NameTypeDescription
repoRoot
required
stringAbsolute path to the root of the repository you are working in, e.g. "/Users/me/code/shop". The server does not read it; it is passed into the product-init prompt and saved on the session so the prompt knows where to look.

The MCP call

What the agent’s MCP client sends (placeholders in angle brackets):

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "project.initialize",
    "arguments": {
      "repoRoot": "<repoRoot>"
    }
  }
}

Connect your agent

npx -y @testmaze/mcp init tmt_xxx
claude mcp add tm --scope project -- npx -y @testmaze/mcp

Create the token in your Test Maze workspace under Settings → MCP. Setup for Cursor, Cline, Gemini CLI and Codex CLI is shown there too.