Skip to main content
Glama

COVERA — AI Agent for COVER Code Coverage

한국어: README.ko.md

COVERA (COVER AI Agent) is an AI agent that lets you use COVER code coverage in coding agents such as Claude Code, Codex CLI, Cursor, and GitHub Copilot. Describe what you want, such as "make a coverage build of this project", and COVERA identifies the project's original build for C/C++, C#, and Java across CMake, Make, Visual Studio/MSBuild, STM32CubeIDE, C# (COVER Toolbox), and Java (JACOV CLI, Maven, Gradle). It then runs the COVER instrumented build while keeping the original output paths, judges the result by the build's exit code, and keeps the successful setup so you can rebuild later from your IDE or the command line. It also looks up a module's coverage results stored on the COVER server, and recovers C/C++ files excluded by analysis errors by verifying a toolchain configuration fix on the COVER server.

COVER is a code coverage measurement tool that verifies test sufficiency by quantitatively analyzing scenario test execution results.

COVERA does not replace COVER's results. COVER performs the instrumentation and measurement and produces the coverage results; COVERA prepares, runs, verifies, and reports that work from inside the coding session.

What COVER and COVERA add

Need

COVER and COVERA workflow

Make a coverage build without learning each toolchain's setup

Finds the original build and actual tools for CMake, Make, Visual Studio/MSBuild, STM32CubeIDE, C# (COVER Toolbox), and Java (JACOV CLI, Maven, Gradle), then runs the instrumented build.

Reuse the setup later

Keeps the successful setup for your IDE's next rebuild, or gives you a command to run again.

Check coverage results

Looks up the latest cumulative coverage of a module stored on the COVER server, with per-file and per-function details on request.

Fix files excluded by analysis errors

Gets the error data, finds the cause, verifies a parser configuration fix by running the COVER PA on the COVER server, then registers the fixed toolchain and connects the wrapper so you can rebuild.

Related MCP server: Verinoda

Workflow at a glance

  1. Ask for a coverage build of your project. The first time, the coding agent asks for your COVER Access Key and the COVER Open API main web server URL.

  2. The coding agent surveys the project and environment, runs the original build, then runs the instrumented build and checks its result.

  3. The coding agent applies the successful setup and tells you how to rebuild from your IDE or command line.

  4. After running your tests, ask the coding agent for a module's coverage to see the results calculated on the COVER server.

The skills in this repository work with a COVER EE Local Agent installation. They are not a replacement for COVER.

Install

Add COVERA from Anthropic's plugin directory on claude.ai (Customize > Plugins). It loads in Claude Code through account sync. To try a local copy without installing, load it for one session from the folder that contains your checkout:

claude --plugin-dir ./covera-plugin

COVERA's scripts run on your machine against a local COVER EE Local Agent and your build tools. Without COVER, or when its settings are missing, a skill stops at its setup check and says what is missing.

Example requests

Responses can vary with the AI model and the conversation. If the result isn't what you expected, rephrase the request with more detail.

Request

Skill

Make a COVER coverage build of this project.

cover-ee-coverage-build

Set up coverage for the Debug configuration of this STM32CubeIDE project.

cover-ee-coverage-build

Make a coverage build of this Maven project with JACOV.

cover-ee-coverage-build

Show the coverage of the app.elf module and its least-covered functions.

cover-ee-coverage-measure

Some files were excluded from the coverage build because of analysis errors. Find out why.

cover-toolchain-recovery

Skills

The coding agent picks the skill from your request; you can also run one directly, for example /covera:cover-ee-coverage-build.

Skill

Workflow stage

cover-ee-coverage-build

Prepare and run a COVER EE coverage build, judge it by the build's exit code, then keep the successful setup for later builds. Needs the Local Agent.

cover-ee-coverage-measure

Read-only lookup of a module's latest cumulative coverage on the COVER server, with per-file and per-function results on request. It does not run tests, collect new data, or build. Needs only the COVER server URL and Access Key.

cover-toolchain-recovery

