Metadata-Version: 2.4
Name: docxengine
Version: 1.0.0
Summary: AI-optimized DOCX manipulation engine: deterministic OOXML editing with tracked changes, hash-anchored addressing, and a token-efficient agent view.
Project-URL: Homepage, https://github.com/ruwadgroup/docxengine
Project-URL: Documentation, https://github.com/ruwadgroup/docxengine/tree/main/docs
Project-URL: Issues, https://github.com/ruwadgroup/docxengine/issues
Author: Tamim Bin Hakim
License-Expression: Apache-2.0
Keywords: ai-agents,docx,mcp,ooxml,tracked-changes
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Office/Business :: Office Suites
Classifier: Topic :: Text Processing :: Markup :: XML
Requires-Python: >=3.12
Provides-Extra: dev
Requires-Dist: mypy>=1.13; extra == 'dev'
Requires-Dist: pytest>=8; extra == 'dev'
Requires-Dist: ruff>=0.8; extra == 'dev'
Provides-Extra: mcp
Requires-Dist: mcp>=1.2; extra == 'mcp'
Description-Content-Type: text/markdown

# docxengine

Deterministic OOXML editing with tracked changes, hash-anchored addressing, and a token-efficient agent view — exposed as an **MCP server** for AI agents. Editing the XML directly preserves tracked changes, comments, and footnotes that mainstream libraries drop.

```bash
pip install docxengine        # or: uvx docxengine-mcp  (zero-install run)
```

The **file-first MCP server** (`docxengine-mcp`): every tool takes a file `path`, and each edit is validated and saved back automatically — no handle to track, no save step.

```bash
docxengine-mcp                              # stdio
claude mcp add docx -- uvx docxengine-mcp   # Claude Code
```

- MCP server: [docs/mcp/server.md](../docs/mcp/server.md)
- Tool reference: [docs/tools/index.md](../docs/tools/index.md)
- Contract: [spec/](../spec/)
- Layout: `src/docxengine/` (package + server), `tests/` (pytest)

The public tool contract lives in [spec/](../spec/) and is validated against the [conformance corpus](../conformance/).
