Metadata-Version: 2.4
Name: mcp-extent
Version: 0.1.0
Summary: MCP server for reading Extent Reports in LLM-friendly format
Author-email: Your Name <your.email@example.com>
License: Apache-2.0
Keywords: ai,extent-reports,llm,mcp,test-reports
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Requires-Python: >=3.10
Requires-Dist: beautifulsoup4>=4.12.0
Requires-Dist: lxml>=5.0.0
Requires-Dist: mcp>=1.0.0
Requires-Dist: pydantic>=2.0.0
Provides-Extra: dev
Requires-Dist: black>=23.0.0; extra == 'dev'
Requires-Dist: mypy>=1.0.0; extra == 'dev'
Requires-Dist: pytest-asyncio>=0.21.0; extra == 'dev'
Requires-Dist: pytest>=7.0.0; extra == 'dev'
Description-Content-Type: text/markdown

# Extent Report MCP Server

This is a Model Context Protocol (MCP) server that enables AI assistants (like Claude, Cursor, and QAFlow) to read, analyze, and understand Extent Reports.

## Features

- Parse Extent Reports (JSON and Spark HTML formats)
- Extract test summaries (Pass/Fail/Skip rates)
- Retrieve detailed failure analysis including stack traces
- Compare reports to identify regressions

## Installation

```bash
# Install with uv (recommended)
uv tool install mcp-extent

# Or install with pip
pip install mcp-extent
```

## Usage (Local Development)

Since you are running this from source, add the total path to your configuration:

```json
{
  "mcpServers": {
    "mcp-extent": {
      "command": "uv",
      "args": [
        "run",
        "--directory",
        "D:/mcp-extent", 
        "mcp-extent"
      ]
    }
  }
}
```

> **Note:** Adjust the path `D:/mcp-extent` if you move the project.

## Tools

- `get_extent_report`: Parse full report
- `get_test_summary`: Get high-level stats
- `get_failed_tests`: Get detailed failure info
- `analyze_failures`: Pattern matching for failures
- `compare_reports`: Compare two report runs