Recover C/C++ files excluded by analysis errors: get the error data from the COVER server, diagnose the cause, and verify a minimal parser configuration fix by running the COVER PA (tmpa) on the server. After a successful verification it registers a new toolchain on the server, connects the wrapper, and hands off for a rebuild. If you ask only for a diagnosis, it stops there.

MCP server

COVERA also ships an MCP server that exposes the same three skills to any MCP client — Claude Desktop, Cursor, VS Code, and others — not only to agents that load the skills. A client with no skills still gets the full flow: run a coverage build, look up a module's coverage, and recover a toolchain error. The procedure each skill follows is served back through a tool (covera_get_guide), so a skill-less client has the same guidance to work from.

It is listed in the official MCP registry as io.github.SuresoftTechnologies/covera-mcp, and is versioned independently of the plugin (its release tags are prefixed mcp-v).

Three ways to run it:

  • With the plugin. Installing COVERA registers the server automatically (.mcp.json), so in Claude Code the tools are available alongside the skills.

  • As a bundle. Download covera-mcp.mcpb from this repository's releases and open it with a client that installs MCP bundles. It resolves its own Python, so nothing has to be installed first.

  • Point a client at the interpreter. Run scripts/mcp_server.py with Python 3.11 or later. The launcher scripts/covera-mcp.cmd picks a working interpreter on Windows and Linux.

The tools mirror the skills:

Group

Tools

Read-only

covera_doctor, covera_coverage_measure, covera_recovery_discover, covera_recovery_inspect, covera_get_guide

Coverage build

covera_coverage_build (plan, then execute)

Toolchain recovery

covera_recovery_start, _collect, _verify, _publish_plan, _publish

Three prompts, coverage-build, coverage-measure and toolchain-recovery, start the guided flows. A coverage build with execute, and applying a recovery (covera_recovery_publish), change the project's build setup or the shared COVER server, so they carry consent hints and ask for your approval first; read covera_get_guide before driving them. Without a COVER EE Local Agent the server still starts and covera_doctor reports what is missing, so it is safe to leave configured on any machine.

The bundle finds the Local Agent through CODESCROLL_TM_INSTALL_PATH, which the Local Agent installation sets in your environment; the server reads it from there and covera_doctor reports if it is missing. The Open API Access Key is never passed as a tool argument or printed: the build flow reads it from the Local Agent's cached credentials or COVER_ACCESS_KEY, and the recovery flow reads COVER_ACCESS_KEY (or the cached key when the requested server matches the cached one).

Product-backed workflow

COVERA is used where a COVER EE Local Agent is installed. This repository contains the skills and the scripts they run. It does not include COVER itself, and it does not report instrumentation or measurement as done without COVER.

What changes on your machine during the work:

  • Builds. Runs your original build and the COVER instrumented build with your project's build tools.

  • Project files. After a successful coverage build, COVERA creates a .cover-ee/ folder in the project root for its settings and backups of the original files. Visual Studio, C#, and STM32CubeIDE projects get their project settings changed so later builds keep coverage, and the Local Agent's settings are updated when needed. CMake, Make, Maven, and Gradle build files are not modified.

  • COVER server. Toolchain recovery registers a new toolchain configuration on the server and connects it to the wrapper, keeping a rollback record. Coverage lookup only reads from the server.

Requirements

  • COVER EE Local Agent installed and licensed, with CODESCROLL_TM_INSTALL_PATH pointing to the installation and CODESCROLL_TM_SERVER_URL to its remote service

  • A COVER Access Key and the COVER Open API main web server URL (HTTPS). Coverage lookup and toolchain recovery also need a COVER server that provides the AI Agent Kit API (/cover-open-api/ai-agent-kit/...). Toolchain recovery reads the Access Key from the COVER_ACCESS_KEY environment variable.

  • Python 3.11 or later and curl on PATH

  • The project's own build tools: CMake/Make and GCC, Visual Studio/MSBuild, STM32CubeIDE, the .NET toolchain, or Java with Maven or Gradle

  • Windows or Linux; WSL is supported when the Local Agent runs on Windows

For a product demo, purchase, or deployment consultation, contact bizcenter@suresofttech.com.

