Skip to main content
Glama
Repro Capsule MCP

Repro Capsule MCP

by efficjump

English | 한국어

Repro Capsule MCP

CI Python 3.11+ License: MIT

Turn a bug report into a portable, reviewable reproduction capsule without silently copying a repository or executing model-generated shell text. Every report, command plan, transcript, artifact, and export stays evidence-linked and redacted.

flowchart LR
    A[Bug report] --> B[Dynamic project profile]
    B --> C[Evidence-based hypotheses]
    B --> D[Reviewed command plan]
    D --> E[One-time approval]
    E --> F[Bounded execution]
    C --> G[Portable capsule]
    F --> G

Highlights

  • Dynamic command discovery from current project manifests

  • Secret-redacted reports, text artifacts, stdout, and stderr

  • Binary artifacts represented by metadata and hashes instead of unreviewed content

  • Direct argv execution without a shell

  • One-time plan tokens with separate workspace-write and network approvals

  • Process-group timeout cleanup and bounded output capture

  • Run-to-run transcript comparison without guessing whether a fix is correct

  • ZIP export containing a versioned manifest and reproduction guide

  • Stdio and Streamable HTTP transports

Related MCP server: Soma MCP Server

Install

uv tool install "git+https://github.com/efficjump/repro-capsule-mcp.git"
repro-capsule-mcp --transport stdio

For source development:

git clone https://github.com/efficjump/repro-capsule-mcp.git
cd repro-capsule-mcp
uv sync --all-extras --locked
uv run repro-capsule-mcp --transport stdio

Generic MCP client configuration

{
  "mcpServers": {
    "repro-capsule": {
      "command": "repro-capsule-mcp",
      "args": ["--transport", "stdio"]
    }
  }
}

The installed command avoids embedding any local checkout path in client configuration.

Tool workflow

Tool

Purpose

start_case

Create a bounded case with a redacted bug report

list_cases / get_case

Browse persisted case state and evidence

inspect_project

Discover manifests, environment names, Git state, and commands

analyze_case

Produce host-model hypotheses from current evidence

add_artifact

Add reviewed text or hash-only binary evidence

plan_command

Prepare an exact non-shell command and one-time token

execute_plan

Run one approved plan with bounds and redaction

compare_runs

Compare two execution transcripts

export_capsule

Create a portable ZIP and manifest

Safety model

  • Project roots must remain inside REPRO_CAPSULE_ALLOWED_ROOTS.

  • Sensitive filenames, symlinks, oversized files, and unreviewed binary content are excluded.

  • Commands not discovered from current project files are denied by default.

  • Network intent and workspace-write intent require separate approval.

  • Environment values and approval tokens are not written into capsule exports.

  • Every process uses a timeout, bounded output, and redaction before persistence.

This server is not an operating-system sandbox. Inspect and execute untrusted projects only in an isolated container or virtual machine.

Streamable HTTP

repro-capsule-mcp --transport streamable-http --host 127.0.0.1 --port 8766

The default endpoint is http://127.0.0.1:8766/mcp.

Development

uv sync --all-extras --locked
uv run ruff format --check .
uv run ruff check .
uv run mypy src
uv run pytest --cov --cov-report=term-missing
uv build

See architecture, security policy, and contribution guide.

License

MIT

Available Tools

8 tools
add_artifactB

Add one reviewed project file as redacted text or a binary hash-only record.

Inputs: case_id (required), relative_path (required), note, include_binary_content. Returns: object

analyze_caseB

Form evidence-cited hypotheses with host sampling, or return an explicit fallback.

Inputs: case_id (required), objective (required). Returns: object

compare_runsA
Read-only

Compare exit status, expectation match, and redacted output hashes for two runs.

Inputs: case_id (required), baseline_run_id (required), candidate_run_id (required). Returns: object

execute_planA
Destructive

Consume one approval token and record bounded, redacted command output.

Inputs: case_id (required), plan_id (required), approval_token (required), allow_network, +1 more. Returns: object

export_capsuleA

Create a ZIP containing only persisted case metadata and reviewed artifact contents.

Inputs: case_id (required). Returns: object

list_casesA
Read-only

List persisted reproduction cases without reading project files or running commands.

Inputs: no named parameters. Returns: result

plan_commandB

Create a non-shell execution plan and one-time approval token from project evidence.

Inputs: case_id (required), purpose (required), argv, env_names, +5 more. Returns: object

start_caseA

Create a versioned case after constraining the project root and redacting the report.

Inputs: name (required), bug_report (required), project_root (required). Returns: object

Tool Schema Changelog

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

Loading tool schema changelog…

    TDQS

    A3.8/5.0

    Scored across 8 tools

    Disambiguation5/5

    Each tool maps to a distinct phase of the reproduction workflow: case creation, listing, analysis, artifact addition, command planning, execution, run comparison, and export. Even the closely related plan_command and execute_plan pair is clearly separated by planning versus consuming a token for execution.

    Naming Consistency5/5

    All eight tool names follow a consistent verb_noun snake_case pattern such as start_case, add_artifact, execute_plan, and export_capsule. The action and target are predictable across the entire set.

    Tool Count5/5

    Eight tools is a well-scoped size for a reproduction capsule server. Each tool provides a necessary capability in the lifecycle without redundancy or bloat.

    Completeness4/5

    The tool surface covers the core workflow end-to-end: create/list/analyze cases, add artifacts, plan and execute commands, compare runs, and export. Minor gaps exist around direct inspection or removal of individual artifacts/runs, but agents can work around these using the existing analysis and export tools.

    Maintenance

    ActivityInactive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      Not graded
      quality
      C
      maintenance
      Enables AI agents to capture, replay, inspect, diff, share, and manage executable bug artifacts (.bug files) via the BugProof CLI, supporting 10 tools and structured prompts for debugging workflows.
      86 npm
      AGPL 3.0
    • A
      license
      A
      quality
      D
      maintenance
      Enables running code against tests in an isolated sandbox to obtain PASS/FAIL verdicts with signed, offline-checkable certificates, and generating verified code with attached certificates after execution against derived tests.
      2
      45 npm
      MIT
    • 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.
      -