Skip to main content
Version: 2.27

Tools and Resources

The Cycle MCP server exposes tools (actions an agent can perform) and resources (documents an agent can read). You don't usually call these directly — your coding agent does, in response to your natural-language requests. This page documents what's available so you can understand what the agent is doing on your behalf and ask for it explicitly when you need to.

Tools

Tools are actions. The agent calls them to create, run, and inspect tests.

ToolWhat it does
authenticateOpens a browser login window so you can sign in to Cycle. This is the only tool that works while you are logged out — the agent calls it when a request returns an authentication error, or you can ask for it directly: "Authenticate with Cycle."
create_projectScaffolds a new Cycle project directory tree, writes the .cycproj, and writes a .cycuser settings file. Useful when starting from scratch in an empty folder.
validate_featureParses a .feature file and returns syntax errors with line numbers. Does not execute the file. The agent should call this every time it edits a feature file to catch errors before runtime.
run_testExecutes a .feature file with cycle-cli. Returns the exit code, truncated output, and the path to the directory containing the results .db file (you pass that directory to the cycle://run-errors/{output_dir} resource to inspect failures).
run_stepExecutes one step from any installed plugin (WebDriver, File-System, etc.) in a persistent live session. The browser session survives across calls, so the agent can open Chrome, navigate, click, and take a page snapshot (WebDriver.snapshotPage) to discover real element locators before writing them into a .feature file. This is how the agent avoids guessing at selectors.

Resources

Resources are read-only reference documents addressed by a cycle:// URI. The agent reads them to learn syntax, conventions, the step catalog, and the lay of the land. You can ask the agent to read any of them for you.

The full, current set is always discoverable from the master index, cycle://toc — the agent reads that first to see everything the server offers. New reference documents are added to the catalog over time, so treat the lists below as the important highlights rather than an exhaustive inventory.

Catalogs and indexes

Resource URIWhat's in it
cycle://tocThe master table of contents — an index of every resource the server exposes. The agent reads this first to discover what's available.
cycle://categoriesA JSON list of every step category name (Web, File Action, Comparison, etc.). Read before cycle://steps/{category} so the category name is valid rather than guessed.
cycle://promptsA catalog of the guided Prompts the server provides.
cycle://subagentsA catalog of the specialized Agents the main agent can delegate to, with each one's input/output contract.

Step discovery

Resource URIWhat's in it
cycle://stepsA compact index of every step rendered as `StepID` — step text, grouped by category. This is the step-discovery entry point: the agent reads the whole surface, reasons about which step fits, then drills in.
cycle://steps/{category}All steps in one category, rendered as Markdown with text patterns, descriptions, and examples. For example, cycle://steps/Web returns every web step.
cycle://step/{id}The full definition of one step as JSON: parameter names, accepted values, required state, output variables, and usage examples. The agent reads this to get exact parameter names before generating a step line or calling run_step.

Authoring and reference docs

These are the reference documents an agent reads to write correct CycleScript and to drive cycle-cli. They are auto-registered from Cycle's documentation set, so the catalog grows over time — cycle://toc always lists the current set.

Resource URIWhat's in it
cycle://authoring-guideThe complete guide to writing CycleScript feature files: syntax, structure, recommended patterns, and coding style. The agent should read this before writing any feature file.
cycle://language-specThe authoritative CycleScript language specification, including the grammar. Read this for a specific syntax question the authoring guide doesn't answer.
cycle://locator-formatsValid type:selector locator formats for Web and WinApp steps (e.g. id:, cssSelector:, xpath:), with quoting rules and ExtJS-specific tips.
cycle://step-categories-overviewA categorized overview of common steps — orientation before diving into a specific category.
cycle://test-lifecycleAn end-to-end overview of how to create, execute, and debug Cycle tests, with section views at cycle://test-lifecycle/create, cycle://test-lifecycle/execute, and cycle://test-lifecycle/debug.
cycle://cli-referenceA reference for running tests with cycle-cli, with section views at cycle://cli-reference/file-types, cycle://cli-reference/flags, and cycle://cli-reference/examples.
cycle://environment-variablesThe environment variables that affect a cycle-cli run (proxy, verbosity, plugin readiness, etc.).
cycle://end-user-tipsPractical tips for getting good results when working with Cycle through an agent.

Run inspection and agent definitions

Resource URIWhat's in it
cycle://run-errors/{output_dir}Structured failure details for a finished run: the failing step, the error message, the stack trace, and a listing of all artifacts (screenshots, logs). {output_dir} is the (percent-encoded) results directory returned by run_test. The agent reads this on any failure before suggesting a fix.
cycle://subagents/{name}The full definition of one specialized subagent (for example, cycle://subagents/feature-file-author). The agent reads this just before delegating work to that subagent.

Server Flags

The Cycle MCP server accepts a handful of command-line flags, passed after --mcp in the args array of your agent's MCP configuration. Most users never need to set anything beyond --mcp itself.

FlagDefaultDescription
--plugin-dirplugins/ next to cycle-cli.exeDirectory the server scans for installed SDK plugins (WebDriver, File-System, etc.). Override only if your install layout is non-standard.
--subagents-dirsubagents/ next to cycle-cli.exeDirectory the server scans for custom subagent definitions. Drop your own .md definitions here to extend or override the built-in Agents.
--debugfalseForwards plugin stdout/stderr to the server's stderr. Use this only when troubleshooting — see Troubleshooting.
--log-level / -lERRORLog level for the MCP server itself. One of ERROR, INFO, DEBUG. Increase when you want server-side logging without enabling full plugin pass-through via --debug.

Example with debug logging enabled:

{
"mcpServers": {
"cycle": {
"command": "C:/Program Files (x86)/CycleLabs/Cycle/cycle-cli.exe",
"args": ["--mcp", "--debug"]
}
}
}