Privacy Policy

COVERA's scripts run on your machine.

  • COVERA sends nothing to Suresoft Technologies and has no telemetry. The MCP server has none of its own either; it forwards each call to the local skill runtime and makes no network call of its own.

  • It connects only to the COVER server you provide, with your Access Key, and registers this machine's Local Agent and its toolchains on the server when needed. Toolchain recovery sends the source path, this machine's MAC address, the compiler ID, and the proposed configuration to the server so the server can run the PA. By default, the certificate is not verified, because COVER servers often use internal certificates. Pass --verify-tls to require verification.

  • After the first successful authentication, the server URL and Access Key are saved in plain text to <CODESCROLL_TM_INSTALL_PATH>/agent_kit/open-api-credentials.json so you aren't asked again. Delete the file to stop reuse. The Access Key is never written to logs.

  • For Java, ~/cover_jacov.json is created when missing.

  • Its output, such as file paths, build logs, and coverage results, appears in your coding agent session and is sent to the AI model provider by your coding agent client.

  • Data that COVER itself keeps follows COVER's own data handling policy.

The full policy is in PRIVACY.md. For support and questions, contact bizcenter@suresofttech.com.

License and trademarks

This repository is licensed under the MIT License. The license covers everything in this repository: the documentation, the skill files, and the scripts. It does not cover COVER EE or its Local Agent. COVER and COVERA are Suresoft Technologies products, and no product functionality or product license is granted by this repository.

STM32CubeIDE is a trademark of STMicroelectronics. Claude and Claude Code are trademarks of Anthropic. Other product names may be trademarks of their respective owners.

Available Tools

11 tools
covera_coverage_buildRun a COVER coverage buildA
Destructive

Drive a COVER EE coverage build for a C/C++, C#, or Java project: identify the original build and real tools, plan the instrumented build keeping the original output paths, and -- when execute is true -- run it and keep the successful setup for later builds. Give projectDir to start a new build or jobContext to resume one (exactly one). execute runs the real builds and registers the coverage module on the COVER server, so it changes the project's build setup and server state: read covera_get_guide topic=build first, explain what it does, and get the user's approval before calling with execute. With execute omitted it only plans and writes job state. The result is a workflow envelope; a WAITING_* status means resume with its jobContext after supplying what it asks for. The Open API Access Key is read from the Local Agent's cached credentials or COVER_ACCESS_KEY; this server never prompts for it.

Inputs: execute, targets, decision, failFast, +18 more.

covera_coverage_measureLook up module coverageA
Read-only

Read a module's coverage results from the COVER server: the module summary, and optionally per-file and per-function detail. Read-only; runs nothing and changes nothing. Give exactly one of a module name (a filename or path suffix to search for) or a 24-hex module id. The server URL and Access Key come from the Local Agent's cached Open API credentials; set CODESCROLL_TM_INSTALL_PATH if they are not found (see covera_doctor).

Inputs: limit, details, maxPages, moduleId, +3 more.

covera_doctorCheck the COVERA environmentA
Read-only

Report whether this MCP server can drive COVER: the Python it runs on, whether CODESCROLL_TM_INSTALL_PATH points at a COVER EE Local Agent, whether cached Open API credentials exist, whether COVER_ACCESS_KEY is set, and which skill entry scripts are present. Needs no project. Run this first when other tools fail with setup errors.

Inputs: no named parameters.

covera_get_guideRead a COVERA skill procedureA
Read-only

Return the procedure a COVERA skill follows, so a client without the skills can work the same way. Topics cover the coverage build flow, module measurement, and toolchain recovery, plus their reference documents. Read the matching topic before driving a flow.

Inputs: topic (required).

covera_recovery_collectCollect error material from the serverA

Download the latest PA analysis-error material over the Open API into a new ZIP and start the case. Needs COVER_ACCESS_KEY or cached credentials.

Inputs: runDir (required), source (required), archive (required), server, +7 more.

covera_recovery_discoverSurvey a recovery (read-only)B
Read-only

Read the build environment, COVER server settings, and available analysis-error material without changing anything, and report what is missing to collect it. Read-only.

