> ## Documentation Index
> Fetch the complete documentation index at: https://docs.doconda.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Doconda vs python-pptx and openpyxl

> python-pptx and openpyxl are free Python libraries for PowerPoint and Excel; Doconda creates, reviews and edits those files in one API call.

**Use python-pptx and openpyxl** if you want to build or read presentations and spreadsheets from Python, for free,
offline, cell by cell or shape by shape. **Use Doconda** if you want to ask for the finished presentation or spreadsheet
(with charts, formulas and its PDF), or change an existing file by describing the change instead of coding it.

## Comparison

| | python-pptx + openpyxl | Doconda |
| - | - | - |
| What it is | Two Python libraries: python-pptx for PowerPoint (.pptx) and openpyxl for Excel (.xlsx/.xlsm/.xltx/.xltm) | API (with Python and TypeScript SDKs and an MCP server) that creates, reviews and edits documents |
| Create | You write the code for every slide, shape, cell, style and chart | From a sentence (`prompt`) or your text (`content`); 16:9 PowerPoint with native charts, Excel with real formulas |
| Edit existing files | Yes. python-pptx can round-trip any .pptx; openpyxl warns that it does not read every item in an Excel file and that shapes are lost when opening and saving | Yes: you describe the change; in PowerPoint it adds, reorders or removes slides keeping the design; in Excel, with real formulas |
| Excel formulas | openpyxl stores the formula or the value Excel last saved (`data_only`) | Formulas are written as formulas, with assumptions in their own cells |
| Review and repair | Not their goal | [Review](/en/guides/review) returns the same file fixed plus a report |
| PDF | Do not produce PDF | Every PowerPoint and Excel file comes with its PDF |
| Formats | .pptx and .xlsx (one library each) | Word, PowerPoint, Excel and PDF |
| Templates needed | No; you can start from a file of yours | No; you can pass a presentation to use as a template |
| Use from an AI agent | You have to wrap them in tools yourself | Ready-made function-calling tools and an [MCP server](/en/agents/mcp) |
| Hosting | Run on your machine, no network | Hosted service; documents stored in the EU (Ireland) |
| License and price | Both MIT, free | Pay per delivered document from a prepaid balance; €5 free to start |

## When to choose python-pptx and openpyxl

* You want free, open source libraries with no accounts or API keys.
* You need to read or write specific cells inside a data pipeline you already control.
* Everything has to run offline or inside your own infrastructure.
* You always generate the same deck with different data and prefer to control every shape from code.

## When to choose Doconda

* You want the finished deck or spreadsheet from a sentence ("annual budget with assumptions and an expenses chart"),
  without coding the layout.
* You need each file's PDF, or Word and PDF as well.
* You have to [edit](/en/guides/edit) third-party decks or sheets without losing what they already contain.
* You want to [review](/en/guides/review) files and get a report of what was fixed and what was not.
* An AI agent uses it over [MCP](/en/agents/mcp) or the SDK.

## Using them together

A common pattern: openpyxl to read the data from your sheets and Doconda to produce the final report, deck or
spreadsheet from it. To read any file as Markdown for your AI, Doconda has [`/extract`](/en/guides/extract), free up to
1,000 pages a month.

## Sources

* python-pptx documentation: [https://python-pptx.readthedocs.io/en/latest/](https://python-pptx.readthedocs.io/en/latest/)
* python-pptx on GitHub (MIT license): [https://github.com/scanny/python-pptx](https://github.com/scanny/python-pptx)
* openpyxl documentation (MIT/Expat license and the note on shapes): [https://openpyxl.readthedocs.io/en/stable/](https://openpyxl.readthedocs.io/en/stable/)
* openpyxl tutorial (`data_only`): [https://openpyxl.readthedocs.io/en/stable/tutorial.html](https://openpyxl.readthedocs.io/en/stable/tutorial.html)
* Doconda: [Create](/en/guides/create), [Edit](/en/guides/edit), [Review](/en/guides/review), [Read a file](/en/guides/extract), [Pricing](/en/guides/account#pricing)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.