Inputs: source (required), server, agentRoot, verifyTls, +5 more.

covera_recovery_inspectInspect a recovery caseB
Read-only

Read the recorded run history of a case. Local and read-only.

Inputs: case (required).

covera_recovery_publishApply a server changeA
Destructive

Apply a verified plan to the COVER server and connect the wrapper. This changes the shared COVER server, so confirm with the user first. Pass the plan_digest from covera_recovery_publish_plan. Needs COVER_ACCESS_KEY or cached credentials.

Inputs: case (required), server (required), planDigest (required), verifyTls.

covera_recovery_publish_planPlan a server changeA

Produce a server change plan for a verified case; reads the COVER server only. Returns a plan_digest to pass to covera_recovery_publish. Needs COVER_ACCESS_KEY or cached credentials.

Inputs: case (required), server (required), wrapper (required), hardwareId (required), +1 more.

covera_recovery_startStart a recovery caseA

Copy the analysis-error ZIP/folder (or collect the latest from the server) into a new run directory and record initial evidence and state. Does not modify original sources. May download from the COVER server, which needs COVER_ACCESS_KEY or cached credentials.

Inputs: runDir (required), source (required), server, agentRoot, +7 more.

covera_recovery_verifyVerify a recovery candidateA

Run a server-side PA verification of an evidence-backed candidate for a case. Runs analysis on the COVER server but makes no permanent server change. Needs COVER_ACCESS_KEY or cached credentials.

Inputs: case (required), candidate (required), server, timeout, +2 more.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A3.7/5.0

    Scored across 11 tools

    Disambiguation3/5

    Most tools map to distinct steps, but covera_recovery_start and covera_recovery_collect overlap heavily — start explicitly says it can 'collect the latest from the server' and record state, which is what collect does, so an agent may not know which to call. The three read-only diagnostics (covera_doctor, covera_recovery_discover, covera_recovery_inspect) also sit close together, distinguished mainly by prose rather than by name.

    Naming Consistency4/5

    All tools share the `covera_` prefix and snake_case, with recognizable subgroups (`covera_recovery_*`, `covera_coverage_*`). Minor deviations exist: covera_doctor is a bare noun with no verb, and covera_get_guide breaks the sub-domain grouping used elsewhere.

    Tool Count5/5

    11 tools is well within a comfortable range for a server spanning two workflows (coverage build/measure and PA error recovery). Each tool corresponds to a recognizable step, and none feel like filler, aside from the mild redundancy between start and collect.

    Completeness4/5

    The recovery lifecycle is nearly end-to-end (discover → start/collect → inspect → verify → plan → publish) and the build side covers guide → build → measure. Gaps are minor but real: no way to abort/stop a running build, no rollback or un-publish after covera_recovery_publish, and no tool to enumerate cases or runs beyond inspecting a single case.

    Maintenance

    ActivityMaintained
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      Not graded
      quality
      D
      maintenance
      MCP server that provides instant, token-efficient test coverage data for any programming language, allowing agents to query coverage summaries and track session progress.
      65 npm
      42
      MIT
    • A
      license
      A
      quality
      B
      maintenance
      Enables users to build and continuously refresh a code index of a repository, then query it to answer architecture, impact, tracing and log questions with verifiable evidence lines. Also checks Java, Kotlin and TypeScript/JavaScript names against real sources and classpaths, and supports commit review and Minecraft/JVM analysis directly from an agent session.
      5
      1
      Apache 2.0
    • F
      license
      Not graded
      quality
      A
      maintenance
      Enables coding agents to coordinate profilers, benchmark tools, trace processors, and direct local targets so that explicit artifacts or commands become bounded runtime evidence with recorded provenance, coverage, and limitations. Its analysis and capture tools require no workspace setup, and durable evidence preservation remains optional.
      -
    • F
      license
      Not graded
      quality
      A
      maintenance
      Enables coding agents to capture and analyze bounded runtime evidence from explicit artifacts or commands, coordinating profilers, benchmark tools, trace processors, and local targets for hotspot investigation.
      -